This commit was manufactured by cvs2svn to create branch
'arc-20081103-branch'.

Sprout from binutils-2_19-branch 2008-09-08 08:56:58 UTC nobody 'This commit was manufactured by cvs2svn to create branch 'binutils-'
Cherrypick from binutils-2_19-branch 2009-01-03 17:43:46 UTC nobody 'This commit was manufactured by cvs2svn to create branch 'binutils-':
    gas/testsuite/gas/ppc/common.d
    gas/testsuite/gas/ppc/common.s
    ld/testsuite/ld-powerpc/attr-gnu-12-1.s
    ld/testsuite/ld-powerpc/attr-gnu-12-11.d
    ld/testsuite/ld-powerpc/attr-gnu-12-2.s
    ld/testsuite/ld-powerpc/attr-gnu-12-21.d
Cherrypick from binutils-2_19-branch 2008-09-11 09:06:56 UTC nobody 'This commit was manufactured by cvs2svn to create branch 'binutils-':
    gprof/po/ro.po
Cherrypick from binutils-2_19-branch 2008-09-26 07:02:45 UTC nobody 'This commit was manufactured by cvs2svn to create branch 'binutils-':
    gas/config/te-solaris.h
Cherrypick from master 2008-11-02 23:59:45 UTC Alan Modra <amodra@gmail.com> 'daily update':
    ChangeLog
    Makefile.def
    Makefile.in
    Makefile.tpl
    bfd/ChangeLog
    bfd/Makefile.am
    bfd/Makefile.in
    bfd/aclocal.m4
    bfd/bfd-in2.h
    bfd/cache.c
    bfd/coff64-rs6000.c
    bfd/coffgen.c
    bfd/cofflink.c
    bfd/config.in
    bfd/configure
    bfd/configure.in
    bfd/doc/Makefile.in
    bfd/dwarf2.c
    bfd/elf-bfd.h
    bfd/elf-eh-frame.c
    bfd/elf.c
    bfd/elf32-cris.c
    bfd/elf32-ppc.c
    bfd/elf32-sh-symbian.c
    bfd/elf32-spu.c
    bfd/elf32-xtensa.c
    bfd/elf64-ppc.c
    bfd/elflink.c
    bfd/elfxx-mips.c
    bfd/libbfd.h
    bfd/linker.c
    bfd/po/id.po
    bfd/po/vi.po
    bfd/reloc.c
    bfd/version.h
    binutils/BRANCHES
    binutils/ChangeLog
    binutils/Makefile.in
    binutils/aclocal.m4
    binutils/config.in
    binutils/configure
    binutils/configure.in
    binutils/dlltool.c
    binutils/doc/Makefile.in
    binutils/dwarf.c
    binutils/embedspu.sh
    binutils/objcopy.c
    binutils/po/id.po
    binutils/po/sv.po
    binutils/readelf.c
    binutils/stabs.c
    binutils/testsuite/ChangeLog
    binutils/testsuite/binutils-all/group-2.s
    binutils/testsuite/binutils-all/group-3.s
    binutils/testsuite/binutils-all/group-4.s
    binutils/testsuite/binutils-all/group.s
    binutils/testsuite/binutils-all/objcopy.exp
    binutils/testsuite/binutils-all/objdump.W
    binutils/testsuite/binutils-all/strip-4.d
    binutils/testsuite/binutils-all/strip-5.d
    binutils/testsuite/binutils-all/strip-6.d
    binutils/testsuite/binutils-all/strip-7.d
    binutils/testsuite/binutils-all/strip-8.d
    binutils/testsuite/binutils-all/strip-9.d
    binutils/windmc.c
    binutils/windres.c
    configure
    configure.ac
    gas/ChangeLog
    gas/Makefile.am
    gas/Makefile.in
    gas/NEWS
    gas/aclocal.m4
    gas/app.c
    gas/config.in
    gas/config/bfin-parse.y
    gas/config/tc-bfin.c
    gas/config/tc-cris.c
    gas/config/tc-frv.c
    gas/config/tc-frv.h
    gas/config/tc-hppa.c
    gas/config/tc-hppa.h
    gas/config/tc-i386.c
    gas/config/tc-i386.h
    gas/config/tc-m68k.c
    gas/config/tc-mips.c
    gas/config/tc-mmix.c
    gas/config/tc-mmix.h
    gas/config/tc-mn10300.h
    gas/config/tc-ns32k.c
    gas/config/tc-ppc.c
    gas/config/tc-sh.h
    gas/config/tc-sh64.h
    gas/config/tc-tic4x.c
    gas/config/tc-xtensa.c
    gas/config/tc-xtensa.h
    gas/config/tc-z80.c
    gas/configure
    gas/configure.in
    gas/configure.tgt
    gas/doc/Makefile.in
    gas/doc/as.texinfo
    gas/doc/internals.texi
    gas/dw2gencfi.c
    gas/frags.c
    gas/hash.c
    gas/listing.c
    gas/po/id.po
    gas/read.c
    gas/symbols.c
    gas/testsuite/ChangeLog
    gas/testsuite/gas/all/gas.exp
    gas/testsuite/gas/cfi/cfi-alpha-1.d
    gas/testsuite/gas/cfi/cfi-alpha-3.d
    gas/testsuite/gas/cfi/cfi-arm-1.d
    gas/testsuite/gas/cfi/cfi-common-1.d
    gas/testsuite/gas/cfi/cfi-common-2.d
    gas/testsuite/gas/cfi/cfi-common-3.d
    gas/testsuite/gas/cfi/cfi-common-4.d
    gas/testsuite/gas/cfi/cfi-common-5.d
    gas/testsuite/gas/cfi/cfi-common-6.d
    gas/testsuite/gas/cfi/cfi-hppa-1.d
    gas/testsuite/gas/cfi/cfi-i386-2.d
    gas/testsuite/gas/cfi/cfi-i386.d
    gas/testsuite/gas/cfi/cfi-m68k.d
    gas/testsuite/gas/cfi/cfi-mips-1.d
    gas/testsuite/gas/cfi/cfi-ppc-1.d
    gas/testsuite/gas/cfi/cfi-s390-1.d
    gas/testsuite/gas/cfi/cfi-s390x-1.d
    gas/testsuite/gas/cfi/cfi-sh-1.d
    gas/testsuite/gas/cfi/cfi-sparc-1.d
    gas/testsuite/gas/cfi/cfi-sparc64-1.d
    gas/testsuite/gas/cfi/cfi-x86_64.d
    gas/testsuite/gas/cris/rd-tls-1.d
    gas/testsuite/gas/cris/rd-tls-1.s
    gas/testsuite/gas/cris/rd-tls-2.d
    gas/testsuite/gas/cris/rd-tls-2.s
    gas/testsuite/gas/cris/tls-err-1.s
    gas/testsuite/gas/cris/tls-err-2.s
    gas/testsuite/gas/cris/tls-err-3.s
    gas/testsuite/gas/elf/elf.exp
    gas/testsuite/gas/i386/i386.exp
    gas/testsuite/gas/i386/nops-5-i686.d
    gas/testsuite/gas/i386/nops-5.d
    gas/testsuite/gas/i386/nops-5.s
    gas/testsuite/gas/i386/sse2avx.d
    gas/testsuite/gas/i386/sse2avx.s
    gas/testsuite/gas/i386/x86-64-nops-5-k8.d
    gas/testsuite/gas/i386/x86-64-nops-5.d
    gas/testsuite/gas/i386/x86-64-sse2avx.d
    gas/testsuite/gas/i386/x86-64-sse2avx.s
    gas/testsuite/gas/ppc/power4_32.d
    gas/testsuite/gas/ppc/power4_32.s
    gas/testsuite/gas/ppc/power6.d
    gas/testsuite/gas/ppc/power6.s
    gas/testsuite/gas/ppc/ppc.exp
    gas/testsuite/gas/s390/esa-g5.d
    gas/testsuite/gas/s390/esa-g5.s
    gas/testsuite/gas/s390/esa-z990.d
    gas/testsuite/gas/s390/esa-z990.s
    gas/testsuite/gas/s390/zarch-z900.d
    gas/testsuite/gas/s390/zarch-z900.s
    gas/testsuite/gas/s390/zarch-z990.d
    gas/testsuite/gas/s390/zarch-z990.s
    gas/testsuite/gas/z80/arith.d
    gas/testsuite/gas/z80/arith.s
    gas/testsuite/gas/z80/bit.d
    gas/testsuite/gas/z80/bit.s
    gas/testsuite/gas/z80/block.d
    gas/testsuite/gas/z80/block.s
    gas/testsuite/gas/z80/branch.d
    gas/testsuite/gas/z80/branch.s
    gas/testsuite/gas/z80/inout.d
    gas/testsuite/gas/z80/inout.s
    gas/testsuite/gas/z80/ld-group.d
    gas/testsuite/gas/z80/ld-group.s
    gas/testsuite/gas/z80/misc.d
    gas/testsuite/gas/z80/misc.s
    gas/testsuite/gas/z80/rotate.d
    gas/testsuite/gas/z80/rotate.s
    gas/testsuite/gas/z80/z80.exp
    gas/write.c
    gold/ChangeLog
    gold/Makefile.am
    gold/Makefile.in
    gold/archive.cc
    gold/archive.h
    gold/config.in
    gold/configure
    gold/configure.ac
    gold/descriptors.cc
    gold/descriptors.h
    gold/fileread.cc
    gold/fileread.h
    gold/gold.cc
    gold/i386.cc
    gold/layout.cc
    gold/main.cc
    gold/mapfile.cc
    gold/object.cc
    gold/object.h
    gold/options.cc
    gold/options.h
    gold/output.cc
    gold/output.h
    gold/plugin.cc
    gold/plugin.h
    gold/powerpc.cc
    gold/readsyms.cc
    gold/reloc.cc
    gold/resolve.cc
    gold/sparc.cc
    gold/symtab.cc
    gold/symtab.h
    gold/target-reloc.h
    gold/target.h
    gold/testsuite/Makefile.am
    gold/testsuite/Makefile.in
    gold/testsuite/plugin_test.c
    gold/testsuite/plugin_test_1.sh
    gold/testsuite/plugin_test_2.sh
    gold/testsuite/thin_archive_main.cc
    gold/testsuite/thin_archive_test_1.cc
    gold/testsuite/thin_archive_test_2.cc
    gold/testsuite/thin_archive_test_3.cc
    gold/testsuite/thin_archive_test_4.cc
    gold/x86_64.cc
    gprof/ChangeLog
    gprof/Makefile.in
    gprof/aclocal.m4
    gprof/configure
    gprof/configure.in
    gprof/gconfig.in
    gprof/po/vi.po
    include/ChangeLog
    include/demangle.h
    include/elf/ChangeLog
    include/elf/cris.h
    include/elf/dwarf2.h
    include/elf/ppc.h
    include/obstack.h
    include/plugin-api.h
    ld/ChangeLog
    ld/Makefile.am
    ld/Makefile.in
    ld/aclocal.m4
    ld/config.in
    ld/configure
    ld/configure.in
    ld/emulparams/arcelf.sh
    ld/emulparams/criself.sh
    ld/emulparams/crislinux.sh
    ld/emulparams/elf32_i860.sh
    ld/emulparams/elf32_i960.sh
    ld/emulparams/elf32_sparc.sh
    ld/emulparams/elf32_spu.sh
    ld/emulparams/elf32am33lin.sh
    ld/emulparams/elf32fr30.sh
    ld/emulparams/elf32ip2k.sh
    ld/emulparams/elf32mcore.sh
    ld/emulparams/elf32openrisc.sh
    ld/emulparams/elf32ppccommon.sh
    ld/emulparams/elf32ppcwindiss.sh
    ld/emulparams/elf32vax.sh
    ld/emulparams/elf64_s390.sh
    ld/emulparams/elf64_sparc.sh
    ld/emulparams/elf64alpha.sh
    ld/emulparams/elf64mmix.sh
    ld/emulparams/elf64ppc.sh
    ld/emulparams/elf_i386.sh
    ld/emulparams/elf_i386_be.sh
    ld/emulparams/elf_i386_ldso.sh
    ld/emulparams/elf_i386_vxworks.sh
    ld/emulparams/elf_s390.sh
    ld/emulparams/elf_x86_64.sh
    ld/emulparams/h8300elf.sh
    ld/emulparams/hppa64linux.sh
    ld/emulparams/hppalinux.sh
    ld/emulparams/i386lynx.sh
    ld/emulparams/i386moss.sh
    ld/emulparams/i386nto.sh
    ld/emulparams/m68kelf.sh
    ld/emulparams/mn10200.sh
    ld/emulparams/or32elf.sh
    ld/emulparams/pjelf.sh
    ld/emulparams/ppclynx.sh
    ld/emulparams/scoreelf.sh
    ld/emulparams/shelf.sh
    ld/emulparams/shelf32.sh
    ld/emulparams/shelf_nto.sh
    ld/emulparams/shelf_vxworks.sh
    ld/emulparams/shlelf32_linux.sh
    ld/emulparams/shlelf_linux.sh
    ld/emulparams/shlelf_nto.sh
    ld/emultempl/armelf.em
    ld/emultempl/beos.em
    ld/emultempl/elf32.em
    ld/emultempl/genelf.em
    ld/emultempl/mmo.em
    ld/emultempl/pe.em
    ld/emultempl/pep.em
    ld/emultempl/spuelf.em
    ld/emultempl/sunos.em
    ld/ldemul.c
    ld/ldemul.h
    ld/ldexp.c
    ld/ldlang.c
    ld/ldlang.h
    ld/pe-dll.c
    ld/po/id.po
    ld/po/vi.po
    ld/scripttempl/avr.sc
    ld/scripttempl/elf.sc
    ld/testsuite/ChangeLog
    ld/testsuite/ld-elf/comm1.c
    ld/testsuite/ld-elf/eh-frame-hdr.d
    ld/testsuite/ld-elf/eh-group.exp
    ld/testsuite/ld-elf/eh-group1.s
    ld/testsuite/ld-elf/eh-group2.s
    ld/testsuite/ld-elf/eh1.d
    ld/testsuite/ld-elf/eh2.d
    ld/testsuite/ld-elf/eh3.d
    ld/testsuite/ld-elf/eh4.d
    ld/testsuite/ld-elf/eh5.d
    ld/testsuite/ld-elf/eh5b.s
    ld/testsuite/ld-elf/eh6.d
    ld/testsuite/ld-elf/extract-symbol-1sec.d
    ld/testsuite/ld-elf/func1.c
    ld/testsuite/ld-elf/group4.d
    ld/testsuite/ld-elf/group5.d
    ld/testsuite/ld-elf/group6.d
    ld/testsuite/ld-elf/group7.d
    ld/testsuite/ld-elf/shared.exp
    ld/testsuite/ld-elf/stab.d
    ld/testsuite/ld-elfcomm/common1b.c
    ld/testsuite/ld-gc/gc.c
    ld/testsuite/ld-ia64/tlsbin.rd
    ld/testsuite/ld-ia64/tlspic.rd
    ld/testsuite/ld-mips-elf/eh-frame1-n32.d
    ld/testsuite/ld-mips-elf/eh-frame1-n64.d
    ld/testsuite/ld-mips-elf/eh-frame2-n32.d
    ld/testsuite/ld-mips-elf/eh-frame2-n64.d
    ld/testsuite/ld-mips-elf/eh-frame3.d
    ld/testsuite/ld-mips-elf/eh-frame4.d
    ld/testsuite/ld-mips-elf/reloc-estimate-1.d
    ld/testsuite/ld-powerpc/powerpc.exp
    ld/testsuite/ld-powerpc/vxworks1-lib.rd
    ld/testsuite/ld-shared/main.c
    ld/testsuite/lib/ld-lib.exp
    libiberty/ChangeLog
    libiberty/Makefile.in
    libiberty/config.in
    libiberty/configure
    libiberty/configure.ac
    libiberty/cp-demangle.c
    libiberty/cp-demangle.h
    libiberty/testsuite/demangle-expected
    libiberty/xstrdup.c
    libtool.m4
    ltgcc.m4
    ltmain.sh
    ltoptions.m4
    ltsugar.m4
    ltversion.m4
    lt~obsolete.m4
    opcodes/ChangeLog
    opcodes/Makefile.am
    opcodes/Makefile.in
    opcodes/aclocal.m4
    opcodes/configure
    opcodes/configure.in
    opcodes/i386-gen.c
    opcodes/i386-opc.tbl
    opcodes/i386-tbl.h
    opcodes/po/fr.po
    opcodes/po/vi.po
    opcodes/s390-opc.c
    opcodes/s390-opc.txt
    opcodes/z80-dis.c
diff --git a/ChangeLog b/ChangeLog
index 5114518..ef8a40a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,41 @@
+2008-10-29  Stefan Schulze Frielinghaus  <xxschulz@de.ibm.com>
+
+	* configure.ac [spu-*-*]: Do not set skipdirs.
+	* configure: Re-generate.
+
+2008-10-24  Daniel Jacobowitz  <dan@codesourcery.com>
+
+	* Makefile.tpl (HOST_EXPORTS): Correct CPPFLAGS typo.
+	* Makefile.in: Regenerated.
+
+2008-10-22  Daniel Jacobowitz  <dan@codesourcery.com>
+
+	PR gdb/921
+	PR gdb/1646
+	PR gdb/2175
+	PR gdb/2176
+
+	* Makefile.def (flags_to_pass): Add CPPFLAGS_FOR_BUILD and CPPFLAGS.
+	* Makefile.tpl (BUILD_EXPORTS): Set CPPFLAGS.
+	(EXTRA_BUILD_FLAGS): Correct typo.  Pass CPPFLAGS.
+	(HOST_EXPORTS): Pass CPPFLAGS.
+	(CPPFLAGS_FOR_BUILD, CPPFLAGS, CPPFLAGS_FOR_TARGET): Define.
+	(LDFLAGS_FOR_TARGET): Initialize from configure script.
+	(EXTRA_TARGET_FLAGS): Set CPPFLAGS.
+	* Makefile.in, configure: Regenerated.
+	* configure.ac: Set CPPFLAGS_FOR_TARGET, LDFLAGS_FOR_TARGET,
+	and CPPFLAGS_FOR_BUILD.
+
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+
+	* libtool.m4: Update to libtool 2.2.6.
+	* lt~obsolete.m4: Update to libtool 2.2.6.
+	* ltmain.sh: Update to libtool 2.2.6.
+	* ltsugar.m4: Update to libtool 2.2.6.
+	* ltversion.m4: Update to libtool 2.2.6.
+	* ltoptions.m4: Update to libtool 2.2.6.
+	* ltgcc.m4: Update to match changes from libtool 2.2.6.
+
 2008-08-31  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
 
 	* configure.ac (RPATH_ENVVAR): Use PATH on Windows.
diff --git a/Makefile.def b/Makefile.def
index 832fc42..5abc54f 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -208,6 +208,7 @@
 flags_to_pass = { flag= BISON ; };
 flags_to_pass = { flag= CC_FOR_BUILD ; };
 flags_to_pass = { flag= CFLAGS_FOR_BUILD ; };
+flags_to_pass = { flag= CPPFLAGS_FOR_BUILD ; };
 flags_to_pass = { flag= CXX_FOR_BUILD ; };
 flags_to_pass = { flag= EXPECT ; };
 flags_to_pass = { flag= FLEX ; };
@@ -232,6 +233,7 @@
 flags_to_pass = { flag= BOOT_CFLAGS ; };
 flags_to_pass = { flag= BOOT_LDFLAGS ; };
 flags_to_pass = { flag= CFLAGS ; };
+flags_to_pass = { flag= CPPFLAGS ; };
 flags_to_pass = { flag= CXXFLAGS ; };
 flags_to_pass = { flag= LDFLAGS ; };
 flags_to_pass = { flag= LIBCFLAGS ; };
diff --git a/Makefile.in b/Makefile.in
index 0305d28..e94018b 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -137,6 +137,7 @@
 	CC="$(CC_FOR_BUILD)"; export CC; \
 	CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
 	CXX="$(CXX_FOR_BUILD)"; export CXX; \
 	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
 	GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
@@ -150,9 +151,10 @@
 	WINDMC="$(WINDMC_FOR_BUILD)"; export WINDMC;
 
 # These variables must be set on the make command line for directories
-# built for the build system to override those in BASE_FLAGS_TO_PASSS.
+# built for the build system to override those in BASE_FLAGS_TO_PASS.
 EXTRA_BUILD_FLAGS = \
 	CFLAGS="$(CFLAGS_FOR_BUILD)" \
+	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
 	LDFLAGS="$(LDFLAGS_FOR_BUILD)"
 
 # This is the list of directories to built for the host system.
@@ -172,6 +174,7 @@
 	ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
 	CFLAGS="$(CFLAGS)"; export CFLAGS; \
 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+	CPPFLAGS="$(CPPFLAGS)"; export CPPFLAGS; \
 	CXX="$(CXX)"; export CXX; \
 	CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
 	AR="$(AR)"; export AR; \
@@ -275,6 +278,7 @@
 AS_FOR_BUILD = @AS_FOR_BUILD@
 CC_FOR_BUILD = @CC_FOR_BUILD@
 CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
 CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
 CXX_FOR_BUILD = @CXX_FOR_BUILD@
 DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
@@ -336,6 +340,7 @@
 GNATMAKE = @GNATMAKE@
 
 CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
 LIBCFLAGS = $(CFLAGS)
 CXXFLAGS = @CXXFLAGS@
@@ -399,13 +404,14 @@
 COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
 
 CFLAGS_FOR_TARGET = @CFLAGS_FOR_TARGET@
+CPPFLAGS_FOR_TARGET = @CPPFLAGS_FOR_TARGET@
 CXXFLAGS_FOR_TARGET = @CXXFLAGS_FOR_TARGET@
 SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
 DEBUG_PREFIX_CFLAGS_FOR_TARGET = @DEBUG_PREFIX_CFLAGS_FOR_TARGET@
 
 LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
 LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-LDFLAGS_FOR_TARGET = 
+LDFLAGS_FOR_TARGET = @LDFLAGS_FOR_TARGET@
 
 # ------------------------------------
 # Miscellaneous targets and flag lists
@@ -505,6 +511,7 @@
 	"BISON=$(BISON)" \
 	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
 	"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+	"CPPFLAGS_FOR_BUILD=$(CPPFLAGS_FOR_BUILD)" \
 	"CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
 	"EXPECT=$(EXPECT)" \
 	"FLEX=$(FLEX)" \
@@ -527,6 +534,7 @@
 	"BOOT_CFLAGS=$(BOOT_CFLAGS)" \
 	"BOOT_LDFLAGS=$(BOOT_LDFLAGS)" \
 	"CFLAGS=$(CFLAGS)" \
+	"CPPFLAGS=$(CPPFLAGS)" \
 	"CXXFLAGS=$(CXXFLAGS)" \
 	"LDFLAGS=$(LDFLAGS)" \
 	"LIBCFLAGS=$(LIBCFLAGS)" \
@@ -617,6 +625,7 @@
 	'AS=$(COMPILER_AS_FOR_TARGET)' \
 	'CC=$$(CC_FOR_TARGET)' \
 	'CFLAGS=$$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
+	'CPPFLAGS=$$(CPPFLAGS_FOR_TARGET)' \
 	'CXX=$$(CXX_FOR_TARGET)' \
 	'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
 	'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
diff --git a/Makefile.tpl b/Makefile.tpl
index 051703e..51f5979 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -140,6 +140,7 @@
 	CC="$(CC_FOR_BUILD)"; export CC; \
 	CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
 	CXX="$(CXX_FOR_BUILD)"; export CXX; \
 	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
 	GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
@@ -153,9 +154,10 @@
 	WINDMC="$(WINDMC_FOR_BUILD)"; export WINDMC;
 
 # These variables must be set on the make command line for directories
-# built for the build system to override those in BASE_FLAGS_TO_PASSS.
+# built for the build system to override those in BASE_FLAGS_TO_PASS.
 EXTRA_BUILD_FLAGS = \
 	CFLAGS="$(CFLAGS_FOR_BUILD)" \
+	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
 	LDFLAGS="$(LDFLAGS_FOR_BUILD)"
 
 # This is the list of directories to built for the host system.
@@ -175,6 +177,7 @@
 	ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
 	CFLAGS="$(CFLAGS)"; export CFLAGS; \
 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+	CPPFLAGS="$(CPPFLAGS)"; export CPPFLAGS; \
 	CXX="$(CXX)"; export CXX; \
 	CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
 	AR="$(AR)"; export AR; \
@@ -278,6 +281,7 @@
 AS_FOR_BUILD = @AS_FOR_BUILD@
 CC_FOR_BUILD = @CC_FOR_BUILD@
 CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
 CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
 CXX_FOR_BUILD = @CXX_FOR_BUILD@
 DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
@@ -339,6 +343,7 @@
 GNATMAKE = @GNATMAKE@
 
 CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
 LIBCFLAGS = $(CFLAGS)
 CXXFLAGS = @CXXFLAGS@
@@ -402,13 +407,14 @@
 COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
 
 CFLAGS_FOR_TARGET = @CFLAGS_FOR_TARGET@
+CPPFLAGS_FOR_TARGET = @CPPFLAGS_FOR_TARGET@
 CXXFLAGS_FOR_TARGET = @CXXFLAGS_FOR_TARGET@
 SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
 DEBUG_PREFIX_CFLAGS_FOR_TARGET = @DEBUG_PREFIX_CFLAGS_FOR_TARGET@
 
 LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
 LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-LDFLAGS_FOR_TARGET = 
+LDFLAGS_FOR_TARGET = @LDFLAGS_FOR_TARGET@
 
 # ------------------------------------
 # Miscellaneous targets and flag lists
@@ -515,6 +521,7 @@
 	'AS=$(COMPILER_AS_FOR_TARGET)' \
 	'CC=$$(CC_FOR_TARGET)' \
 	'CFLAGS=$$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
+	'CPPFLAGS=$$(CPPFLAGS_FOR_TARGET)' \
 	'CXX=$$(CXX_FOR_TARGET)' \
 	'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
 	'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c80b915..9a70d7d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,202 @@
+2008-10-30  Jay Krell  <jay.krell@cornell.edu>
+
+	* cache.c (cache_bread): Cast void * pointer before performing
+	arithmetic on it.
+
+2008-10-20  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf64-ppc.c (ppc64_elf_process_dot_syms): Renamed from
+	ppc64_elf_check_directives.
+	* elf32-sh-symbian.c (sh_symbian_process_directives): Combine..
+	(sh_symbian_check_directives): ..this
+	(bfd_elf32_sh_symbian_process_directives) ..and this function.
+
+2008-10-20  Alan Modra  <amodra@bigpond.net.au>
+
+	* elflink.c (bfd_elf_final_link): Move code reading relocs to..
+	* elf32-spu.c (spu_elf_count_relocs): ..here.  Adjust params.
+	* elf-bfd.h (struct elf_backend_data): Update elf_backend_count_relocs
+	params.
+
+2008-10-20  Alan Modra  <amodra@bigpond.net.au>
+
+	* elflink.c (bfd_elf_final_link): Use d_ptr rather than d_val
+	where Elf_Internal_Dyn holds an address.
+
+2008-10-10  Nathan Froyd  <froydnj@codesourcery.com>
+
+	* elf32-ppc.c (ppc_elf_merge_obj_attributes): Merge
+	Tag_GNU_Power_ABI_Struct_Return.
+
+2008-10-09  Kai Tietz  <kai.tietz@onevision.com>
+
+	* cofflink.c (_bfd_coff_generic_relocate_section): Dump bfd_vma
+	sized addresses instead of long sized.
+
+2008-10-09  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't attempt to
+	read plt relocs if no dynamic syms.
+
+2008-10-08  Nick Clifton  <nickc@redhat.com>
+
+	* configure.in (ALL_LINGUAS): Add "id".
+	* configure: Regenerate.
+	* po/id.po: New Indonesian translation.
+
+2008-10-08  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf.c (assign_file_positions_for_load_sections): When checking
+	a segment for contents, don't assume that a non-TLS nobits section
+	must only be followed by nobits sections.
+
+2008-10-04  Hans-Peter Nilsson  <hp@axis.com>
+
+	* elf32-cris.c (TLSHOWTO32, TLSHOWTO16): New macros.
+	(cris_elf_howto_table): Add entries for R_CRIS_32_GOT_GD,
+	R_CRIS_16_GOT_GD, R_CRIS_32_GD, R_CRIS_DTP, R_CRIS_32_DTPREL,
+	R_CRIS_16_DTPREL, R_CRIS_DTPMOD, R_CRIS_32_GOT_TPREL,
+	R_CRIS_16_GOT_TPREL,  R_CRIS_32_TPREL,  R_CRIS_16_TPREL.
+	(cris_reloc_map): Similarly.
+	* reloc.c (bfd_reloc_code_type): Add entries for
+	BFD_RELOC_CRIS_32_GOT_GD, BFD_RELOC_CRIS_16_GOT_GD,
+	BFD_RELOC_CRIS_32_GD, BFD_RELOC_CRIS_DTP,
+	BFD_RELOC_CRIS_32_DTPREL, BFD_RELOC_CRIS_16_DTPREL,
+	BFD_RELOC_CRIS_DTPMOD, BFD_RELOC_CRIS_32_GOT_TPREL,
+	BFD_RELOC_CRIS_16_GOT_TPREL, BFD_RELOC_CRIS_32_TPREL,
+	BFD_RELOC_CRIS_16_TPREL.
+	* libbfd.h, bfd-in2.h: Regenerate.
+
+2008-10-03  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6931
+	* elf.c (bfd_elf_set_group_contents): Assign sh_info for ld -r when
+	the signature symbol is global.
+	* elflink.c (elf_link_input_bfd): Ensure group signature symbol
+	is output when ld -r.  Set group sh_info when local.
+	* linker.c (default_indirect_link_order): Handle group sections
+	specially.
+
+2008-09-30  Wesley W. Terpstra  <wesley@terpstra.ca>
+	    Nick Clifton  <nickc@redhat.com>
+
+	* coffgen.c (coff_write_symbols): Check to see if a symbol's flags
+	do not match it class and if necessary update the class.
+	(null_error_handler): New function.  Suppresses the generation of
+	bfd error messages.
+	* coff64-rs6000.c (bfd_xcoff_backend_data): Update comment.
+
+2008-09-30  Alan Modra  <amodra@bigpond.net.au>
+
+	* Makefile.am: Run "make dep-am".
+	* Makefile.in: Regenerate.
+
+2008-09-30  Alan Modra  <amodra@bigpond.net.au>
+
+	* elflink.c (elf_link_add_object_symbols): Don't ignore returned
+	value of check_directives.
+
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+	    Steve Ellcey  <sje@cup.hp.com>
+
+	* configure: Regenerate for new libtool.
+	* aclocal.m4: Ditto.
+	* Makefile.in: Ditto.
+	* doc/Makefile.in: Ditto.
+
+2008-09-29  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6789
+	* elf.c (assign_file_positions_for_load_sections): Call
+	_bfd_elf_map_sections_to_segments, not elf_modify_segment_map.
+	(get_program_header_size): Protect against NULL info.
+	(_bfd_elf_map_sections_to_segments): Likewise.
+	* elf32-spu.c (spu_elf_additional_program_headers): Likewise.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* po/vi.po: Updated Vietnamese translation.
+
+2008-09-28  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf.c (_bfd_elf_init_private_section_data): Tweak union copy.
+	(bfd_section_from_shdr): Don't change SHT_GROUP section name.
+	* elflink.c (section_signature): New function.
+	(_bfd_elf_section_already_linked): Use it.
+
+2008-09-19  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf32-ppc.c (ppc_elf_finish_dynamic_sections): Handle vxworks
+	_GLOBAL_OFFSET_TABLE_ in .got.plt section.  Add BFD_ASSERTs.
+
+2008-09-17  Bob Wilson  <bob.wilson@acm.org>
+
+	* elf32-xtensa.c (elf_xtensa_check_relocs): Check for negative
+	refcount.
+
+2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	PR 6893 - Do not consider FDEs for discarded sections as invalid.
+	* elf-eh-frame.c (_bfd_elf_parse_eh_frame): New REQUIRE_CLEARED_RELOCS.
+	Consider FDEs with cleared relocations as valid and ignorable.
+
+2008-09-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/6877
+	* elflink.c (_bfd_elf_merge_symbol): Allow a common symbol to
+	override the function in a shared library.
+
+2008-09-16  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6844
+	* elf32-ppc.c (SYM_VAL): Define.  Use throughout to find symbol vma.
+	(ppc_elf_relocate_section): Correct GOT offset calculation.
+	(ppc_elf_finish_dynamic_symbol): Use PPC_HA and PPC_LO.
+	(ppc_elf_finish_dynamic_sections): Likewise.  Error if
+	htab->elf.hgot symbol is not defined in htab->got section.
+
+2008-09-16  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6888
+	* elf32-ppc.c (ppc_elf_relocate_section): Handle NULL symbol section
+	on R_PPC_TOC16, R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, R_PPC_EMB_SDA21,
+	R_PPC_EMB_RELSDA, R_PPC_SECTOFF* relocs.
+
+2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	Fix loading large elf64 binaries on 32bit hosts.
+	* configure.in: Call AC_SYS_LARGEFILE.
+	* config.in: Regenerate.
+	* configure: Regenerate.
+
+2008-09-08  Tom Tromey  <tromey@redhat.com>
+
+	* elfxx-mips.c (mips16_stub_symndx) <sec>: Mark argument as
+	unused.
+
+2008-09-08  H.J. Lu  <hongjiu.lu@intel.com>
+	    Daniel Jacobowitz  <dan@codesourcery.com>
+
+	PR ld/3191
+	* dwarf2.c (struct adjusted_section): Renamed from struct
+	loadable_section.
+	(struct dwarf2_debug): Adjust for renaming.  Add version field.
+	(read_attribute_value): Correctly handle DW_FORM_ref_addr for
+	DWARF3.
+	(find_abstract_instance_name): Pass a pointer to
+	attribute instead of offset.  For DW_FORM_ref_addr, get the
+	entry at the offset from the .debug_info section.
+	(scan_unit_for_symbols): Update.
+	(parse_comp_unit): Allow DWARF3.  Save the version.
+	(unset_sections): Update for renaming.
+	(place_sections): Likewise.  Set new VMAs for DWARF sections
+	also.
+
+2008-09-08  Tristan Gingold  <gingold@adacore.com>
+
+	* configure.in: Update version to 2.19.50
+	* configure: Regenerated.
+
 2008-09-05  Daniel Jacobowitz  <dan@codesourcery.com>
 
 	* dwarf2.c: Change leading whitespace to tabs.
@@ -13,7 +212,7 @@
 	BFD_MACH_O_x86_EXCEPTION_STATE.
 	(bfd_mach_o_load_command_type): Add
 	BFD_MACH_O_LC_SEGMENT_64, BFD_MACH_O_LC_ROUTINES_64,
-	BFD_MACH_O_LC_UUID.	
+	BFD_MACH_O_LC_UUID.
 	(BFD_MACH_O_CPU_IS64BIT): Added.
 	(bfd_mach_o_cpu_type): Add BFD_MACH_O_CPU_TYPE_POWERPC_64,
 	BFD_MACH_O_CPU_TYPE_X86_64.
@@ -45,7 +244,7 @@
 	(bfd_mach_o_scan_start_address): Ditto.
 	(bfd_mach_o_scan): Ditto.
 	(bfd_mach_o_lookup_section): Ditto.
-	
+
 2008-08-27  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
 	* elf-hppa.h (elf_hppa_reloc_final_type): Handle R_PARISC_GPREL64,
diff --git a/bfd/Makefile.am b/bfd/Makefile.am
index befb9f1..8ddf3cc 100644
--- a/bfd/Makefile.am
+++ b/bfd/Makefile.am
@@ -1196,8 +1196,7 @@
   libcoff.h $(INCDIR)/bfdlink.h coffcode.h coffswap.h
 coff-aux.lo: coff-aux.c $(INCDIR)/filenames.h $(INCDIR)/coff/aux-coff.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
-  coff-m68k.c $(INCDIR)/hashtab.h $(INCDIR)/coff/m68k.h \
-  $(INCDIR)/coff/internal.h libcoff.h $(INCDIR)/bfdlink.h \
+  coff-m68k.c $(INCDIR)/hashtab.h libcoff.h $(INCDIR)/bfdlink.h \
   coffcode.h coffswap.h
 coff-h8300.lo: coff-h8300.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/bfdlink.h genlink.h $(INCDIR)/coff/h8300.h \
@@ -1725,8 +1724,8 @@
   $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \
   $(INCDIR)/bfdlink.h coffcode.h peicode.h libpei.h
-pe-arm-wince.lo: pe-arm-wince.c pe-arm.c $(INCDIR)/filenames.h \
-  coff-arm.c $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h \
+pe-arm-wince.lo: pe-arm-wince.c $(INCDIR)/filenames.h \
+  pe-arm.c coff-arm.c $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h \
   $(INCDIR)/coff/external.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/pe.h libcoff.h $(INCDIR)/bfdlink.h coffcode.h \
   peicode.h libpei.h
@@ -1980,12 +1979,12 @@
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/objalloc.h \
-  $(INCDIR)/hashtab.h elf32-target.h
+  elf32-target.h
 elf64-ia64.lo: elf64-ia64.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/objalloc.h \
-  $(INCDIR)/hashtab.h elf64-target.h
+  elf64-target.h
 peigen.lo: peigen.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(INCDIR)/coff/external.h \
   $(INCDIR)/coff/pe.h libcoff.h $(INCDIR)/bfdlink.h libpei.h
diff --git a/bfd/Makefile.in b/bfd/Makefile.in
index 1e77a32..9d86902 100644
--- a/bfd/Makefile.in
+++ b/bfd/Makefile.in
@@ -59,9 +59,9 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../config/stdint.m4 $(top_srcdir)/../libtool.m4 \
 	$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
-	$(top_srcdir)/../ltversion.m4 $(top_srcdir)/bfd.m4 \
-	$(top_srcdir)/warning.m4 $(top_srcdir)/acinclude.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
+	$(top_srcdir)/bfd.m4 $(top_srcdir)/warning.m4 \
+	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -142,6 +142,7 @@
 DEBUGDIR = @DEBUGDIR@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -171,6 +172,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -181,8 +183,12 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -208,7 +214,13 @@
 XGETTEXT = @XGETTEXT@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 all_backends = @all_backends@
@@ -995,15 +1007,15 @@
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      echo ' cd $(srcdir) && $(AUTOMAKE) --cygnus '; \
-	      cd $(srcdir) && $(AUTOMAKE) --cygnus  \
+	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
+	      cd $(srcdir) && $(AUTOMAKE) --foreign  \
 		&& exit 0; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --cygnus  Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --cygnus  Makefile
+	  $(AUTOMAKE) --foreign  Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
@@ -1780,8 +1792,7 @@
   libcoff.h $(INCDIR)/bfdlink.h coffcode.h coffswap.h
 coff-aux.lo: coff-aux.c $(INCDIR)/filenames.h $(INCDIR)/coff/aux-coff.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
-  coff-m68k.c $(INCDIR)/hashtab.h $(INCDIR)/coff/m68k.h \
-  $(INCDIR)/coff/internal.h libcoff.h $(INCDIR)/bfdlink.h \
+  coff-m68k.c $(INCDIR)/hashtab.h libcoff.h $(INCDIR)/bfdlink.h \
   coffcode.h coffswap.h
 coff-h8300.lo: coff-h8300.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/bfdlink.h genlink.h $(INCDIR)/coff/h8300.h \
@@ -2309,8 +2320,8 @@
   $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \
   $(INCDIR)/bfdlink.h coffcode.h peicode.h libpei.h
-pe-arm-wince.lo: pe-arm-wince.c pe-arm.c $(INCDIR)/filenames.h \
-  coff-arm.c $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h \
+pe-arm-wince.lo: pe-arm-wince.c $(INCDIR)/filenames.h \
+  pe-arm.c coff-arm.c $(INCDIR)/hashtab.h $(INCDIR)/coff/arm.h \
   $(INCDIR)/coff/external.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/pe.h libcoff.h $(INCDIR)/bfdlink.h coffcode.h \
   peicode.h libpei.h
@@ -2564,12 +2575,12 @@
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/objalloc.h \
-  $(INCDIR)/hashtab.h elf32-target.h
+  elf32-target.h
 elf64-ia64.lo: elf64-ia64.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/objalloc.h \
-  $(INCDIR)/hashtab.h elf64-target.h
+  elf64-target.h
 peigen.lo: peigen.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(INCDIR)/coff/external.h \
   $(INCDIR)/coff/pe.h libcoff.h $(INCDIR)/bfdlink.h libpei.h
diff --git a/bfd/aclocal.m4 b/bfd/aclocal.m4
index fa32dcb..208fad9 100644
--- a/bfd/aclocal.m4
+++ b/bfd/aclocal.m4
@@ -871,6 +871,7 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
 m4_include([bfd.m4])
 m4_include([warning.m4])
 m4_include([acinclude.m4])
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index c8ef5f9..16609cb 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -4192,6 +4192,19 @@
 /* 32-bit offset to symbol with PLT entry, relative to this relocation.  */
   BFD_RELOC_CRIS_32_PLT_PCREL,
 
+/* Relocs used in TLS code for CRIS.  */
+  BFD_RELOC_CRIS_32_GOT_GD,
+  BFD_RELOC_CRIS_16_GOT_GD,
+  BFD_RELOC_CRIS_32_GD,
+  BFD_RELOC_CRIS_DTP,
+  BFD_RELOC_CRIS_32_DTPREL,
+  BFD_RELOC_CRIS_16_DTPREL,
+  BFD_RELOC_CRIS_32_GOT_TPREL,
+  BFD_RELOC_CRIS_16_GOT_TPREL,
+  BFD_RELOC_CRIS_32_TPREL,
+  BFD_RELOC_CRIS_16_TPREL,
+  BFD_RELOC_CRIS_DTPMOD,
+
 /* Intel i860 Relocations.  */
   BFD_RELOC_860_COPY,
   BFD_RELOC_860_GLOB_DAT,
diff --git a/bfd/cache.c b/bfd/cache.c
index 3906335..50674e8 100644
--- a/bfd/cache.c
+++ b/bfd/cache.c
@@ -317,7 +317,7 @@
       if (chunk_size > max_chunk_size)
         chunk_size = max_chunk_size;
 
-      chunk_nread = cache_bread_1 (abfd, buf + nread, chunk_size);
+      chunk_nread = cache_bread_1 (abfd, (char *) buf + nread, chunk_size);
 
       /* Update the nread count.
 
@@ -342,6 +342,7 @@
 {
   file_ptr nwrite;
   FILE *f = bfd_cache_lookup (abfd, 0);
+
   if (f == NULL)
     return 0;
   nwrite = fwrite (where, 1, nbytes, f);
@@ -364,6 +365,7 @@
 {
   int sts;
   FILE *f = bfd_cache_lookup (abfd, CACHE_NO_OPEN);
+
   if (f == NULL)
     return 0;
   sts = fflush (f);
@@ -377,6 +379,7 @@
 {
   int sts;
   FILE *f = bfd_cache_lookup (abfd, CACHE_NO_SEEK_ERROR);
+
   if (f == NULL)
     return -1;
   sts = fstat (fileno (f), sb);
@@ -385,7 +388,8 @@
   return sts;
 }
 
-static const struct bfd_iovec cache_iovec = {
+static const struct bfd_iovec cache_iovec =
+{
   &cache_bread, &cache_bwrite, &cache_btell, &cache_bseek,
   &cache_bclose, &cache_bflush, &cache_bstat
 };
diff --git a/bfd/coff64-rs6000.c b/bfd/coff64-rs6000.c
index 7a0ec1f..ee797ed 100644
--- a/bfd/coff64-rs6000.c
+++ b/bfd/coff64-rs6000.c
@@ -2580,7 +2580,7 @@
       coff_print_aux,
       dummy_reloc16_extra_cases,
       dummy_reloc16_estimate,
-      NULL,			/* bfd_coff_sym_is_global */
+      NULL,			/* bfd_coff_symbol_classification */
       coff_compute_section_file_positions,
       NULL,			/* _bfd_coff_start_final_link */
       xcoff64_ppc_relocate_section,
diff --git a/bfd/coffgen.c b/bfd/coffgen.c
index 17d46a2..469cdfa 100644
--- a/bfd/coffgen.c
+++ b/bfd/coffgen.c
@@ -1082,6 +1082,11 @@
 			    debug_string_size_p);
 }
 
+static void
+null_error_handler (const char * fmt ATTRIBUTE_UNUSED, ...)
+{
+}
+
 /* Write out the COFF symbols.  */
 
 bfd_boolean
@@ -1138,6 +1143,42 @@
 	}
       else
 	{
+	  if (coff_backend_info (abfd)->_bfd_coff_classify_symbol != NULL)
+	    {
+	      bfd_error_handler_type current_error_handler;
+	      enum coff_symbol_classification class;
+	      unsigned char *n_sclass;
+
+	      /* Suppress error reporting by bfd_coff_classify_symbol.
+		 Error messages can be generated when we are processing a local
+		 symbol which has no associated section and we do not have to
+		 worry about this, all we need to know is that it is local.  */
+	      current_error_handler = bfd_set_error_handler (null_error_handler);
+	      class = bfd_coff_classify_symbol (abfd, &c_symbol->native->u.syment);
+	      (void) bfd_set_error_handler (current_error_handler);
+	  
+	      n_sclass = &c_symbol->native->u.syment.n_sclass;
+
+	      /* If the symbol class has been changed (eg objcopy/ld script/etc)
+		 we cannot retain the existing sclass from the original symbol.
+		 Weak symbols only have one valid sclass, so just set it always.
+		 If it is not local class and should be, set it C_STAT.
+		 If it is global and not classified as global, or if it is
+		 weak (which is also classified as global), set it C_EXT.  */
+
+	      if (symbol->flags & BSF_WEAK)
+		*n_sclass = obj_pe (abfd) ? C_NT_WEAK : C_WEAKEXT;
+	      else if (symbol->flags & BSF_LOCAL && class != COFF_SYMBOL_LOCAL)
+		*n_sclass = C_STAT;
+	      else if (symbol->flags & BSF_GLOBAL
+		       && (class != COFF_SYMBOL_GLOBAL
+#ifdef COFF_WITH_PE
+			   || *n_sclass == C_NT_WEAK
+#endif
+			   || *n_sclass == C_WEAKEXT))
+		c_symbol->native->u.syment.n_sclass = C_EXT;
+	    }
+
 	  if (!coff_write_native_symbol (abfd, c_symbol, &written,
 					 &string_size, &debug_string_section,
 					 &debug_string_size))
diff --git a/bfd/cofflink.c b/bfd/cofflink.c
index 19a7dd2..d771168 100644
--- a/bfd/cofflink.c
+++ b/bfd/cofflink.c
@@ -2985,16 +2985,16 @@
 		 absolute.  We output the address here to a file.
 		 This file is then read by dlltool when generating the
 		 reloc section.  Note that the base file is not
-		 portable between systems.  We write out a long here,
-		 and dlltool reads in a long.  */
-	      long addr = (rel->r_vaddr
+		 portable between systems.  We write out a bfd_vma here,
+		 and dlltool reads in a bfd_vma.  */
+	      bfd_vma addr = (rel->r_vaddr
 			   - input_section->vma
 			   + input_section->output_offset
 			   + input_section->output_section->vma);
 	      if (coff_data (output_bfd)->pe)
 		addr -= pe_data(output_bfd)->pe_opthdr.ImageBase;
-	      if (fwrite (&addr, 1, sizeof (long), (FILE *) info->base_file)
-		  != sizeof (long))
+	      if (fwrite (&addr, 1, sizeof (bfd_vma), (FILE *) info->base_file)
+		  != sizeof (bfd_vma))
 		{
 		  bfd_set_error (bfd_error_system_call);
 		  return FALSE;
diff --git a/bfd/config.in b/bfd/config.in
index 7a4aa70..f15e4ff 100644
--- a/bfd/config.in
+++ b/bfd/config.in
@@ -297,11 +297,17 @@
 /* Version number of package */
 #undef VERSION
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
 #endif
 
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to 1 if on MINIX. */
 #undef _MINIX
 
diff --git a/bfd/configure b/bfd/configure
index 2997576..84ba0f6 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE AR ac_ct_AR RANLIB ac_ct_RANLIB CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S lt_ECHO DEBUGDIR PKGVERSION REPORT_BUGS_TO REPORT_BUGS_TEXI WARN_CFLAGS NO_WERROR MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE INSTALL_LIBBFD_TRUE INSTALL_LIBBFD_FALSE host_noncanonical target_noncanonical bfdlibdir bfdincludedir USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE HDEFINES BFD_HOST_64BIT_LONG BFD_HOST_64BIT_LONG_LONG BFD_HOST_64_BIT_DEFINED BFD_HOST_64_BIT BFD_HOST_U_64_BIT BFD_HOSTPTR_T CC_FOR_BUILD EXEEXT_FOR_BUILD COREFILE COREFLAG WIN32LDFLAGS WIN32LIBADD TDEFINES wordsize bfd64_libs all_backends bfd_backends bfd_machines bfd_default_target_size bfd_file_ptr bfd_ufile_ptr tdefaults datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE AR ac_ct_AR RANLIB ac_ct_RANLIB CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 DEBUGDIR PKGVERSION REPORT_BUGS_TO REPORT_BUGS_TEXI WARN_CFLAGS NO_WERROR MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE INSTALL_LIBBFD_TRUE INSTALL_LIBBFD_FALSE host_noncanonical target_noncanonical bfdlibdir bfdincludedir USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE HDEFINES BFD_HOST_64BIT_LONG BFD_HOST_64BIT_LONG_LONG BFD_HOST_64_BIT_DEFINED BFD_HOST_64_BIT BFD_HOST_U_64_BIT BFD_HOSTPTR_T CC_FOR_BUILD EXEEXT_FOR_BUILD COREFILE COREFLAG WIN32LDFLAGS WIN32LIBADD TDEFINES wordsize bfd64_libs all_backends bfd_backends bfd_machines bfd_default_target_size bfd_file_ptr bfd_ufile_ptr tdefaults datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -1004,6 +1004,7 @@
   --enable-dependency-tracking   do not reject slow dependency extractors
   --enable-shared[=PKGS]
                           build shared libraries [default=no]
+  --disable-largefile     omit support for large files
   --enable-static[=PKGS]
                           build static libraries [default=yes]
   --enable-fast-install[=PKGS]
@@ -3032,7 +3033,7 @@
 
 # Define the identity of the package.
  PACKAGE=bfd
- VERSION=2.18.50
+ VERSION=2.19.50
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4933,11 +4934,382 @@
 _ACEOF
 
 
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
+
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -4952,94 +5324,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5260,7 +5544,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5422,13 +5705,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5425: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5708: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5428: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5711: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5431: output\"" >&5)
+  (eval echo "\"\$as_me:5714: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5474,7 +5757,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5535,8 +5818,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5583,7 +5866,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5594,7 +5876,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5674,6 +5958,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5728,6 +6101,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -6150,7 +6529,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6230,7 +6609,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6274,6 +6653,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6413,7 +6793,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6452,6 +6832,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6483,7 +6868,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6486 "configure"' > conftest.$ac_ext
+  echo '#line 6871 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6658,7 +7043,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6670,6 +7059,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6732,6 +7674,98 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -7078,7 +8112,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -7110,11 +8144,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7113: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8147: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7117: \$? = $ac_status" >&5
+   echo "$as_me:8151: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7164,19 +8198,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7191,10 +8231,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7243,18 +8284,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7284,11 +8315,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7301,6 +8346,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7416,10 +8467,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7432,27 +8483,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7435: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8486: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7439: \$? = $ac_status" >&5
+   echo "$as_me:8490: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7475,10 +8526,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7491,20 +8542,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7537,11 +8588,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7540: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8591: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7544: \$? = $ac_status" >&5
+   echo "$as_me:8595: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7592,11 +8643,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7595: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8646: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7599: \$? = $ac_status" >&5
+   echo "$as_me:8650: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7686,16 +8737,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7757,19 +8809,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7783,7 +8834,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7834,6 +8885,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7848,6 +8900,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7856,8 +8914,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7867,6 +8923,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -8062,6 +9134,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8214,20 +9287,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8249,73 +9327,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8397,7 +9432,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8515,25 +9550,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -8972,8 +10011,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -9099,13 +10138,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -9128,14 +10172,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -9158,7 +10202,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9424,7 +10468,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9445,7 +10489,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9629,7 +10673,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9655,6 +10699,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9799,7 +10850,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -10046,7 +11097,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10340,7 +11391,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10389,7 +11440,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10392 "configure"
+#line 11443 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10430,10 +11481,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10449,7 +11496,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10489,7 +11536,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10492 "configure"
+#line 11539 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10530,10 +11577,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10549,7 +11592,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -11048,7 +12091,7 @@
 
 # host stuff:
 
-ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi"
+ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi id"
 # If we haven't got the data from the intl directory,
 # assume NLS is disabled.
 USE_NLS=no
@@ -21718,6 +22761,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -21734,6 +22778,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -21744,6 +22789,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -21817,6 +22867,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -21829,6 +22880,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -21837,6 +22889,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -22118,7 +23175,19 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@DEBUGDIR@,$DEBUGDIR,;t t
 s,@PKGVERSION@,$PKGVERSION,;t t
 s,@REPORT_BUGS_TO@,$REPORT_BUGS_TO,;t t
@@ -22877,36 +23946,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -22983,6 +24052,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -23016,6 +24088,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -23031,6 +24106,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -23271,6 +24361,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -23288,6 +24379,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -23317,10 +24429,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -23341,6 +24474,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -23373,6 +24507,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -23397,6 +24551,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/bfd/configure.in b/bfd/configure.in
index d098988..72cefbc 100644
--- a/bfd/configure.in
+++ b/bfd/configure.in
@@ -8,7 +8,7 @@
 AC_CANONICAL_TARGET
 AC_ISC_POSIX
 
-AM_INIT_AUTOMAKE(bfd, 2.18.50)
+AM_INIT_AUTOMAKE(bfd, 2.19.50)
 
 dnl These must be called before LT_INIT, because it may want
 dnl to call AC_CHECK_PROG.
@@ -22,6 +22,7 @@
 AC_PROG_CC
 AC_GNU_SOURCE
 AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
 
 LT_INIT
 
@@ -119,7 +120,7 @@
 
 # host stuff:
 
-ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi"
+ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi id"
 ZW_GNU_GETTEXT_SISTER_DIR
 AM_PO_SUBDIRS
 
diff --git a/bfd/doc/Makefile.in b/bfd/doc/Makefile.in
index d0601db..d81c6de 100644
--- a/bfd/doc/Makefile.in
+++ b/bfd/doc/Makefile.in
@@ -57,9 +57,9 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../config/stdint.m4 $(top_srcdir)/../libtool.m4 \
 	$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
-	$(top_srcdir)/../ltversion.m4 $(top_srcdir)/bfd.m4 \
-	$(top_srcdir)/warning.m4 $(top_srcdir)/acinclude.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
+	$(top_srcdir)/bfd.m4 $(top_srcdir)/warning.m4 \
+	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
@@ -115,6 +115,7 @@
 DEBUGDIR = @DEBUGDIR@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -144,6 +145,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -154,8 +156,12 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -181,7 +187,13 @@
 XGETTEXT = @XGETTEXT@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 all_backends = @all_backends@
@@ -360,9 +372,9 @@
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --cygnus  doc/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  doc/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --cygnus  doc/Makefile
+	  $(AUTOMAKE) --foreign  doc/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index c53fdf0..a4918ac 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -75,7 +75,7 @@
   bfd_byte *data;
 };
 
-struct loadable_section
+struct adjusted_section
 {
   asection *section;
   bfd_vma adj_vma;
@@ -143,11 +143,11 @@
      use. */
   struct funcinfo *inliner_chain;
 
-  /* Number of loadable sections.  */
-  unsigned int loadable_section_count;
+  /* Number of sections whose VMA we must adjust.  */
+  unsigned int adjusted_section_count;
 
-  /* Array of loadable sections.  */
-  struct loadable_section *loadable_sections;
+  /* Array of sections with adjusted VMA.  */
+  struct adjusted_section *adjusted_sections;
 
   /* Number of times find_line is called.  This is used in
      the heuristic for enabling the info hash tables.  */
@@ -237,6 +237,9 @@
   /* Pointer to dwarf2_debug structure.  */
   struct dwarf2_debug *stash;
 
+  /* DWARF format version for this unit - from unit header.  */
+  int version;
+
   /* Address size for this unit - from unit header.  */
   unsigned char addr_size;
 
@@ -742,9 +745,20 @@
 
   switch (form)
     {
-    case DW_FORM_addr:
-      /* FIXME: DWARF3 draft says DW_FORM_ref_addr is offset_size.  */
     case DW_FORM_ref_addr:
+      /* DW_FORM_ref_addr is an address in DWARF2, and an offset in
+	 DWARF3.  */
+      if (unit->version == 3)
+	{
+	  if (unit->offset_size == 4)
+	    attr->u.val = read_4_bytes (unit->abfd, info_ptr);
+	  else
+	    attr->u.val = read_8_bytes (unit->abfd, info_ptr);
+	  info_ptr += unit->offset_size;
+	  break;
+	}
+      /* FALLTHROUGH */
+    case DW_FORM_addr:
       attr->u.val = read_address (unit, info_ptr);
       info_ptr += unit->addr_size;
       break;
@@ -1705,16 +1719,30 @@
 }
 
 static char *
-find_abstract_instance_name (struct comp_unit *unit, bfd_uint64_t die_ref)
+find_abstract_instance_name (struct comp_unit *unit,
+			     struct attribute *attr_ptr)
 {
   bfd *abfd = unit->abfd;
   bfd_byte *info_ptr;
   unsigned int abbrev_number, bytes_read, i;
   struct abbrev_info *abbrev;
+  bfd_uint64_t die_ref = attr_ptr->u.val;
   struct attribute attr;
   char *name = 0;
 
-  info_ptr = unit->info_ptr_unit + die_ref;
+  /* DW_FORM_ref_addr can reference an entry in a different CU. It
+     is an offset from the .debug_info section, not the current CU.  */
+  if (attr_ptr->form == DW_FORM_ref_addr)
+    {
+      /* We only support DW_FORM_ref_addr within the same file, so
+	 any relocations should be resolved already.  */
+      if (!die_ref)
+	abort ();
+
+      info_ptr = unit->stash->sec_info_ptr + die_ref;
+    }
+  else 
+    info_ptr = unit->info_ptr_unit + die_ref;
   abbrev_number = read_unsigned_leb128 (abfd, info_ptr, &bytes_read);
   info_ptr += bytes_read;
 
@@ -1740,7 +1768,7 @@
 		    name = attr.u.str;
 		  break;
 		case DW_AT_specification:
-		  name = find_abstract_instance_name (unit, attr.u.val);
+		  name = find_abstract_instance_name (unit, &attr);
 		  break;
 		case DW_AT_MIPS_linkage_name:
 		  name = attr.u.str;
@@ -1902,7 +1930,7 @@
 		  break;
 
 		case DW_AT_abstract_origin:
-		  func->name = find_abstract_instance_name (unit, attr.u.val);
+		  func->name = find_abstract_instance_name (unit, &attr);
 		  break;
 
 		case DW_AT_name:
@@ -2070,9 +2098,9 @@
   addr_size = read_1_byte (abfd, info_ptr);
   info_ptr += 1;
 
-  if (version != 2)
+  if (version != 2 && version != 3)
     {
-      (*_bfd_error_handler) (_("Dwarf Error: found dwarf version '%u', this reader only handles version 2 information."), version);
+      (*_bfd_error_handler) (_("Dwarf Error: found dwarf version '%u', this reader only handles version 2 and 3 information."), version);
       bfd_set_error (bfd_error_bad_value);
       return 0;
     }
@@ -2120,6 +2148,7 @@
   amt = sizeof (struct comp_unit);
   unit = bfd_zalloc (abfd, amt);
   unit->abfd = abfd;
+  unit->version = version;
   unit->addr_size = addr_size;
   unit->offset_size = offset_size;
   unit->abbrevs = abbrevs;
@@ -2472,49 +2501,63 @@
   return NULL;
 }
 
-/* Unset vmas for loadable sections in STASH.  */
+/* Unset vmas for adjusted sections in STASH.  */
 
 static void
 unset_sections (struct dwarf2_debug *stash)
 {
   unsigned int i;
-  struct loadable_section *p;
+  struct adjusted_section *p;
 
-  i = stash->loadable_section_count;
-  p = stash->loadable_sections;
+  i = stash->adjusted_section_count;
+  p = stash->adjusted_sections;
   for (; i > 0; i--, p++)
     p->section->vma = 0;
 }
 
-/* Set unique vmas for loadable sections in ABFD and save vmas in
-   STASH for unset_sections.  */
+/* Set unique VMAs for loadable and DWARF sections in ABFD and save
+   VMAs in STASH for unset_sections.  */
 
 static bfd_boolean
 place_sections (bfd *abfd, struct dwarf2_debug *stash)
 {
-  struct loadable_section *p;
+  struct adjusted_section *p;
   unsigned int i;
 
-  if (stash->loadable_section_count != 0)
+  if (stash->adjusted_section_count != 0)
     {
-      i = stash->loadable_section_count;
-      p = stash->loadable_sections;
+      i = stash->adjusted_section_count;
+      p = stash->adjusted_sections;
       for (; i > 0; i--, p++)
 	p->section->vma = p->adj_vma;
     }
   else
     {
       asection *sect;
-      bfd_vma last_vma = 0;
+      bfd_vma last_vma = 0, last_dwarf = 0;
       bfd_size_type amt;
-      struct loadable_section *p;
+      struct adjusted_section *p;
 
       i = 0;
       for (sect = abfd->sections; sect != NULL; sect = sect->next)
 	{
 	  bfd_size_type sz;
+	  int is_debug_info;
 
-	  if (sect->vma != 0 || (sect->flags & SEC_LOAD) == 0)
+	  if (sect->vma != 0)
+	    continue;
+
+	  /* We need to adjust the VMAs of any .debug_info sections.
+	     Skip compressed ones, since no relocations could target
+	     them - they should not appear in object files anyway.  */
+	  if (strcmp (sect->name, DWARF2_DEBUG_INFO) == 0)
+	    is_debug_info = 1;
+	  else if (CONST_STRNEQ (sect->name, GNU_LINKONCE_INFO))
+	    is_debug_info = 1;
+	  else
+	    is_debug_info = 0;
+
+	  if (!is_debug_info && (sect->flags & SEC_LOAD) == 0)
 	    continue;
 
 	  sz = sect->rawsize ? sect->rawsize : sect->size;
@@ -2524,19 +2567,33 @@
 	  i++;
 	}
 
-      amt = i * sizeof (struct loadable_section);
-      p = (struct loadable_section *) bfd_zalloc (abfd, amt);
+      amt = i * sizeof (struct adjusted_section);
+      p = (struct adjusted_section *) bfd_zalloc (abfd, amt);
       if (! p)
 	return FALSE;
 
-      stash->loadable_sections = p;
-      stash->loadable_section_count = i;
+      stash->adjusted_sections = p;
+      stash->adjusted_section_count = i;
 
       for (sect = abfd->sections; sect != NULL; sect = sect->next)
 	{
 	  bfd_size_type sz;
+	  int is_debug_info;
 
-	  if (sect->vma != 0 || (sect->flags & SEC_LOAD) == 0)
+	  if (sect->vma != 0)
+	    continue;
+
+	  /* We need to adjust the VMAs of any .debug_info sections.
+	     Skip compressed ones, since no relocations could target
+	     them - they should not appear in object files anyway.  */
+	  if (strcmp (sect->name, DWARF2_DEBUG_INFO) == 0)
+	    is_debug_info = 1;
+	  else if (CONST_STRNEQ (sect->name, GNU_LINKONCE_INFO))
+	    is_debug_info = 1;
+	  else
+	    is_debug_info = 0;
+
+	  if (!is_debug_info && (sect->flags & SEC_LOAD) == 0)
 	    continue;
 
 	  sz = sect->rawsize ? sect->rawsize : sect->size;
@@ -2544,7 +2601,13 @@
 	    continue;
 
 	  p->section = sect;
-	  if (last_vma != 0)
+	  if (is_debug_info)
+	    {
+	      BFD_ASSERT (sect->alignment_power == 0);
+	      sect->vma = last_dwarf;
+	      last_dwarf += sz;
+	    }
+	  else if (last_vma != 0)
 	    {
 	      /* Align the new address to the current section
 		 alignment.  */
@@ -2552,9 +2615,12 @@
 			   + ~((bfd_vma) -1 << sect->alignment_power))
 			  & ((bfd_vma) -1 << sect->alignment_power));
 	      sect->vma = last_vma;
+	      last_vma += sect->vma + sz;
 	    }
+	  else
+	    last_vma += sect->vma + sz;
+
 	  p->adj_vma = sect->vma;
-	  last_vma += sect->vma + sz;
 
 	  p++;
 	}
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index 993458e..9615a4a 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -1012,7 +1012,7 @@
   /* Count relocations.  Not called for relocatable links
      or if all relocs are being preserved in the output.  */
   unsigned int (*elf_backend_count_relocs)
-    (asection *, Elf_Internal_Rela *);
+    (struct bfd_link_info *, asection *);
 
   /* This function, if defined, is called when an NT_PRSTATUS note is found
      in a core file.  */
diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c
index 7151a39..579a6b8 100644
--- a/bfd/elf-eh-frame.c
+++ b/bfd/elf-eh-frame.c
@@ -549,6 +549,16 @@
 	     < (bfd_size_type) ((buf) - ehbuf)))	\
     cookie->rel++
 
+#define REQUIRE_CLEARED_RELOCS(buf)			\
+  while (cookie->rel < cookie->relend			\
+	 && (cookie->rel->r_offset			\
+	     < (bfd_size_type) ((buf) - ehbuf)))	\
+    {							\
+      REQUIRE (cookie->rel->r_info == 0);		\
+      REQUIRE (cookie->rel->r_addend == 0);		\
+      cookie->rel++;					\
+    }
+
 #define GET_RELOC(buf)					\
   ((cookie->rel < cookie->relend			\
     && (cookie->rel->r_offset				\
@@ -766,9 +776,14 @@
 
 	  /* Chain together the FDEs for each section.  */
 	  rsec = _bfd_elf_gc_mark_rsec (info, sec, gc_mark_hook, cookie);
-	  REQUIRE (rsec && rsec->owner == abfd);
-	  this_inf->u.fde.next_for_section = elf_fde_list (rsec);
-	  elf_fde_list (rsec) = this_inf;
+	  /* RSEC will be NULL if FDE was cleared out as it was belonging to
+	     a discarded SHT_GROUP.  */
+	  if (rsec)
+	    {
+	      REQUIRE (rsec->owner == abfd);
+	      this_inf->u.fde.next_for_section = elf_fde_list (rsec);
+	      elf_fde_list (rsec) = this_inf;
+	    }
 
 	  /* Skip the initial location and address range.  */
 	  start = buf;
@@ -801,7 +816,17 @@
 	  insns = buf;
 
 	  buf = last_fde + 4 + hdr_length;
-	  SKIP_RELOCS (buf);
+
+	  /* Cleared FDE?  The instructions will not be cleared but verify all
+	     the relocation entries for them are cleared.  */
+	  if (rsec == NULL)
+	    {
+	      REQUIRE_CLEARED_RELOCS (buf);
+	    }
+	  else
+	    {
+	      SKIP_RELOCS (buf);
+	    }
 	}
 
       /* Try to interpret the CFA instructions and find the first
diff --git a/bfd/elf.c b/bfd/elf.c
index 7f9853e..ea44f72 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1863,14 +1863,8 @@
       return TRUE;
 
     case SHT_GROUP:
-      /* We need a BFD section for objcopy and relocatable linking,
-	 and it's handy to have the signature available as the section
-	 name.  */
       if (! IS_VALID_GROUP_SECTION_HEADER (hdr))
 	return FALSE;
-      name = group_signature (abfd, hdr);
-      if (name == NULL)
-	return FALSE;
       if (!_bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex))
 	return FALSE;
       if (hdr->contents != NULL)
@@ -2687,13 +2681,15 @@
     *failedptr = TRUE;
 }
 
-/* Fill in the contents of a SHT_GROUP section.  */
+/* Fill in the contents of a SHT_GROUP section.  Called from
+   _bfd_elf_compute_section_file_positions for gas, objcopy, and
+   when ELF targets use the generic linker, ld.  Called for ld -r
+   from bfd_elf_final_link.  */
 
 void
 bfd_elf_set_group_contents (bfd *abfd, asection *sec, void *failedptrarg)
 {
   bfd_boolean *failedptr = failedptrarg;
-  unsigned long symindx;
   asection *elt, *first;
   unsigned char *loc;
   bfd_boolean gas;
@@ -2704,20 +2700,49 @@
       || *failedptr)
     return;
 
-  symindx = 0;
-  if (elf_group_id (sec) != NULL)
-    symindx = elf_group_id (sec)->udata.i;
-
-  if (symindx == 0)
+  if (elf_section_data (sec)->this_hdr.sh_info == 0)
     {
-      /* If called from the assembler, swap_out_syms will have set up
-	 elf_section_syms;  If called for "ld -r", use target_index.  */
-      if (elf_section_syms (abfd) != NULL)
-	symindx = elf_section_syms (abfd)[sec->index]->udata.i;
-      else
-	symindx = sec->target_index;
+      unsigned long symindx = 0;
+
+      /* elf_group_id will have been set up by objcopy and the
+	 generic linker.  */
+      if (elf_group_id (sec) != NULL)
+	symindx = elf_group_id (sec)->udata.i;
+
+      if (symindx == 0)
+	{
+	  /* If called from the assembler, swap_out_syms will have set up
+	     elf_section_syms.  */
+	  BFD_ASSERT (elf_section_syms (abfd) != NULL);
+	  symindx = elf_section_syms (abfd)[sec->index]->udata.i;
+	}
+      elf_section_data (sec)->this_hdr.sh_info = symindx;
     }
-  elf_section_data (sec)->this_hdr.sh_info = symindx;
+  else if (elf_section_data (sec)->this_hdr.sh_info == (unsigned int) -2)
+    {
+      /* The ELF backend linker sets sh_info to -2 when the group
+	 signature symbol is global, and thus the index can't be
+	 set until all local symbols are output.  */
+      asection *igroup = elf_sec_group (elf_next_in_group (sec));
+      struct bfd_elf_section_data *sec_data = elf_section_data (igroup);
+      unsigned long symndx = sec_data->this_hdr.sh_info;
+      unsigned long extsymoff = 0;
+      struct elf_link_hash_entry *h;
+
+      if (!elf_bad_symtab (igroup->owner))
+	{
+	  Elf_Internal_Shdr *symtab_hdr;
+
+	  symtab_hdr = &elf_tdata (igroup->owner)->symtab_hdr;
+	  extsymoff = symtab_hdr->sh_info;
+	}
+      h = elf_sym_hashes (igroup->owner)[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;
+
+      elf_section_data (sec)->this_hdr.sh_info = h->indx;
+    }
 
   /* The contents won't be allocated for "ld -r" or objcopy.  */
   gas = TRUE;
@@ -3386,7 +3411,7 @@
       ++segs;
     }
 
-  if (info->relro)
+  if (info != NULL && info->relro)
     {
       /* We need a PT_GNU_RELRO segment.  */
       ++segs;
@@ -3768,8 +3793,13 @@
 	    }
 
 	  /* Allow interested parties a chance to override our decision.  */
-	  if (last_hdr && info->callbacks->override_segment_assignment)
-	    new_segment = info->callbacks->override_segment_assignment (info, abfd, hdr, last_hdr, new_segment);
+	  if (last_hdr != NULL
+	      && info != NULL
+	      && info->callbacks->override_segment_assignment != NULL)
+	    new_segment
+	      = info->callbacks->override_segment_assignment (info, abfd, hdr,
+							      last_hdr,
+							      new_segment);
 
 	  if (! new_segment)
 	    {
@@ -3944,7 +3974,7 @@
 	  pm = &m->next;
 	}
 
-      if (info->relro)
+      if (info != NULL && info->relro)
 	{
 	  for (m = mfirst; m != NULL; m = m->next)
 	    {
@@ -4128,7 +4158,7 @@
   unsigned int i, j;
 
   if (link_info == NULL
-      && !elf_modify_segment_map (abfd, link_info, FALSE))
+      && !_bfd_elf_map_sections_to_segments (abfd, link_info))
     return FALSE;
 
   alloc = 0;
@@ -4258,21 +4288,14 @@
 	      elf_section_type (m->sections[i]) = SHT_NOBITS;
 
 	  /* Find out whether this segment contains any loadable
-	     sections.  If the first section isn't loadable, the same
-	     holds for any other sections.  */
-	  i = 0;
-	  while (elf_section_type (m->sections[i]) == SHT_NOBITS)
-	    {
-	      /* If a segment starts with .tbss, we need to look
-		 at the next section to decide whether the segment
-		 has any loadable sections.  */
-	      if ((elf_section_flags (m->sections[i]) & SHF_TLS) == 0
-		  || ++i >= m->count)
-		{
-		  no_contents = TRUE;
-		  break;
-		}
-	    }
+	     sections.  */
+	  no_contents = TRUE;
+	  for (i = 0; i < m->count; i++)
+	    if (elf_section_type (m->sections[i]) != SHT_NOBITS)
+	      {
+		no_contents = FALSE;
+		break;
+	      }
 
 	  off_adjust = vma_page_aligned_bias (m->sections[0]->vma, off, align);
 	  off += off_adjust;
@@ -6019,7 +6042,7 @@
 	  if (elf_section_flags (isec) & SHF_GROUP)
 	    elf_section_flags (osec) |= SHF_GROUP;
 	  elf_next_in_group (osec) = elf_next_in_group (isec);
-	  elf_group_name (osec) = elf_group_name (isec);
+	  elf_section_data (osec)->group = elf_section_data (isec)->group;
 	}
     }
 
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index 75d0695..360cba6 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -409,7 +409,31 @@
 	 FALSE,			/* partial_inplace */
 	 0,			/* src_mask */
 	 0xffffffff,		/* dst_mask */
-	 TRUE)			/* pcrel_offset */
+	 TRUE),			/* pcrel_offset */
+
+  /* We don't handle these in any special manner and cross-format
+     linking is not supported; just recognize them enough to pass them
+     around.  FIXME: do the same for most PIC relocs and add sanity
+     tests to actually refuse gracefully to handle these and PIC
+     relocs for cross-format linking.  */
+#define TLSHOWTO32(name) \
+ HOWTO (name, 0, 2, 32, FALSE, 0, complain_overflow_bitfield, \
+        bfd_elf_generic_reloc, #name, FALSE, 0, 0xffffffff, FALSE)
+#define TLSHOWTO16(name) \
+ HOWTO (name, 0, 1, 16, FALSE, 0, complain_overflow_bitfield, \
+        bfd_elf_generic_reloc, #name, FALSE, 0, 0xffff, FALSE)
+
+  TLSHOWTO32 (R_CRIS_32_GOT_GD),
+  TLSHOWTO16 (R_CRIS_16_GOT_GD),
+  TLSHOWTO32 (R_CRIS_32_GD),
+  TLSHOWTO32 (R_CRIS_DTP),
+  TLSHOWTO32 (R_CRIS_32_DTPREL),
+  TLSHOWTO16 (R_CRIS_16_DTPREL),
+  TLSHOWTO32 (R_CRIS_32_GOT_TPREL),
+  TLSHOWTO16 (R_CRIS_16_GOT_TPREL),
+  TLSHOWTO32 (R_CRIS_32_TPREL),
+  TLSHOWTO16 (R_CRIS_16_TPREL),
+  TLSHOWTO32 (R_CRIS_DTPMOD)
 };
 
 /* Map BFD reloc types to CRIS ELF reloc types.  */
@@ -441,7 +465,18 @@
   { BFD_RELOC_CRIS_32_GOTPLT,	R_CRIS_32_GOTPLT },
   { BFD_RELOC_CRIS_32_GOTREL,	R_CRIS_32_GOTREL },
   { BFD_RELOC_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_GOTREL },
-  { BFD_RELOC_CRIS_32_PLT_PCREL, R_CRIS_32_PLT_PCREL }
+  { BFD_RELOC_CRIS_32_PLT_PCREL, R_CRIS_32_PLT_PCREL },
+  { BFD_RELOC_CRIS_32_GOT_GD,	R_CRIS_32_GOT_GD },
+  { BFD_RELOC_CRIS_16_GOT_GD,	R_CRIS_16_GOT_GD },
+  { BFD_RELOC_CRIS_32_GD,	R_CRIS_32_GD },
+  { BFD_RELOC_CRIS_DTP,	R_CRIS_DTP },
+  { BFD_RELOC_CRIS_32_DTPREL,	R_CRIS_32_DTPREL },
+  { BFD_RELOC_CRIS_16_DTPREL,	R_CRIS_16_DTPREL },
+  { BFD_RELOC_CRIS_32_GOT_TPREL, R_CRIS_32_GOT_TPREL },
+  { BFD_RELOC_CRIS_16_GOT_TPREL, R_CRIS_16_GOT_TPREL },
+  { BFD_RELOC_CRIS_32_TPREL,	R_CRIS_32_TPREL },
+  { BFD_RELOC_CRIS_16_TPREL,	R_CRIS_16_TPREL },
+  { BFD_RELOC_CRIS_DTPMOD,	R_CRIS_DTPMOD }
 };
 
 static reloc_howto_type *
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index 84e72b8..83a9274 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -157,6 +157,12 @@
 /* Offset of tp and dtp pointers from start of TLS block.  */
 #define TP_OFFSET	0x7000
 #define DTP_OFFSET	0x8000
+
+/* The value of a defined global symbol.  */
+#define SYM_VAL(SYM) \
+  ((SYM)->root.u.def.section->output_section->vma	\
+   + (SYM)->root.u.def.section->output_offset		\
+   + (SYM)->root.u.def.value)
 
 static reloc_howto_type *ppc_elf_howto_table[R_PPC_max];
 
@@ -3958,6 +3964,33 @@
 	   ibfd, obfd, in_abi, out_abi);
     }
 
+  /* Check for conflicting Tag_GNU_Power_ABI_Struct_Return attributes
+     and merge non-conflicting ones.  */
+  in_attr = &in_attrs[Tag_GNU_Power_ABI_Struct_Return];
+  out_attr = &out_attrs[Tag_GNU_Power_ABI_Struct_Return];
+  if (in_attr->i != out_attr->i)
+    {
+      out_attr->type = 1;
+      if (out_attr->i == 0)
+       out_attr->i = in_attr->i;
+      else if (in_attr->i == 0)
+       ;
+      else if (out_attr->i == 1 && in_attr->i == 2)
+       _bfd_error_handler
+         (_("Warning: %B uses r3/r4 for small structure returns, %B uses memory"), obfd, ibfd);
+      else if (out_attr->i == 2 && in_attr->i == 1)
+       _bfd_error_handler
+         (_("Warning: %B uses r3/r4 for small structure returns, %B uses memory"), ibfd, obfd);
+      else if (in_attr->i > 2)
+       _bfd_error_handler
+         (_("Warning: %B uses unknown small structure return convention %d"), ibfd,
+          in_attr->i);
+      else
+       _bfd_error_handler
+         (_("Warning: %B uses unknown small structure return convention %d"), obfd,
+          out_attr->i);
+    }
+
   /* Merge Tag_compatibility attributes and any common GNU ones.  */
   _bfd_elf_merge_object_attributes (ibfd, obfd);
 
@@ -6656,8 +6689,10 @@
 		  }
 	      }
 
-	    relocation = htab->got->output_offset + off;
-	    relocation -= htab->elf.hgot->root.u.def.value;
+	    relocation = (htab->got->output_section->vma
+			  + htab->got->output_offset
+			  + off
+			  - SYM_VAL (htab->elf.hgot));
 
 	    /* Addends on got relocations don't make much sense.
 	       x+off@got is actually x@got+off, and since the got is
@@ -6971,12 +7006,15 @@
 	     an embedded ELF object, for which the .got section acts like the
 	     AIX .toc section.  */
 	case R_PPC_TOC16:			/* phony GOT16 relocations */
-	  BFD_ASSERT (sec != NULL);
-	  BFD_ASSERT (bfd_is_und_section (sec)
-		      || strcmp (bfd_get_section_name (abfd, sec), ".got") == 0
+	  if (sec == NULL || sec->output_section == NULL)
+	    {
+	      unresolved_reloc = TRUE;
+	      break;
+	    }
+	  BFD_ASSERT (strcmp (bfd_get_section_name (abfd, sec), ".got") == 0
 		      || strcmp (bfd_get_section_name (abfd, sec), ".cgot") == 0);
 
-	    addend -= sec->output_section->vma + sec->output_offset + 0x8000;
+	  addend -= sec->output_section->vma + sec->output_offset + 0x8000;
 	  break;
 
 	case R_PPC_PLTREL24:
@@ -7011,9 +7049,13 @@
 	case R_PPC_SDAREL16:
 	  {
 	    const char *name;
-	    struct elf_link_hash_entry *sh;
 
-	    BFD_ASSERT (sec != NULL);
+	    if (sec == NULL || sec->output_section == NULL)
+	      {
+		unresolved_reloc = TRUE;
+		break;
+	      }
+
 	    name = bfd_get_section_name (abfd, sec->output_section);
 	    if (! ((CONST_STRNEQ (name, ".sdata")
 		    && (name[6] == 0 || name[6] == '.'))
@@ -7028,10 +7070,7 @@
 		   howto->name,
 		   name);
 	      }
-	    sh = htab->sdata[0].sym;
-	    addend -= (sh->root.u.def.value
-		       + sh->root.u.def.section->output_offset
-		       + sh->root.u.def.section->output_section->vma);
+	    addend -= SYM_VAL (htab->sdata[0].sym);
 	  }
 	  break;
 
@@ -7039,9 +7078,13 @@
 	case R_PPC_EMB_SDA2REL:
 	  {
 	    const char *name;
-	    struct elf_link_hash_entry *sh;
 
-	    BFD_ASSERT (sec != NULL);
+	    if (sec == NULL || sec->output_section == NULL)
+	      {
+		unresolved_reloc = TRUE;
+		break;
+	      }
+
 	    name = bfd_get_section_name (abfd, sec->output_section);
 	    if (! (CONST_STRNEQ (name, ".sdata2")
 		   || CONST_STRNEQ (name, ".sbss2")))
@@ -7058,10 +7101,7 @@
 		ret = FALSE;
 		continue;
 	      }
-	    sh = htab->sdata[1].sym;
-	    addend -= (sh->root.u.def.value
-		       + sh->root.u.def.section->output_offset
-		       + sh->root.u.def.section->output_section->vma);
+	    addend -= SYM_VAL (htab->sdata[1].sym);
 	  }
 	  break;
 
@@ -7071,9 +7111,13 @@
 	  {
 	    const char *name;
 	    int reg;
-	    struct elf_link_hash_entry *sh;
 
-	    BFD_ASSERT (sec != NULL);
+	    if (sec == NULL || sec->output_section == NULL)
+	      {
+		unresolved_reloc = TRUE;
+		break;
+	      }
+
 	    name = bfd_get_section_name (abfd, sec->output_section);
 	    if (((CONST_STRNEQ (name, ".sdata")
 		  && (name[6] == 0 || name[6] == '.'))
@@ -7081,28 +7125,19 @@
 		     && (name[5] == 0 || name[5] == '.'))))
 	      {
 		reg = 13;
-		sh = htab->sdata[0].sym;
-		addend -= (sh->root.u.def.value
-			   + sh->root.u.def.section->output_offset
-			   + sh->root.u.def.section->output_section->vma);
+		addend -= SYM_VAL (htab->sdata[0].sym);
 	      }
-
 	    else if (CONST_STRNEQ (name, ".sdata2")
 		     || CONST_STRNEQ (name, ".sbss2"))
 	      {
 		reg = 2;
-		sh = htab->sdata[1].sym;
-		addend -= (sh->root.u.def.value
-			   + sh->root.u.def.section->output_offset
-			   + sh->root.u.def.section->output_section->vma);
+		addend -= SYM_VAL (htab->sdata[1].sym);
 	      }
-
 	    else if (strcmp (name, ".PPC.EMB.sdata0") == 0
 		     || strcmp (name, ".PPC.EMB.sbss0") == 0)
 	      {
 		reg = 0;
 	      }
-
 	    else
 	      {
 		(*_bfd_error_handler)
@@ -7132,7 +7167,11 @@
 	case R_PPC_SECTOFF_LO:
 	case R_PPC_SECTOFF_HI:
 	case R_PPC_SECTOFF_HA:
-	  BFD_ASSERT (sec != NULL);
+	  if (sec == NULL || sec->output_section == NULL)
+	    {
+	      unresolved_reloc = TRUE;
+	      break;
+	    }
 	  addend -= sec->output_section->vma;
 	  break;
 
@@ -7347,31 +7386,22 @@
 		/* Fill in the .plt on VxWorks.  */
 		if (info->shared)
 		  {
-		    bfd_vma got_offset_hi = (got_offset >> 16)
-					    + ((got_offset & 0x8000) >> 15);
-
 		    bfd_put_32 (output_bfd,
-				plt_entry[0] | (got_offset_hi & 0xffff),
+				plt_entry[0] | PPC_HA (got_offset),
 				htab->plt->contents + ent->plt.offset + 0);
 		    bfd_put_32 (output_bfd,
-				plt_entry[1] | (got_offset & 0xffff),
+				plt_entry[1] | PPC_LO (got_offset),
 				htab->plt->contents + ent->plt.offset + 4);
 		  }
 		else
 		  {
-		    bfd_vma got_loc
-		      = (got_offset
-			 + htab->elf.hgot->root.u.def.value
-			 + htab->elf.hgot->root.u.def.section->output_offset
-			 + htab->elf.hgot->root.u.def.section->output_section->vma);
-		    bfd_vma got_loc_hi = (got_loc >> 16)
-					 + ((got_loc & 0x8000) >> 15);
+		    bfd_vma got_loc = got_offset + SYM_VAL (htab->elf.hgot);
 
 		    bfd_put_32 (output_bfd,
-				plt_entry[0] | (got_loc_hi & 0xffff),
+				plt_entry[0] | PPC_HA (got_loc),
 				htab->plt->contents + ent->plt.offset + 0);
 		    bfd_put_32 (output_bfd,
-				plt_entry[1] | (got_loc & 0xffff),
+				plt_entry[1] | PPC_LO (got_loc),
 				htab->plt->contents + ent->plt.offset + 4);
 		  }
 
@@ -7531,9 +7561,7 @@
 			 + ent->sec->output_section->vma
 			 + ent->sec->output_offset);
 		else if (htab->elf.hgot != NULL)
-		  got = (htab->elf.hgot->root.u.def.value
-			 + htab->elf.hgot->root.u.def.section->output_section->vma
-			 + htab->elf.hgot->root.u.def.section->output_offset);
+		  got = SYM_VAL (htab->elf.hgot);
 
 		plt -= got;
 
@@ -7599,9 +7627,7 @@
 	s = htab->relbss;
       BFD_ASSERT (s != NULL);
 
-      rela.r_offset = (h->root.u.def.value
-		       + h->root.u.def.section->output_section->vma
-		       + h->root.u.def.section->output_offset);
+      rela.r_offset = SYM_VAL (h);
       rela.r_info = ELF32_R_INFO (h->dynindx, R_PPC_COPY);
       rela.r_addend = 0;
       loc = s->contents + s->reloc_count++ * sizeof (Elf32_External_Rela);
@@ -7651,7 +7677,8 @@
   asection *splt;
   struct ppc_elf_link_hash_table *htab;
   bfd_vma got;
-  bfd * dynobj;
+  bfd *dynobj;
+  bfd_boolean ret = TRUE;
 
 #ifdef DEBUG
   fprintf (stderr, "ppc_elf_finish_dynamic_sections called\n");
@@ -7667,9 +7694,7 @@
 
   got = 0;
   if (htab->elf.hgot != NULL)
-    got = (htab->elf.hgot->root.u.def.value
-	   + htab->elf.hgot->root.u.def.section->output_section->vma
-	   + htab->elf.hgot->root.u.def.section->output_offset);
+    got = SYM_VAL (htab->elf.hgot);
 
   if (htab->elf.dynamic_sections_created)
     {
@@ -7729,21 +7754,41 @@
 	}
     }
 
-  /* Add a blrl instruction at _GLOBAL_OFFSET_TABLE_-4 so that a function can
-     easily find the address of the _GLOBAL_OFFSET_TABLE_.  */
   if (htab->got != NULL)
     {
-      unsigned char *p = htab->got->contents;
-      bfd_vma val;
+      if (htab->elf.hgot->root.u.def.section == htab->got
+	  || htab->elf.hgot->root.u.def.section == htab->sgotplt)
+	{
+	  unsigned char *p = htab->elf.hgot->root.u.def.section->contents;
 
-      p += htab->elf.hgot->root.u.def.value;
-      if (htab->plt_type == PLT_OLD)
-	bfd_put_32 (output_bfd, 0x4e800021 /* blrl */, p - 4);
+	  p += htab->elf.hgot->root.u.def.value;
+	  if (htab->plt_type == PLT_OLD)
+	    {
+	      /* Add a blrl instruction at _GLOBAL_OFFSET_TABLE_-4
+		 so that a function can easily find the address of
+		 _GLOBAL_OFFSET_TABLE_.  */
+	      BFD_ASSERT (htab->elf.hgot->root.u.def.value - 4
+			  < htab->elf.hgot->root.u.def.section->size);
+	      bfd_put_32 (output_bfd, 0x4e800021, p - 4);
+	    }
 
-      val = 0;
-      if (sdyn != NULL)
-	val = sdyn->output_section->vma + sdyn->output_offset;
-      bfd_put_32 (output_bfd, val, p);
+	  if (sdyn != NULL)
+	    {
+	      bfd_vma val = sdyn->output_section->vma + sdyn->output_offset;
+	      BFD_ASSERT (htab->elf.hgot->root.u.def.value
+			  < htab->elf.hgot->root.u.def.section->size);
+	      bfd_put_32 (output_bfd, val, p);
+	    }
+	}
+      else
+	{
+	  (*_bfd_error_handler) (_("%s not defined in linker created %s"),
+				 htab->elf.hgot->root.root.string,
+				 (htab->sgotplt != NULL
+				  ? htab->sgotplt->name : htab->got->name));
+	  bfd_set_error (bfd_error_bad_value);
+	  ret = FALSE;
+	}
 
       elf_section_data (htab->got->output_section)->this_hdr.sh_entsize = 4;
     }
@@ -7758,15 +7803,11 @@
 
       if (!info->shared)
 	{
-	  bfd_vma got_value =
-	    (htab->elf.hgot->root.u.def.section->output_section->vma
-	     + htab->elf.hgot->root.u.def.section->output_offset
-	     + htab->elf.hgot->root.u.def.value);
-	  bfd_vma got_hi = (got_value >> 16) + ((got_value & 0x8000) >> 15);
+	  bfd_vma got_value = SYM_VAL (htab->elf.hgot);
 
-	  bfd_put_32 (output_bfd, plt_entry[0] | (got_hi & 0xffff),
+	  bfd_put_32 (output_bfd, plt_entry[0] | PPC_HA (got_value),
 		      splt->contents +  0);
-	  bfd_put_32 (output_bfd, plt_entry[1] | (got_value & 0xffff),
+	  bfd_put_32 (output_bfd, plt_entry[1] | PPC_LO (got_value),
 		      splt->contents +  4);
 	}
       else
@@ -8031,7 +8072,7 @@
 	}
     }
 
-  return TRUE;
+  return ret;
 }
 
 #define TARGET_LITTLE_SYM	bfd_elf32_powerpcle_vec
diff --git a/bfd/elf32-sh-symbian.c b/bfd/elf32-sh-symbian.c
index cec0d03..25e3af9 100644
--- a/bfd/elf32-sh-symbian.c
+++ b/bfd/elf32-sh-symbian.c
@@ -392,10 +392,9 @@
 
 /* Scan a bfd for a .directive section, and if found process it.
    Returns TRUE upon success, FALSE otherwise.  */
-bfd_boolean bfd_elf32_sh_symbian_process_directives (struct bfd_link_info *info, bfd * abfd);
 
-bfd_boolean
-bfd_elf32_sh_symbian_process_directives (struct bfd_link_info *info, bfd * abfd)
+static bfd_boolean
+sh_symbian_process_directives (bfd *abfd, struct bfd_link_info *info)
 {
   bfd_boolean result = FALSE;
   bfd_byte *  contents;
@@ -617,18 +616,12 @@
 				  contents, relocs, local_syms, local_sections);
 }
 
-static bfd_boolean
-sh_symbian_check_directives (bfd *abfd, struct bfd_link_info *info)
-{
-  return bfd_elf32_sh_symbian_process_directives (info, abfd);
-}
-
 #define TARGET_LITTLE_SYM	bfd_elf32_shl_symbian_vec
 #define TARGET_LITTLE_NAME      "elf32-shl-symbian"
 
 #undef  elf_backend_relocate_section
 #define elf_backend_relocate_section	sh_symbian_relocate_section
 #undef  elf_backend_check_directives
-#define elf_backend_check_directives    sh_symbian_check_directives
+#define elf_backend_check_directives    sh_symbian_process_directives
 
 #include "elf32-target.h"
diff --git a/bfd/elf32-spu.c b/bfd/elf32-spu.c
index 17ff079..708ab24 100644
--- a/bfd/elf32-spu.c
+++ b/bfd/elf32-spu.c
@@ -3895,16 +3895,27 @@
    that need to be emitted.  */
 
 static unsigned int
-spu_elf_count_relocs (asection *sec, Elf_Internal_Rela *relocs)
+spu_elf_count_relocs (struct bfd_link_info *info, asection *sec)
 {
+  Elf_Internal_Rela *relocs;
   unsigned int count = 0;
-  Elf_Internal_Rela *relend = relocs + sec->reloc_count;
 
-  for (; relocs < relend; relocs++)
+  relocs = _bfd_elf_link_read_relocs (sec->owner, sec, NULL, NULL,
+				      info->keep_memory);
+  if (relocs != NULL)
     {
-      int r_type = ELF32_R_TYPE (relocs->r_info);
-      if (r_type == R_SPU_PPU32 || r_type == R_SPU_PPU64)
-	++count;
+      Elf_Internal_Rela *rel;
+      Elf_Internal_Rela *relend = relocs + sec->reloc_count;
+
+      for (rel = relocs; rel < relend; rel++)
+	{
+	  int r_type = ELF32_R_TYPE (rel->r_info);
+	  if (r_type == R_SPU_PPU32 || r_type == R_SPU_PPU64)
+	    ++count;
+	}
+
+      if (elf_section_data (sec)->relocs != relocs)
+	free (relocs);
     }
 
   return count;
@@ -4245,10 +4256,15 @@
 static int
 spu_elf_additional_program_headers (bfd *abfd, struct bfd_link_info *info)
 {
-  struct spu_link_hash_table *htab = spu_hash_table (info);
-  int extra = htab->num_overlays;
+  int extra = 0;
   asection *sec;
 
+  if (info != NULL)
+    {
+      struct spu_link_hash_table *htab = spu_hash_table (info);
+      extra = htab->num_overlays;
+    }
+
   if (extra)
     ++extra;
 
diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
index 3463efa..dadf42b 100644
--- a/bfd/elf32-xtensa.c
+++ b/bfd/elf32-xtensa.c
@@ -1087,8 +1087,13 @@
 	{
 	  if (is_plt)
 	    {
-	      h->plt.refcount += 1;
-	      h->needs_plt = 1;
+	      if (h->plt.refcount <= 0)
+		{
+		  h->needs_plt = 1;
+		  h->plt.refcount = 1;
+		}
+	      else
+		h->plt.refcount += 1;
 
 	      /* Keep track of the total PLT relocation count even if we
 		 don't yet know whether the dynamic sections will be
@@ -1102,7 +1107,12 @@
 		}
 	    }
 	  else if (is_got)
-	    h->got.refcount += 1;
+	    {
+	      if (h->got.refcount <= 0)
+		h->got.refcount = 1;
+	      else
+		h->got.refcount += 1;
+	    }
 
 	  if (is_tlsfunc)
 	    eh->tlsfunc_refcount += 1;
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 86fe3c3..9138371 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -92,7 +92,7 @@
 #define elf_backend_create_dynamic_sections   ppc64_elf_create_dynamic_sections
 #define elf_backend_copy_indirect_symbol      ppc64_elf_copy_indirect_symbol
 #define elf_backend_add_symbol_hook	      ppc64_elf_add_symbol_hook
-#define elf_backend_check_directives	      ppc64_elf_check_directives
+#define elf_backend_check_directives	      ppc64_elf_process_dot_syms
 #define elf_backend_as_needed_cleanup	      ppc64_elf_as_needed_cleanup
 #define elf_backend_archive_symbol_lookup     ppc64_elf_archive_symbol_lookup
 #define elf_backend_check_relocs	      ppc64_elf_check_relocs
@@ -3005,8 +3005,8 @@
 	}
 
       /* Get start of .glink stubs from DT_PPC64_GLINK.  */
-      dynamic = bfd_get_section_by_name (abfd, ".dynamic");
-      if (dynamic != NULL)
+      if (dyn_count != 0
+	  && (dynamic = bfd_get_section_by_name (abfd, ".dynamic")) != NULL)
 	{
 	  bfd_byte *dynbuf, *extdyn, *extdynend;
 	  size_t extdynsize;
@@ -3061,21 +3061,21 @@
 
 	  if (resolv_vma)
 	    size += sizeof (asymbol) + sizeof ("__glink_PLTresolve");
-	}
 
-      relplt = bfd_get_section_by_name (abfd, ".rela.plt");
-      if (glink != NULL && relplt != NULL)
-	{
-	  slurp_relocs = get_elf_backend_data (abfd)->s->slurp_reloc_table;
-	  if (! (*slurp_relocs) (abfd, relplt, dyn_syms, TRUE))
-	    goto free_contents_and_exit;
+	  relplt = bfd_get_section_by_name (abfd, ".rela.plt");
+	  if (relplt != NULL)
+	    {
+	      slurp_relocs = get_elf_backend_data (abfd)->s->slurp_reloc_table;
+	      if (! (*slurp_relocs) (abfd, relplt, dyn_syms, TRUE))
+		goto free_contents_and_exit;
 	
-	  plt_count = relplt->size / sizeof (Elf64_External_Rela);
-	  size += plt_count * sizeof (asymbol);
+	      plt_count = relplt->size / sizeof (Elf64_External_Rela);
+	      size += plt_count * sizeof (asymbol);
 
-	  p = relplt->relocation;
-	  for (i = 0; i < plt_count; i++, p++)
-	    size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt");
+	      p = relplt->relocation;
+	      for (i = 0; i < plt_count; i++, p++)
+		size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt");
+	    }
 	}
 
       s = *ret = bfd_malloc (size);
@@ -3620,7 +3620,7 @@
   /* Set on error.  */
   unsigned int stub_error:1;
 
-  /* Temp used by ppc64_elf_check_directives.  */
+  /* Temp used by ppc64_elf_process_dot_syms.  */
   unsigned int twiddled_syms:1;
 
   /* Incremented every time we size stubs.  */
@@ -4438,7 +4438,7 @@
 /* Process list of dot-symbols we made in link_hash_newfunc.  */
 
 static bfd_boolean
-ppc64_elf_check_directives (bfd *ibfd, struct bfd_link_info *info)
+ppc64_elf_process_dot_syms (bfd *ibfd, struct bfd_link_info *info)
 {
   struct ppc_link_hash_table *htab;
   struct ppc_link_hash_entry **p, *eh;
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 010c614..f2015ee 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -854,7 +854,7 @@
   int bind;
   bfd *oldbfd;
   bfd_boolean newdyn, olddyn, olddef, newdef, newdyncommon, olddyncommon;
-  bfd_boolean newweak, oldweak;
+  bfd_boolean newweak, oldweak, newfunc, oldfunc;
   const struct elf_backend_data *bed;
 
   *skip = FALSE;
@@ -972,6 +972,15 @@
 	    && h->root.type != bfd_link_hash_undefweak
 	    && h->root.type != bfd_link_hash_common);
 
+  /* NEWFUNC and OLDFUNC indicate whether the new or old symbol,
+     respectively, appear to be a function.  */
+
+  newfunc = (ELF_ST_TYPE (sym->st_info) != STT_NOTYPE
+	     && bed->is_function_type (ELF_ST_TYPE (sym->st_info)));
+
+  oldfunc = (h->type != STT_NOTYPE
+	     && bed->is_function_type (h->type));
+
   /* When we try to create a default indirect symbol from the dynamic
      definition with the default version, we skip it if its type and
      the type of existing regular definition mismatch.  We only do it
@@ -987,8 +996,7 @@
       && ELF_ST_TYPE (sym->st_info) != h->type
       && ELF_ST_TYPE (sym->st_info) != STT_NOTYPE
       && h->type != STT_NOTYPE
-      && !(bed->is_function_type (ELF_ST_TYPE (sym->st_info))
-	   && bed->is_function_type (h->type)))
+      && !(newfunc && oldfunc))
     {
       *skip = TRUE;
       return TRUE;
@@ -1180,8 +1188,7 @@
     oldweak = FALSE;
 
   /* Allow changes between different types of funciton symbol.  */
-  if (bed->is_function_type (ELF_ST_TYPE (sym->st_info))
-      && bed->is_function_type (h->type))
+  if (newfunc && oldfunc)
     *type_change_ok = TRUE;
 
   /* It's OK to change the type if either the existing symbol or the
@@ -1230,7 +1237,7 @@
       && (sec->flags & SEC_ALLOC) != 0
       && (sec->flags & SEC_LOAD) == 0
       && sym->st_size > 0
-      && !bed->is_function_type (ELF_ST_TYPE (sym->st_info)))
+      && !newfunc)
     newdyncommon = TRUE;
   else
     newdyncommon = FALSE;
@@ -1242,7 +1249,7 @@
       && (h->root.u.def.section->flags & SEC_ALLOC) != 0
       && (h->root.u.def.section->flags & SEC_LOAD) == 0
       && h->size > 0
-      && !bed->is_function_type (h->type))
+      && !oldfunc)
     olddyncommon = TRUE;
   else
     olddyncommon = FALSE;
@@ -1302,8 +1309,7 @@
       && newdef
       && (olddef
 	  || (h->root.type == bfd_link_hash_common
-	      && (newweak
-		  || bed->is_function_type (ELF_ST_TYPE (sym->st_info))))))
+	      && (newweak || newfunc))))
     {
       *override = TRUE;
       newdef = FALSE;
@@ -1357,8 +1363,7 @@
   if (!newdyn
       && (newdef
 	  || (bfd_is_com_section (sec)
-	      && (oldweak
-		  || bed->is_function_type (h->type))))
+	      && (oldweak || oldfunc)))
       && olddyn
       && olddef
       && h->def_dynamic)
@@ -1378,7 +1383,17 @@
 	 overriding a function.  */
 
       if (bfd_is_com_section (sec))
-	*type_change_ok = TRUE;
+	{
+	  if (oldfunc)
+	    {
+	      /* If a common symbol overrides a function, make sure
+		 that it isn't defined dynamically nor has type
+		 function.  */
+	      h->def_dynamic = 0;
+	      h->type = STT_NOTYPE;
+	    }
+	  *type_change_ok = TRUE;
+	}
 
       if ((*sym_hash)->root.type == bfd_link_hash_indirect)
 	flip = *sym_hash;
@@ -4656,8 +4671,9 @@
       free (sorted_sym_hash);
     }
 
-  if (bed->check_directives)
-    (*bed->check_directives) (abfd, info);
+  if (bed->check_directives
+      && !(*bed->check_directives) (abfd, info))
+    return FALSE;
 
   /* If this object is the same format as the output object, and it is
      not a shared library, then let the backend look through the
@@ -9046,6 +9062,63 @@
 	  continue;
 	}
 
+      if (finfo->info->relocatable
+	  && (o->flags & (SEC_LINKER_CREATED | SEC_GROUP)) == SEC_GROUP)
+	{
+	  /* Deal with the group signature symbol.  */
+	  struct bfd_elf_section_data *sec_data = elf_section_data (o);
+	  unsigned long symndx = sec_data->this_hdr.sh_info;
+	  asection *osec = o->output_section;
+
+	  if (symndx >= locsymcount
+	      || (elf_bad_symtab (input_bfd)
+		  && finfo->sections[symndx] == NULL))
+	    {
+	      struct elf_link_hash_entry *h = sym_hashes[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;
+	      /* Arrange for symbol to be output.  */
+	      h->indx = -2;
+	      elf_section_data (osec)->this_hdr.sh_info = -2;
+	    }
+	  else if (ELF_ST_TYPE (isymbuf[symndx].st_info) == STT_SECTION)
+	    {
+	      /* We'll use the output section target_index.  */
+	      asection *sec = finfo->sections[symndx]->output_section;
+	      elf_section_data (osec)->this_hdr.sh_info = sec->target_index;
+	    }
+	  else
+	    {
+	      if (finfo->indices[symndx] == -1)
+		{
+		  /* Otherwise output the local symbol now.  */
+		  Elf_Internal_Sym sym = isymbuf[symndx];
+		  asection *sec = finfo->sections[symndx]->output_section;
+		  const char *name;
+
+		  name = bfd_elf_string_from_elf_section (input_bfd,
+							  symtab_hdr->sh_link,
+							  sym.st_name);
+		  if (name == NULL)
+		    return FALSE;
+
+		  sym.st_shndx = _bfd_elf_section_from_bfd_section (output_bfd,
+								    sec);
+		  if (sym.st_shndx == SHN_BAD)
+		    return FALSE;
+
+		  sym.st_value += o->output_offset;
+
+		  finfo->indices[symndx] = bfd_get_symcount (output_bfd);
+		  if (! elf_link_output_sym (finfo, name, &sym, o, NULL))
+		    return FALSE;
+		}
+	      elf_section_data (osec)->this_hdr.sh_info
+		= finfo->indices[symndx];
+	    }
+	}
+
       if ((o->flags & SEC_HAS_CONTENTS) == 0
 	  || (o->size == 0 && (o->flags & SEC_RELOC) == 0))
 	continue;
@@ -10022,22 +10095,7 @@
 	      if (info->relocatable || info->emitrelocations)
 		reloc_count = sec->reloc_count;
 	      else if (bed->elf_backend_count_relocs)
-		{
-		  Elf_Internal_Rela * relocs;
-
-		  relocs = _bfd_elf_link_read_relocs (sec->owner, sec,
-						      NULL, NULL,
-						      info->keep_memory);
-
-		  if (relocs != NULL)
-		    {
-		      reloc_count
-			= (*bed->elf_backend_count_relocs) (sec, relocs);
-
-		      if (elf_section_data (sec)->relocs != relocs)
-			free (relocs);
-		    }
-		}
+		reloc_count = (*bed->elf_backend_count_relocs) (info, sec);
 
 	      if (sec->rawsize > max_contents_size)
 		max_contents_size = sec->rawsize;
@@ -10683,16 +10741,16 @@
 		    && (h->root.type == bfd_link_hash_defined
 			|| h->root.type == bfd_link_hash_defweak))
 		  {
-		    dyn.d_un.d_val = h->root.u.def.value;
+		    dyn.d_un.d_ptr = h->root.u.def.value;
 		    o = h->root.u.def.section;
 		    if (o->output_section != NULL)
-		      dyn.d_un.d_val += (o->output_section->vma
+		      dyn.d_un.d_ptr += (o->output_section->vma
 					 + o->output_offset);
 		    else
 		      {
 			/* The symbol is imported from another shared
 			   library and does not apply to this one.  */
-			dyn.d_un.d_val = 0;
+			dyn.d_un.d_ptr = 0;
 		      }
 		    break;
 		  }
@@ -10771,6 +10829,7 @@
 	      else
 		type = SHT_RELA;
 	      dyn.d_un.d_val = 0;
+	      dyn.d_un.d_ptr = 0;
 	      for (i = 1; i < elf_numsections (abfd); i++)
 		{
 		  Elf_Internal_Shdr *hdr;
@@ -10783,9 +10842,9 @@
 			dyn.d_un.d_val += hdr->sh_size;
 		      else
 			{
-			  if (dyn.d_un.d_val == 0
-			      || hdr->sh_addr < dyn.d_un.d_val)
-			    dyn.d_un.d_val = hdr->sh_addr;
+			  if (dyn.d_un.d_ptr == 0
+			      || hdr->sh_addr < dyn.d_un.d_ptr)
+			    dyn.d_un.d_ptr = hdr->sh_addr;
 			}
 		    }
 		}
@@ -11982,8 +12041,21 @@
   return ret;
 }
 
+/* For a SHT_GROUP section, return the group signature.  For other
+   sections, return the normal section name.  */
+
+static const char *
+section_signature (asection *sec)
+{
+  if ((sec->flags & SEC_GROUP) != 0
+      && elf_next_in_group (sec) != NULL
+      && elf_group_name (elf_next_in_group (sec)) != NULL)
+    return elf_group_name (elf_next_in_group (sec));
+  return sec->name;
+}
+
 void
-_bfd_elf_section_already_linked (bfd *abfd, struct bfd_section *sec,
+_bfd_elf_section_already_linked (bfd *abfd, asection *sec,
 				 struct bfd_link_info *info)
 {
   flagword flags;
@@ -12023,7 +12095,7 @@
      causes trouble for MIPS ELF, which relies on link once semantics
      to handle the .reginfo section correctly.  */
 
-  name = bfd_get_section_name (abfd, sec);
+  name = section_signature (sec);
 
   if (CONST_STRNEQ (name, ".gnu.linkonce.")
       && (p = strchr (name + sizeof (".gnu.linkonce.") - 1, '.')) != NULL)
@@ -12038,7 +12110,7 @@
       /* We may have 2 different types of sections on the list: group
 	 sections and linkonce sections.  Match like sections.  */
       if ((flags & SEC_GROUP) == (l->sec->flags & SEC_GROUP)
-	  && strcmp (name, l->sec->name) == 0
+	  && strcmp (name, section_signature (l->sec)) == 0
 	  && bfd_coff_get_comdat_section (l->sec->owner, l->sec) == NULL)
 	{
 	  /* The section has already been linked.  See if we should
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 43a46046..b49593b 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -1409,7 +1409,8 @@
    function, or 0 if we can't decide which function that is.  */
 
 static unsigned long
-mips16_stub_symndx (asection *sec, const Elf_Internal_Rela *relocs,
+mips16_stub_symndx (asection *sec ATTRIBUTE_UNUSED,
+		    const Elf_Internal_Rela *relocs,
 		    const Elf_Internal_Rela *relend)
 {
   const Elf_Internal_Rela *rel;
diff --git a/bfd/libbfd.h b/bfd/libbfd.h
index eb84d58..1707b06 100644
--- a/bfd/libbfd.h
+++ b/bfd/libbfd.h
@@ -1890,6 +1890,17 @@
   "BFD_RELOC_CRIS_32_GOTREL",
   "BFD_RELOC_CRIS_32_PLT_GOTREL",
   "BFD_RELOC_CRIS_32_PLT_PCREL",
+  "BFD_RELOC_CRIS_32_GOT_GD",
+  "BFD_RELOC_CRIS_16_GOT_GD",
+  "BFD_RELOC_CRIS_32_GD",
+  "BFD_RELOC_CRIS_DTP",
+  "BFD_RELOC_CRIS_32_DTPREL",
+  "BFD_RELOC_CRIS_16_DTPREL",
+  "BFD_RELOC_CRIS_32_GOT_TPREL",
+  "BFD_RELOC_CRIS_16_GOT_TPREL",
+  "BFD_RELOC_CRIS_32_TPREL",
+  "BFD_RELOC_CRIS_16_TPREL",
+  "BFD_RELOC_CRIS_DTPMOD",
   "BFD_RELOC_860_COPY",
   "BFD_RELOC_860_GLOB_DAT",
   "BFD_RELOC_860_JUMP_SLOT",
diff --git a/bfd/linker.c b/bfd/linker.c
index baf280c..5080d7d 100644
--- a/bfd/linker.c
+++ b/bfd/linker.c
@@ -2796,18 +2796,36 @@
 	}
     }
 
-  /* Get and relocate the section contents.  */
-  sec_size = (input_section->rawsize > input_section->size
-	      ? input_section->rawsize
-	      : input_section->size);
-  contents = bfd_malloc (sec_size);
-  if (contents == NULL && sec_size != 0)
-    goto error_return;
-  new_contents = (bfd_get_relocated_section_contents
-		  (output_bfd, info, link_order, contents, info->relocatable,
-		   _bfd_generic_link_get_symbols (input_bfd)));
-  if (!new_contents)
-    goto error_return;
+  if ((output_section->flags & (SEC_GROUP | SEC_LINKER_CREATED)) == SEC_GROUP
+      && input_section->size != 0)
+    {
+      /* Group section contents are set by bfd_elf_set_group_contents.  */
+      if (!output_bfd->output_has_begun)
+	{
+	  /* FIXME: This hack ensures bfd_elf_set_group_contents is called.  */
+	  if (!bfd_set_section_contents (output_bfd, output_section, "", 0, 1))
+	    goto error_return;
+	}
+      new_contents = output_section->contents;
+      BFD_ASSERT (new_contents != NULL);
+      BFD_ASSERT (input_section->output_offset == 0);
+    }
+  else
+    {
+      /* Get and relocate the section contents.  */
+      sec_size = (input_section->rawsize > input_section->size
+		  ? input_section->rawsize
+		  : input_section->size);
+      contents = bfd_malloc (sec_size);
+      if (contents == NULL && sec_size != 0)
+	goto error_return;
+      new_contents = (bfd_get_relocated_section_contents
+		      (output_bfd, info, link_order, contents,
+		       info->relocatable,
+		       _bfd_generic_link_get_symbols (input_bfd)));
+      if (!new_contents)
+	goto error_return;
+    }
 
   /* Output the section contents.  */
   loc = input_section->output_offset * bfd_octets_per_byte (output_bfd);
diff --git a/bfd/po/id.po b/bfd/po/id.po
new file mode 100644
index 0000000..31a7017
--- /dev/null
+++ b/bfd/po/id.po
@@ -0,0 +1,3837 @@
+# Pesan Bahasa Indonesia untuk BFD
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: bfd 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-10-08 07:45+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: aout-adobe.c:127
+msgid "%B: Unknown section type in a.out.adobe file: %x\n"
+msgstr "%B: Tipe bagian tidak diketahui dalam berkas a.out.adobe: %x\n"
+
+#: aout-cris.c:204
+#, c-format
+msgid "%s: Invalid relocation type exported: %d"
+msgstr "%s: Tipe relokasi tidak valid terekspor: %d"
+
+#: aout-cris.c:247
+msgid "%B: Invalid relocation type imported: %d"
+msgstr "%B: Tipe relokasi tidak valid terimpor: %d"
+
+#: aout-cris.c:258
+msgid "%B: Bad relocation record imported: %d"
+msgstr "%B: Catatan relokasi buruk terimpor: %d"
+
+#: aoutx.h:1268 aoutx.h:1604
+#, c-format
+msgid "%s: can not represent section `%s' in a.out object file format"
+msgstr "%s: tidak dapat merepresentasikan bagian `%s' dalam a.out objek format berkas"
+
+#: aoutx.h:1570
+#, c-format
+msgid "%s: can not represent section for symbol `%s' in a.out object file format"
+msgstr "%s: tidak dapat merepresentasikan bagian untuk simbol `%s' dalam format berkas a.out objek"
+
+#: aoutx.h:1572
+msgid "*unknown*"
+msgstr "*tidak diketahui*"
+
+#: aoutx.h:3989 aoutx.h:4315
+msgid "%P: %B: unexpected relocation type\n"
+msgstr "%P: %B: tipe relokasi tidak diduga\n"
+
+#: aoutx.h:5349
+#, c-format
+msgid "%s: relocatable link from %s to %s not supported"
+msgstr "%s: link relokasi dari %s ke %s tidak didukung"
+
+#: archive.c:2046
+msgid "Warning: writing archive was slow: rewriting timestamp\n"
+msgstr "Peringatan: penulisan archive lambat: menulis ulang timestamp\n"
+
+#: archive.c:2309
+msgid "Reading archive file mod timestamp"
+msgstr "Membaca berkas mod timestamp archive"
+
+#: archive.c:2333
+msgid "Writing updated armap timestamp"
+msgstr "Menulis armap timestamp terupdate"
+
+#: bfd.c:368
+msgid "No error"
+msgstr "Tidak error"
+
+#: bfd.c:369
+msgid "System call error"
+msgstr "Pemanggilan sistem error"
+
+#: bfd.c:370
+msgid "Invalid bfd target"
+msgstr "Target bfd tidak valid"
+
+#: bfd.c:371
+msgid "File in wrong format"
+msgstr "Berkas dalam format salah"
+
+#: bfd.c:372
+msgid "Archive object file in wrong format"
+msgstr "Archive berkas objek dalam format salah"
+
+#: bfd.c:373
+msgid "Invalid operation"
+msgstr "Operasi tidak valid"
+
+#: bfd.c:374
+msgid "Memory exhausted"
+msgstr "Kehabisan memori"
+
+#: bfd.c:375
+msgid "No symbols"
+msgstr "Bukan simbol"
+
+#: bfd.c:376
+msgid "Archive has no index; run ranlib to add one"
+msgstr "Archive tidak memiliki indek; jalankan ranlib untuk menambahkan satu"
+
+#: bfd.c:377
+msgid "No more archived files"
+msgstr "Tidak lagi berkas yang ter-archive"
+
+#: bfd.c:378
+msgid "Malformed archive"
+msgstr "Archive tidak terformat"
+
+#: bfd.c:379
+msgid "File format not recognized"
+msgstr "Berkas format tidak dikenal"
+
+#: bfd.c:380
+msgid "File format is ambiguous"
+msgstr "Berkas format ambigu"
+
+#: bfd.c:381
+msgid "Section has no contents"
+msgstr "Bagian tidak memiliki isi"
+
+#: bfd.c:382
+msgid "Nonrepresentable section on output"
+msgstr "Bagian tidak dapat direpresentasikan di keluaran"
+
+#: bfd.c:383
+msgid "Symbol needs debug section which does not exist"
+msgstr "Simbol membutuhkan bagian debug yang mana bagian tersebut tidak ada"
+
+#: bfd.c:384
+msgid "Bad value"
+msgstr "Nilai buruk"
+
+#: bfd.c:385
+msgid "File truncated"
+msgstr "Berkas terpotong"
+
+#: bfd.c:386
+msgid "File too big"
+msgstr "Berkas terlalu besar"
+
+#: bfd.c:387
+#, c-format
+msgid "Error reading %s: %s"
+msgstr "Error membaca %s: %s"
+
+#: bfd.c:388
+msgid "#<Invalid error code>"
+msgstr "#<Kode error tidak valid>"
+
+#: bfd.c:912
+#, c-format
+msgid "BFD %s assertion fail %s:%d"
+msgstr "BFD %s assertion gagal %s:%d"
+
+#: bfd.c:924
+#, c-format
+msgid "BFD %s internal error, aborting at %s line %d in %s\n"
+msgstr "BFD %s error internal, menggagalkan di %s baris %d dalam %s\n"
+
+#: bfd.c:928
+#, c-format
+msgid "BFD %s internal error, aborting at %s line %d\n"
+msgstr "BFD %s error internal, menggagalkan di %s baris %d\n"
+
+#: bfd.c:930
+msgid "Please report this bug.\n"
+msgstr "Tolong laporkan bug ini.\n"
+
+#: bfdwin.c:208
+#, c-format
+msgid "not mapping: data=%lx mapped=%d\n"
+msgstr "tidak termap: data=%lx mapped=%d\n"
+
+#: bfdwin.c:211
+#, c-format
+msgid "not mapping: env var not set\n"
+msgstr "tidak termap; env var tidak terset\n"
+
+#: binary.c:284
+#, c-format
+msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx."
+msgstr "Peringatan: Menulis bagian `%s' terlalu besar (ie negatif) berkas ofset 0x%lx."
+
+#: cache.c:222
+msgid "reopening %B: %s\n"
+msgstr "membuka kembali %B: %s\n"
+
+#: coff-alpha.c:490
+msgid ""
+"%B: Cannot handle compressed Alpha binaries.\n"
+"   Use compiler flags, or objZ, to generate uncompressed binaries."
+msgstr ""
+"%B: Tidak dapat menangani binari yang dikompres Alpha.\n"
+"   Menggunakan tanda kompiler, atau objZ, untuk menghasilkan binari tidak terkompres."
+
+#: coff-alpha.c:647
+msgid "%B: unknown/unsupported relocation type %d"
+msgstr "%B; tidak diketahui/tidak didukung tipe relokasi %d"
+
+#: coff-alpha.c:899 coff-alpha.c:936 coff-alpha.c:2024 coff-mips.c:1003
+msgid "GP relative relocation used when GP not defined"
+msgstr "GP relatif relokasi digunakan ketika GP tidak didefinisikan"
+
+#: coff-alpha.c:1501
+msgid "using multiple gp values"
+msgstr "menggunakan nilai gp multiple"
+
+#: coff-alpha.c:1560
+msgid "%B: unsupported relocation: ALPHA_R_GPRELHIGH"
+msgstr "%B: relokasi tidak didukung: ALPHA_R_GPRELHIGH"
+
+#: coff-alpha.c:1567
+msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW"
+msgstr "%B: relokasi tidak didukung: ALPHA_R_GPRELLOW"
+
+#: coff-alpha.c:1574 elf32-m32r.c:2487 elf64-alpha.c:3970 elf64-alpha.c:4125
+#: elf32-ia64.c:4465 elf64-ia64.c:4465
+msgid "%B: unknown relocation type %d"
+msgstr "%B: tipe relokasi %d tidak diketahui"
+
+#: coff-arm.c:1039
+#, c-format
+msgid "%B: unable to find THUMB glue '%s' for `%s'"
+msgstr "%B: tidak dapat menemukan lem THUMB '%s' untuk `%s'"
+
+#: coff-arm.c:1068
+#, c-format
+msgid "%B: unable to find ARM glue '%s' for `%s'"
+msgstr "%B: tidak dapat menemukan lem ARM '%s' untuk `%s'"
+
+#: coff-arm.c:1370 elf32-arm.c:5453
+#, c-format
+msgid ""
+"%B(%s): warning: interworking not enabled.\n"
+"  first occurrence: %B: arm call to thumb"
+msgstr ""
+"%B(%s): peringatan: antar-kerja tidak diaktifkan.\n"
+"  pertemuan pertama: %B: arm panggil ke thumb"
+
+#: coff-arm.c:1460
+#, c-format
+msgid ""
+"%B(%s): warning: interworking not enabled.\n"
+"  first occurrence: %B: thumb call to arm\n"
+"  consider relinking with --support-old-code enabled"
+msgstr ""
+"%B(%s): peringatan: antar-kerja tidak diaktifkan.\n"
+"  pertemuan pertama: %B: panggilan thumb ke arm\n"
+"  pertimbangkan relinking dengan --support-old-code aktif"
+
+#: coff-arm.c:1755 coff-tic80.c:695 cofflink.c:3018
+msgid "%B: bad reloc address 0x%lx in section `%A'"
+msgstr "%B: alamat relokasi buruk 0x%lx dalam bagian `%A'"
+
+#: coff-arm.c:2080
+msgid "%B: illegal symbol index in reloc: %d"
+msgstr "%B: indek simbol ilegal dalam relokasi: %d"
+
+#: coff-arm.c:2211
+#, c-format
+msgid "ERROR: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"
+msgstr "ERROR: %B dikompile untuk APCS-%d, dimana %B dikompile untuk APCS-%d"
+
+#: coff-arm.c:2227 elf32-arm.c:8563
+#, c-format
+msgid "ERROR: %B passes floats in float registers, whereas %B passes them in integer registers"
+msgstr "ERROR: %B melewati float dalam register float, dimana %B melewatinya register integer"
+
+#: coff-arm.c:2230 elf32-arm.c:8567
+#, c-format
+msgid "ERROR: %B passes floats in integer registers, whereas %B passes them in float registers"
+msgstr "ERROR: %B melewati float dalam register integer, dimana %B melewatinya float register"
+
+#: coff-arm.c:2244
+#, c-format
+msgid "ERROR: %B is compiled as position independent code, whereas target %B is absolute position"
+msgstr "ERROR: %B dikompile sebagai kode bebas posisi, dimana target %B yang memiliki posisi absolute"
+
+#: coff-arm.c:2247
+#, c-format
+msgid "ERROR: %B is compiled as absolute position code, whereas target %B is position independent"
+msgstr "ERROR: %B dikompile sebagai kode absolute posisi, dimana target %B adalah bebas posisi"
+
+#: coff-arm.c:2275 elf32-arm.c:8632
+#, c-format
+msgid "Warning: %B supports interworking, whereas %B does not"
+msgstr "Peringatan: %B  mendukung antar-kerja, dimana %B tidak"
+
+#: coff-arm.c:2278 elf32-arm.c:8638
+#, c-format
+msgid "Warning: %B does not support interworking, whereas %B does"
+msgstr "Peringatan: %B tidak mendukung antar-kerja, dimana %B ya"
+
+#: coff-arm.c:2302
+#, c-format
+msgid "private flags = %x:"
+msgstr "tanda private = %x:"
+
+#: coff-arm.c:2310 elf32-arm.c:8689
+#, c-format
+msgid " [floats passed in float registers]"
+msgstr " [floats melewati dalam register float]"
+
+#: coff-arm.c:2312
+#, c-format
+msgid " [floats passed in integer registers]"
+msgstr " [float melewati register integer]"
+
+#: coff-arm.c:2315 elf32-arm.c:8692
+#, c-format
+msgid " [position independent]"
+msgstr " [bebas posisi]"
+
+#: coff-arm.c:2317
+#, c-format
+msgid " [absolute position]"
+msgstr " [absolute posisi]"
+
+#: coff-arm.c:2321
+#, c-format
+msgid " [interworking flag not initialised]"
+msgstr " [tanda antar-kerja tidak terinisialisasi]"
+
+#: coff-arm.c:2323
+#, c-format
+msgid " [interworking supported]"
+msgstr " [antar-kerja didukung]"
+
+#: coff-arm.c:2325
+#, c-format
+msgid " [interworking not supported]"
+msgstr " [antar-kerja tidak didukung]"
+
+#: coff-arm.c:2371 elf32-arm.c:8050
+#, c-format
+msgid "Warning: Not setting interworking flag of %B since it has already been specified as non-interworking"
+msgstr "Peringatan: Tidak menset tanda antar-kerja dari %B karena itu telah terspesifikasi sebagai bukan-antar-kerja"
+
+#: coff-arm.c:2375 elf32-arm.c:8054
+#, c-format
+msgid "Warning: Clearing the interworking flag of %B due to outside request"
+msgstr "Peringatan: Menghapus tanda antar-kerja dari %B karena diluar permintaan"
+
+#: coff-h8300.c:1122
+#, c-format
+msgid "cannot handle R_MEM_INDIRECT reloc when using %s output"
+msgstr "tidak dapat menangani R_MEM_INDIRECT relokasi ketika menggunakan keluaran %s"
+
+#: coff-i860.c:147
+#, c-format
+msgid "Relocation `%s' not yet implemented\n"
+msgstr "Relokasi `%s' belum terimplementasi\n"
+
+#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:4975
+msgid "%B: warning: illegal symbol index %ld in relocs"
+msgstr "%B: peringatan: indek simbol ilegal %ld dalam relokasi"
+
+#: coff-i960.c:143 coff-i960.c:506
+msgid "uncertain calling convention for non-COFF symbol"
+msgstr "tidak tentu pemanggilan konvensi untuk non-COFF simbol"
+
+#: coff-m68k.c:506 elf32-bfin.c:5510 elf32-m68k.c:3938
+msgid "unsupported reloc type"
+msgstr "tipe relokasi tidak didukung"
+
+#: coff-maxq.c:126
+msgid "Can't Make it a Short Jump"
+msgstr "Tidak dapat membuka ini sebuah lompatan pendek"
+
+#: coff-maxq.c:191
+msgid "Exceeds Long Jump Range"
+msgstr "Melewati jangkauan lompatan panjang"
+
+#: coff-maxq.c:202 coff-maxq.c:276
+msgid "Absolute address Exceeds 16 bit Range"
+msgstr "Alamat absolut melewati jangkauan 16 bit"
+
+#: coff-maxq.c:240
+msgid "Absolute address Exceeds 8 bit Range"
+msgstr "Alamat absolute melewati jangkauan 8 bit"
+
+#: coff-maxq.c:333
+msgid "Unrecognized Reloc Type"
+msgstr "Tipe relokasi tidak dikenal"
+
+#: coff-mips.c:688 elf32-mips.c:1014 elf32-score.c:345 elf64-mips.c:1991
+#: elfn32-mips.c:1832
+msgid "GP relative relocation when _gp not defined"
+msgstr "GP relokasi relatif ketika _gp tidak terdefinisi"
+
+#: coff-or32.c:229
+msgid "Unrecognized reloc"
+msgstr "Relokasi tidak dikenal"
+
+#: coff-rs6000.c:2803
+#, c-format
+msgid "%s: unsupported relocation type 0x%02x"
+msgstr "%s: tipe relokasi tidak didukung 0x%02x"
+
+#: coff-rs6000.c:2896
+#, c-format
+msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry"
+msgstr "%s: TOC relokasi di 0x%x untuk simbol `%s' dengan tidak ada masukan TOC"
+
+#: coff-rs6000.c:3628 coff64-rs6000.c:2130
+msgid "%B: symbol `%s' has unrecognized smclas %d"
+msgstr "%B: simbol `%s' memiliki smclas tidak dikenal %d"
+
+#: coff-tic4x.c:195 coff-tic54x.c:299 coff-tic80.c:458
+#, c-format
+msgid "Unrecognized reloc type 0x%x"
+msgstr "Tipe relokasi tidak dikenal 0x%x"
+
+#: coff-tic4x.c:240
+#, c-format
+msgid "%s: warning: illegal symbol index %ld in relocs"
+msgstr "%s: peringatan: indek simbol ilegal %ld dalam relokasi"
+
+#: coff-w65.c:367
+#, c-format
+msgid "ignoring reloc %s\n"
+msgstr "mengabaikan relokasi %s\n"
+
+#: coffcode.h:850
+msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'"
+msgstr "%B: peringatan: COMDAT simbol '%s' tidak cocok dengan nama bagian '%s'"
+
+#. Generate a warning message rather using the 'unhandled'
+#. variable as this will allow some .sys files generate by
+#. other toolchains to be processed.  See bugzilla issue 196.
+#: coffcode.h:1062
+msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"
+msgstr "%B: Peringatan: Mengabaikan tanda bagian IMAGE_SCN_MEM_NOT_PAGED dalam bagian %s"
+
+#: coffcode.h:1117
+msgid "%B (%s): Section flag %s (0x%x) ignored"
+msgstr "%B (%s): Tanda bagian %s (0x%x) diabaikan"
+
+#: coffcode.h:2244
+#, c-format
+msgid "Unrecognized TI COFF target id '0x%x'"
+msgstr "Target id '0x%x' TI COFF tidak dikenal"
+
+#: coffcode.h:2559
+msgid "%B: reloc against a non-existant symbol index: %ld"
+msgstr "%B: relokasi terhadap simbol indek yang tidak ada: %ld"
+
+#: coffcode.h:4309
+msgid "%B: warning: line number table read failed"
+msgstr "%B: peringatan: pembacaan tabel nomor baris gagal"
+
+#: coffcode.h:4339
+msgid "%B: warning: illegal symbol index %ld in line numbers"
+msgstr "%B: peringatan: simbol index %ld ilegal dalam nomor baris"
+
+#: coffcode.h:4353
+msgid "%B: warning: duplicate line number information for `%s'"
+msgstr "%B: peringatan: duplikasi informasi nomor baris untuk `%s'"
+
+#: coffcode.h:4744
+msgid "%B: Unrecognized storage class %d for %s symbol `%s'"
+msgstr "%B: kelas %d penyimpanan tidak dikenal untuk %s simbol `%s'"
+
+#: coffcode.h:4870
+msgid "warning: %B: local symbol `%s' has no section"
+msgstr "peringatan: %B: simbol lokal `%s' tidak memiliki bagian"
+
+#: coffcode.h:5013
+msgid "%B: illegal relocation type %d at address 0x%lx"
+msgstr "%B: tipe relokasi %d ilegal di alamat 0x%lx"
+
+#: coffgen.c:1518
+msgid "%B: bad string table size %lu"
+msgstr "%B: string buruk ukuran tabel %lu"
+
+#: cofflink.c:513 elflink.c:4218
+msgid "Warning: type of symbol `%s' changed from %d to %d in %B"
+msgstr "Peringatan: tipe dari simbole `%s' berubah dari %d ke %d dalam %B"
+
+#: cofflink.c:2296
+msgid "%B: relocs in section `%A', but it has no contents"
+msgstr "%B: relokasi dalam bagian `%A', tetapi ini tidak memiliki isi"
+
+#: cofflink.c:2627 coffswap.h:824
+#, c-format
+msgid "%s: %s: reloc overflow: 0x%lx > 0xffff"
+msgstr "%s: %s: relokasi overflow: 0x%lx > 0xffff"
+
+#: cofflink.c:2636 coffswap.h:810
+#, c-format
+msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff"
+msgstr "%s: peringatan: %s: nomor baris overflow: 0x%lx > 0xffff"
+
+#: cpu-arm.c:189 cpu-arm.c:200
+msgid "ERROR: %B is compiled for the EP9312, whereas %B is compiled for XScale"
+msgstr "ERROR: %B dikompile untuk EP9312, dimana %B dikompile untuk XScale"
+
+#: cpu-arm.c:332
+#, c-format
+msgid "warning: unable to update contents of %s section in %s"
+msgstr "peringatan: tidak dapat mengupdate isi dari %s bagian dalam %s"
+
+#: dwarf2.c:424
+#, c-format
+msgid "Dwarf Error: Can't find %s section."
+msgstr "Dwarf Error: Tidak dapat menemukan bagian %s."
+
+#: dwarf2.c:452
+#, c-format
+msgid "Dwarf Error: unable to decompress %s section."
+msgstr "Dwarf Error: tidak dapat mengekstrak bagian %s."
+
+#: dwarf2.c:462
+#, c-format
+msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)."
+msgstr "Dwarf Error: Ofset (%lu) lebih besar atau sama dengan %s ukuran (%lu)."
+
+#: dwarf2.c:849
+#, c-format
+msgid "Dwarf Error: Invalid or unhandled FORM value: %u."
+msgstr "Dwarf Error: Tidak valid atau nilai FORM tidak tertangani: %u."
+
+#: dwarf2.c:1063
+msgid "Dwarf Error: mangled line number section (bad file number)."
+msgstr "Dwarf Error: mangled bagian nomor baris (nomor berkas buruk)."
+
+#: dwarf2.c:1393
+msgid "Dwarf Error: mangled line number section."
+msgstr "Dwarf Error: mangled bagian nomor baris."
+
+#: dwarf2.c:1726 dwarf2.c:1842 dwarf2.c:2114
+#, c-format
+msgid "Dwarf Error: Could not find abbrev number %u."
+msgstr "Dwarf Error: Tidak dapat menemukan nomor singkat %u."
+
+#: dwarf2.c:2075
+#, c-format
+msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2 information."
+msgstr "Dwarf Error: menemukan versi dwarf '%u', pembaca ini hanya menangani informasi versi 2."
+
+#: dwarf2.c:2082
+#, c-format
+msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'."
+msgstr "Dwarf Error: menemukan ukuran alamat '%u', pembaca ini tidak dapat menangani ukuran lebih besar dari '%u'."
+
+#: dwarf2.c:2105
+#, c-format
+msgid "Dwarf Error: Bad abbrev number: %u."
+msgstr "Dwarf Error: Nomor singkat buruk: %u."
+
+#: ecoff.c:1227
+#, c-format
+msgid "Unknown basic type %d"
+msgstr "Tipe dasar %d tidak diketahui"
+
+#: ecoff.c:1484
+#, c-format
+msgid ""
+"\n"
+"      End+1 symbol: %ld"
+msgstr ""
+"\n"
+"      Simbol End+1: %ld"
+
+#: ecoff.c:1491 ecoff.c:1494
+#, c-format
+msgid ""
+"\n"
+"      First symbol: %ld"
+msgstr ""
+"\n"
+"      Simbol pertama: %ld"
+
+#: ecoff.c:1506
+#, c-format
+msgid ""
+"\n"
+"      End+1 symbol: %-7ld   Type:  %s"
+msgstr ""
+"\n"
+"      Simbol End+1: %-7ld   Tipe:  %s"
+
+#: ecoff.c:1513
+#, c-format
+msgid ""
+"\n"
+"      Local symbol: %ld"
+msgstr ""
+"\n"
+"      Simbol lokal: %ld"
+
+#: ecoff.c:1521
+#, c-format
+msgid ""
+"\n"
+"      struct; End+1 symbol: %ld"
+msgstr ""
+"\n"
+"      struct; simbol End+1: %ld"
+
+#: ecoff.c:1526
+#, c-format
+msgid ""
+"\n"
+"      union; End+1 symbol: %ld"
+msgstr ""
+"\n"
+"      union: End+1 simbol: %ld"
+
+#: ecoff.c:1531
+#, c-format
+msgid ""
+"\n"
+"      enum; End+1 symbol: %ld"
+msgstr ""
+"\n"
+"      enum; End+1 simbol: %ld"
+
+#: ecoff.c:1537
+#, c-format
+msgid ""
+"\n"
+"      Type: %s"
+msgstr ""
+"\n"
+"      Tipe: %s"
+
+#: elf-attrs.c:582
+msgid "ERROR: %B: Must be processed by '%s' toolchain"
+msgstr "ERROR: %B: Harus diproses dengan '%s' toolchain"
+
+#: elf-attrs.c:602 elf-attrs.c:621
+msgid "ERROR: %B: Incompatible object tag '%s':%d"
+msgstr "ERROR: %B: Tanda objek tidak kompatibel '%s':%d"
+
+#: elf-eh-frame.c:866
+msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"
+msgstr "%P: error dalam %B(%A); tidak ada .eh_frame_hdr tabel yang akan dibuat.\n"
+
+#: elf-eh-frame.c:1102
+msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n"
+msgstr "%P: fde enkoding dalam %B(%A) menjaga .eh_frame_hdr tabel untuk dibuat.\n"
+
+#: elf-hppa.h:2241 elf-m10300.c:1546 elf32-arm.c:7954 elf32-i386.c:3582
+#: elf32-m32r.c:2598 elf32-m68k.c:3516 elf32-ppc.c:7223 elf32-s390.c:3058
+#: elf32-sh.c:3438 elf32-xtensa.c:3021 elf64-ppc.c:11528 elf64-s390.c:3019
+#: elf64-sh64.c:1648 elf64-x86-64.c:3239 elfxx-sparc.c:3336
+msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"
+msgstr "%B(%A+0x%lx): tidak teresolf %s relokasi terhadap simbol `%s'"
+
+#: elf-hppa.h:2266 elf-hppa.h:2280
+msgid "%B(%A): warning: unresolvable relocation against symbol `%s'"
+msgstr "%B(%A): peringatan: tidak teresolf relokasi terhadap simbol `%s'"
+
+#: elf-m10200.c:456 elf-m10300.c:1609 elf32-avr.c:1250 elf32-bfin.c:3214
+#: elf32-cr16.c:959 elf32-cr16c.c:790 elf32-cris.c:1538 elf32-crx.c:933
+#: elf32-d10v.c:516 elf32-fr30.c:616 elf32-frv.c:4114 elf32-h8300.c:516
+#: elf32-i860.c:1218 elf32-ip2k.c:1499 elf32-iq2000.c:691 elf32-m32c.c:560
+#: elf32-m32r.c:3124 elf32-m68hc1x.c:1135 elf32-mep.c:541 elf32-msp430.c:493
+#: elf32-mt.c:402 elf32-openrisc.c:411 elf32-score.c:2451 elf32-spu.c:4132
+#: elf32-v850.c:1703 elf32-xstormy16.c:948 elf64-mmix.c:1533
+msgid "internal error: out of range error"
+msgstr "internal error: diluar jangkauan error"
+
+#: elf-m10200.c:460 elf-m10300.c:1613 elf32-avr.c:1254 elf32-bfin.c:3218
+#: elf32-cr16.c:963 elf32-cr16c.c:794 elf32-cris.c:1542 elf32-crx.c:937
+#: elf32-d10v.c:520 elf32-fr30.c:620 elf32-frv.c:4118 elf32-h8300.c:520
+#: elf32-i860.c:1222 elf32-iq2000.c:695 elf32-m32c.c:564 elf32-m32r.c:3128
+#: elf32-m68hc1x.c:1139 elf32-mep.c:545 elf32-msp430.c:497
+#: elf32-openrisc.c:415 elf32-score.c:2455 elf32-spu.c:4136 elf32-v850.c:1707
+#: elf32-xstormy16.c:952 elf64-mmix.c:1537 elfxx-mips.c:9065
+msgid "internal error: unsupported relocation error"
+msgstr "internal error: relokasi tidak didukung error"
+
+#: elf-m10200.c:464 elf32-cr16.c:967 elf32-cr16c.c:798 elf32-crx.c:941
+#: elf32-d10v.c:524 elf32-h8300.c:524 elf32-m32r.c:3132 elf32-m68hc1x.c:1143
+#: elf32-score.c:2459 elf32-spu.c:4140
+msgid "internal error: dangerous error"
+msgstr "internal error error berbahaya"
+
+#: elf-m10200.c:468 elf-m10300.c:1626 elf32-avr.c:1262 elf32-bfin.c:3226
+#: elf32-cr16.c:971 elf32-cr16c.c:802 elf32-cris.c:1550 elf32-crx.c:945
+#: elf32-d10v.c:528 elf32-fr30.c:628 elf32-frv.c:4126 elf32-h8300.c:528
+#: elf32-i860.c:1230 elf32-ip2k.c:1514 elf32-iq2000.c:703 elf32-m32c.c:572
+#: elf32-m32r.c:3136 elf32-m68hc1x.c:1147 elf32-mep.c:553 elf32-msp430.c:505
+#: elf32-mt.c:410 elf32-openrisc.c:423 elf32-score.c:2463 elf32-spu.c:4144
+#: elf32-v850.c:1727 elf32-xstormy16.c:960 elf64-mmix.c:1545
+msgid "internal error: unknown error"
+msgstr "internal error: error tidak diketahui"
+
+#: elf-m10300.c:1618
+msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)"
+msgstr "error: tipe relokasi tidak sesuai untuk shared library (apakah anda lupa -fpic?)"
+
+#: elf-m10300.c:1621
+msgid "internal error: suspicious relocation type used in shared library"
+msgstr "internal erro: suspicious tipe relokasi digunakan dalam shared library"
+
+#: elf-m10300.c:4397 elf32-arm.c:9578 elf32-cris.c:2403 elf32-hppa.c:1921
+#: elf32-i370.c:506 elf32-i386.c:1807 elf32-m32r.c:1931 elf32-m68k.c:2787
+#: elf32-ppc.c:4693 elf32-s390.c:1687 elf32-sh.c:2583 elf32-vax.c:1055
+#: elf64-ppc.c:6075 elf64-s390.c:1662 elf64-sh64.c:3432 elf64-x86-64.c:1641
+#: elfxx-sparc.c:1828
+#, c-format
+msgid "dynamic variable `%s' is zero size"
+msgstr "variabel dinamik `%s' memiliki ukuran nol"
+
+#: elf.c:328
+msgid "%B: invalid string offset %u >= %lu for section `%s'"
+msgstr "%B: string ofset tidak valid %u >= %lu untuk bagian `%s'"
+
+#: elf.c:438
+msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section"
+msgstr "%B nomor simbol %lu referensi tidak ada SHT_SYMTAB_SHNDX bagian"
+
+#: elf.c:594
+msgid "%B: Corrupt size field in group section header: 0x%lx"
+msgstr "%B: Ukuran bagian korup dalam grup bagian kepala: 0x%lx"
+
+#: elf.c:630
+msgid "%B: invalid SHT_GROUP entry"
+msgstr "%B: masukan SHT_GROUP tidak valid"
+
+#: elf.c:700
+msgid "%B: no group info for section %A"
+msgstr "%B: tidak ada informasi grup untuk bagian %A"
+
+#: elf.c:729 elf.c:2976 elflink.c:9746
+msgid "%B: warning: sh_link not set for section `%A'"
+msgstr "%B: peringatan: sh_link tidak diset untuk bagian `%A'"
+
+#: elf.c:748
+msgid "%B: sh_link [%d] in section `%A' is incorrect"
+msgstr "%B: sh_link [%ld] dalam bagian `%A' tidak benar"
+
+#: elf.c:783
+msgid "%B: unknown [%d] section `%s' in group [%s]"
+msgstr "%B: tidak diketahui [%d] bagian `%s' dalam grup [%s]"
+
+#: elf.c:1159
+#, c-format
+msgid ""
+"\n"
+"Program Header:\n"
+msgstr ""
+"\n"
+"Kepala Aplikasi:\n"
+
+#: elf.c:1201
+#, c-format
+msgid ""
+"\n"
+"Dynamic Section:\n"
+msgstr ""
+"\n"
+"Bagian Dinamis:\n"
+
+#: elf.c:1337
+#, c-format
+msgid ""
+"\n"
+"Version definitions:\n"
+msgstr ""
+"\n"
+"Definisi Versi:\n"
+
+#: elf.c:1362
+#, c-format
+msgid ""
+"\n"
+"Version References:\n"
+msgstr ""
+"\n"
+"Referensi Versi:\n"
+
+#: elf.c:1367
+#, c-format
+msgid "  required from %s:\n"
+msgstr "  dibutuhkan dari %s:\n"
+
+#: elf.c:1755
+msgid "%B: invalid link %lu for reloc section %s (index %u)"
+msgstr "%B: link tidak valid %lu untuk bagian relokasi %s (indek %u)"
+
+#: elf.c:1924
+msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]"
+msgstr "%B: tidak tahu bagaimana menangani alokasi, bagian spesifik aplikasi `%s' [0x%8x]"
+
+#: elf.c:1936
+msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]"
+msgstr "%B: tidak tahu bagaimana menangani bagian spesifik prosesor `%s' [0x%8x]"
+
+#: elf.c:1947
+msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]"
+msgstr "%B: tidak tahu bagaimana menangani bagian spesifik OS `%s' [0x%8x]"
+
+#: elf.c:1957
+msgid "%B: don't know how to handle section `%s' [0x%8x]"
+msgstr "%B: tidak tahu bagaimana menangani bagian `%s' [0x%8x]"
+
+#: elf.c:2555
+#, c-format
+msgid "warning: section `%A' type changed to PROGBITS"
+msgstr "peringatan: bagian `%A' tipe berubah ke PROGBITS"
+
+#: elf.c:2933
+msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'"
+msgstr "%B: sh_link dari bagian `%A' menunjuk ke bagian terbuang `%A' dari `%B'"
+
+#: elf.c:2956
+msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'"
+msgstr "%B: sh_link dari bagian `%A' menunjuk ke bagian terhapus `%A' dari `%B'"
+
+#: elf.c:4300
+msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section"
+msgstr "%B: bagian pertama dalam segmen PT_DYNAMIC tidak dalam bagian .dynamic"
+
+#: elf.c:4327
+msgid "%B: Not enough room for program headers, try linking with -N"
+msgstr "%B: tidak cukup ruang untuk kepala aplikasi, coba linking dengan -N"
+
+#: elf.c:4404
+msgid "%B: section %A vma 0x%lx overlaps previous sections"
+msgstr "%B: bagian %A vma 0x%lx overlaps bagian sebelumnya"
+
+#: elf.c:4499
+msgid "%B: section `%A' can't be allocated in segment %d"
+msgstr "%B: bagian `%A' tidak dapat dialokasikan dalam segmen %d"
+
+#: elf.c:4549
+msgid "%B: warning: allocated section `%s' not in segment"
+msgstr "%B: peringatan: alokasi bagian `%s' tidak dalam segmen"
+
+#: elf.c:5064
+msgid "%B: symbol `%s' required but not present"
+msgstr "%B: simbol `%s' dibutuhkan tetapi tidak ada"
+
+#: elf.c:5403
+msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n"
+msgstr "%B: peringatan: loadable segmen kosong terdeteksi, apakah ini sengaja ?\n"
+
+#: elf.c:6366
+#, c-format
+msgid "Unable to find equivalent output section for symbol '%s' from section '%s'"
+msgstr "Tidak dapat menemukan bagian keluaran ekuivalen untuk simbol '%s' dari bagian '%s'"
+
+#: elf.c:7346
+msgid "%B: unsupported relocation type %s"
+msgstr "%B: tipe relokasi tidak didukung %s"
+
+#: elf32-arm.c:2846 elf32-arm.c:2878
+msgid ""
+"%B(%s): warning: interworking not enabled.\n"
+"  first occurrence: %B: Thumb call to ARM"
+msgstr ""
+"%B(%s): peringatan: antar-kerja tidak aktif.\n"
+"  pertemuan pertama: %B: Thumb call ke ARM"
+
+#: elf32-arm.c:3041
+#, c-format
+msgid "%s: cannot create stub entry %s"
+msgstr "%s: tidak dapat membuat masukan stub %s"
+
+#: elf32-arm.c:3825
+#, c-format
+msgid "unable to find THUMB glue '%s' for '%s'"
+msgstr "tidak dapat menemukan THUMB lem '%s' untuk '%s'"
+
+#: elf32-arm.c:3859
+#, c-format
+msgid "unable to find ARM glue '%s' for '%s'"
+msgstr "tidak dapat menemukan ARM lem '%s' untuk '%s'"
+
+#: elf32-arm.c:4463
+msgid "%B: BE8 images only valid in big-endian mode."
+msgstr "%B: hanya images BE8 valid dalam mode big-endian."
+
+#. Give a warning, but do as the user requests anyway.
+#: elf32-arm.c:4678
+msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture"
+msgstr "%B: peringatan: memilih VFP11 erratum penyelesaian adalah tidak diperlukan untuk arsitektur target"
+
+#: elf32-arm.c:5212 elf32-arm.c:5232
+msgid "%B: unable to find VFP11 veneer `%s'"
+msgstr "%B: tidak dapat menemukan VFP11 veneer `%s'"
+
+#: elf32-arm.c:5278
+#, c-format
+msgid "Invalid TARGET2 relocation type '%s'."
+msgstr "Tipe relokasi '%s' TARGET2 tidak valid."
+
+#: elf32-arm.c:5362
+msgid ""
+"%B(%s): warning: interworking not enabled.\n"
+"  first occurrence: %B: thumb call to arm"
+msgstr ""
+"%B(%s): peringatan: antar-kerja tidak aktif.\n"
+"  pertemuan pertama: %B: thumb call ke arm"
+
+#: elf32-arm.c:6094
+msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'."
+msgstr "\\%B: Peringatan: Arm BLK instruksi target Arm fungsi '%s'."
+
+#: elf32-arm.c:6418
+msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'."
+msgstr "%B: Peringatan: Thumb BLX instruksi target thumb fungsi '%s'."
+
+#: elf32-arm.c:7095
+msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object"
+msgstr "%B(%A+0x%lx): R_ARM_TLS_LE32 relokasi tidak diperbolehkan dalam objek terbagi"
+
+#: elf32-arm.c:7310
+msgid "%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations"
+msgstr "%B(%A+0x%lx): Hanya ADD atau SUB instruksi yang diperbolehkan untuk grup ALU relokasi"
+
+#: elf32-arm.c:7350 elf32-arm.c:7437 elf32-arm.c:7520 elf32-arm.c:7605
+msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"
+msgstr "%B(%A+0x%lx): Overflow ketika membagi 0x%lx untuk relokasi grup %s"
+
+#: elf32-arm.c:7812 elf32-sh.c:3334 elf64-sh64.c:1556
+msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section"
+msgstr "%B(%A+0x%lx): %s relokasi terhadap bagian SEC_MERGE"
+
+#: elf32-arm.c:7930 elf32-xtensa.c:2759 elf64-ppc.c:10374
+msgid "%B(%A+0x%lx): %s used with TLS symbol %s"
+msgstr "%B(%A+0x%lx): %s digunakan dengan simbol TLS %s"
+
+#: elf32-arm.c:7931 elf32-xtensa.c:2760 elf64-ppc.c:10375
+msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s"
+msgstr "%B(%A+0x%lx): %s digunakan dengan simbol bukan-TLS %s"
+
+#: elf32-arm.c:7988
+msgid "out of range"
+msgstr "diluar jangkauan"
+
+#: elf32-arm.c:7992
+msgid "unsupported relocation"
+msgstr "relokasi tidak didukung"
+
+#: elf32-arm.c:8000
+msgid "unknown error"
+msgstr "error tidak diketahui"
+
+#: elf32-arm.c:8099
+msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it"
+msgstr "Peringatan: Menghapus tanda antar-kerja dari %B karena bukan kode antar-kerja dalam %B telah dihubungkan dengan itu"
+
+#: elf32-arm.c:8205
+msgid "ERROR: %B uses VFP register arguments, %B does not"
+msgstr "ERROR: %B menggunakan reguster argumen VFP, %B tidak"
+
+#: elf32-arm.c:8254
+msgid "ERROR: %B: Conflicting architecture profiles %c/%c"
+msgstr "ERROR: %B: Profil arsitektur konflik %c/%c"
+
+#: elf32-arm.c:8274
+msgid "Warning: %B: Conflicting platform configuration"
+msgstr "Peringatan: %B: Konflik konfigurasi platform"
+
+#: elf32-arm.c:8283
+msgid "ERROR: %B: Conflicting use of R9"
+msgstr "ERROR: %B: Konflik penggunaan R9"
+
+#: elf32-arm.c:8295
+msgid "ERROR: %B: SB relative addressing conflicts with use of R9"
+msgstr "ERROR: %B: SB pengalamatan relatif konflik dengan penggunaan dari R9"
+
+#: elf32-arm.c:8318
+msgid "warning: %B uses %u-byte wchar_t yet the output is to use %u-byte wchar_t; use of wchar_t values across objects may fail"
+msgstr "peringatan: %B menggunakan %u-byte wchar_t tapi keluaran menggunakan %u-byte wchar_t; menggunakan nilai wchar_t melewati objek mungkin gagal"
+
+#: elf32-arm.c:8347
+msgid "warning: %B uses %s enums yet the output is to use %s enums; use of enum values across objects may fail"
+msgstr "peringatan: %B menggunakan %s enums tapi keluaran menggunakan %s enums; menggunakan nilai dari enum dari objek mungkin gagal"
+
+#: elf32-arm.c:8360
+msgid "ERROR: %B uses iWMMXt register arguments, %B does not"
+msgstr "ERROR: %B menggunakan iWMMXt argumen register, %B tidak"
+
+#: elf32-arm.c:8400
+msgid "Warning: %B: Unknown EABI object attribute %d"
+msgstr "Peringatan: %B: atribut objek EABI tidak diketahui %d"
+
+#: elf32-arm.c:8460
+msgid "ERROR: %B is already in final BE8 format"
+msgstr "ERROR: %B telah dalam format akhir BE8"
+
+#: elf32-arm.c:8536
+msgid "ERROR: Source object %B has EABI version %d, but target %B has EABI version %d"
+msgstr "ERROR: Sumber objek %B memiliki versi EABI %d, tetapi target %B memiliki versi EABI %d"
+
+#: elf32-arm.c:8552
+msgid "ERROR: %B is compiled for APCS-%d, whereas target %B uses APCS-%d"
+msgstr "ERROR: %B dikompile untuk APCS-%d, dimana target %B menggunakan APCS-%d"
+
+#: elf32-arm.c:8577
+msgid "ERROR: %B uses VFP instructions, whereas %B does not"
+msgstr "ERROR: %B menggunakan VFP instruksi, dimana %B tidak"
+
+#: elf32-arm.c:8581
+msgid "ERROR: %B uses FPA instructions, whereas %B does not"
+msgstr "ERROR: %B menggunakan FPA instruksi, dimana %B tidak"
+
+#: elf32-arm.c:8591
+msgid "ERROR: %B uses Maverick instructions, whereas %B does not"
+msgstr "ERROR: %B menggunakan Maverick instruksi, dimana %B tidak"
+
+#: elf32-arm.c:8595
+msgid "ERROR: %B does not use Maverick instructions, whereas %B does"
+msgstr "ERROR: %B tidak menggunakan Maveric instruksi, dimana %B menggunakan"
+
+#: elf32-arm.c:8614
+msgid "ERROR: %B uses software FP, whereas %B uses hardware FP"
+msgstr "ERROR: %B menggunakan software FP, dimana %B menggunakan hardware FP"
+
+#: elf32-arm.c:8618
+msgid "ERROR: %B uses hardware FP, whereas %B uses software FP"
+msgstr "ERROR: %B menggunakan hardware FP, dimana %B menggunakan software FP"
+
+#. Ignore init flag - it may not be set, despite the flags field
+#. containing valid data.
+#. Ignore init flag - it may not be set, despite the flags field containing valid data.
+#: elf32-arm.c:8665 elf32-bfin.c:4899 elf32-cris.c:3235 elf32-m68hc1x.c:1279
+#: elf32-m68k.c:774 elf32-score.c:3750 elf32-vax.c:538 elfxx-mips.c:12699
+#, c-format
+msgid "private flags = %lx:"
+msgstr "tanda private = %lx:"
+
+#: elf32-arm.c:8674
+#, c-format
+msgid " [interworking enabled]"
+msgstr " [antar-kerja aktif]"
+
+#: elf32-arm.c:8682
+#, c-format
+msgid " [VFP float format]"
+msgstr " [VFP float format]"
+
+#: elf32-arm.c:8684
+#, c-format
+msgid " [Maverick float format]"
+msgstr " [Maverick float format]"
+
+#: elf32-arm.c:8686
+#, c-format
+msgid " [FPA float format]"
+msgstr " [FPA float format]"
+
+#: elf32-arm.c:8695
+#, c-format
+msgid " [new ABI]"
+msgstr " [ABI baru]"
+
+#: elf32-arm.c:8698
+#, c-format
+msgid " [old ABI]"
+msgstr " [ABI lama]"
+
+#: elf32-arm.c:8701
+#, c-format
+msgid " [software FP]"
+msgstr " [software FP]"
+
+#: elf32-arm.c:8710
+#, c-format
+msgid " [Version1 EABI]"
+msgstr " [EABI Versi 1]"
+
+#: elf32-arm.c:8713 elf32-arm.c:8724
+#, c-format
+msgid " [sorted symbol table]"
+msgstr " [simbol tabel terurut]"
+
+#: elf32-arm.c:8715 elf32-arm.c:8726
+#, c-format
+msgid " [unsorted symbol table]"
+msgstr " [simbol tabel tidak terurut]"
+
+#: elf32-arm.c:8721
+#, c-format
+msgid " [Version2 EABI]"
+msgstr " [EABI Versi 2]"
+
+#: elf32-arm.c:8729
+#, c-format
+msgid " [dynamic symbols use segment index]"
+msgstr " [simbol dinamis menggunakan segmen indek]"
+
+#: elf32-arm.c:8732
+#, c-format
+msgid " [mapping symbols precede others]"
+msgstr " [simbol map mendahului yang lain]"
+
+#: elf32-arm.c:8739
+#, c-format
+msgid " [Version3 EABI]"
+msgstr " [EABI Versi 3]"
+
+#: elf32-arm.c:8743
+#, c-format
+msgid " [Version4 EABI]"
+msgstr " [EABI Versi 4]"
+
+#: elf32-arm.c:8747
+#, c-format
+msgid " [Version5 EABI]"
+msgstr " [EABI Versi 5]"
+
+#: elf32-arm.c:8750
+#, c-format
+msgid " [BE8]"
+msgstr " [BE8]"
+
+#: elf32-arm.c:8753
+#, c-format
+msgid " [LE8]"
+msgstr " [LE8]"
+
+#: elf32-arm.c:8759
+#, c-format
+msgid " <EABI version unrecognised>"
+msgstr " <EABI versi tidak dikenal>"
+
+#: elf32-arm.c:8766
+#, c-format
+msgid " [relocatable executable]"
+msgstr " [relocatable executable]"
+
+#: elf32-arm.c:8769
+#, c-format
+msgid " [has entry point]"
+msgstr " [memiliki titik masuk]"
+
+#: elf32-arm.c:8774
+#, c-format
+msgid "<Unrecognised flag bits set>"
+msgstr "<Tanda bit tidak dikenal terset>"
+
+#: elf32-arm.c:9013 elf32-i386.c:1236 elf32-s390.c:1006 elf32-xtensa.c:999
+#: elf64-s390.c:961 elf64-x86-64.c:1016 elfxx-sparc.c:1127
+msgid "%B: bad symbol index: %d"
+msgstr "%B: memiliki indek simbol: %d"
+
+#: elf32-arm.c:10125
+#, c-format
+msgid "Errors encountered processing file %s"
+msgstr "Errors ditemui dalam pemrosesan berkas %s"
+
+#: elf32-arm.c:11526 elf32-arm.c:11548
+msgid "%B: error: VFP11 veneer out of range"
+msgstr "%B: error: VFP11 veneer diluar jangkauan"
+
+#: elf32-avr.c:1258 elf32-bfin.c:3222 elf32-cris.c:1546 elf32-fr30.c:624
+#: elf32-frv.c:4122 elf32-i860.c:1226 elf32-ip2k.c:1510 elf32-iq2000.c:699
+#: elf32-m32c.c:568 elf32-mep.c:549 elf32-msp430.c:501 elf32-mt.c:406
+#: elf32-openrisc.c:419 elf32-v850.c:1711 elf32-xstormy16.c:956
+#: elf64-mmix.c:1541
+msgid "internal error: dangerous relocation"
+msgstr "internal error: relokasi berbahaya"
+
+#: elf32-avr.c:2396 elf32-hppa.c:605 elf32-m68hc1x.c:164 elf64-ppc.c:3983
+msgid "%B: cannot create stub entry %s"
+msgstr "%B: tidak dapat membuat masukan stub %s"
+
+#: elf32-bfin.c:1585
+msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'"
+msgstr "%B(%A+0x%lx): relokasi tidak teresolf terhadap simbol `%s'"
+
+#: elf32-bfin.c:1618 elf32-i386.c:3623 elf32-m68k.c:3557 elf32-s390.c:3110
+#: elf64-s390.c:3071 elf64-x86-64.c:3278
+msgid "%B(%A+0x%lx): reloc against `%s': error %d"
+msgstr "%B(%A+0x%lx): relokasi terhadap `%s': error %d"
+
+#: elf32-bfin.c:2711
+msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend"
+msgstr "%B: relokasi di `%A+0x%x' simbol referensi `%s' dengan bukan nol ditambahkan"
+
+#: elf32-bfin.c:2725 elf32-frv.c:2904
+msgid "relocation references symbol not defined in the module"
+msgstr "relokasi referensi simbol tidak didefinisikan dalam modul"
+
+#: elf32-bfin.c:2822
+msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend"
+msgstr "R_BFIN_FUNCDESC referensi simbol dinamis dengan bukan nol ditambahkan"
+
+#: elf32-bfin.c:2861 elf32-bfin.c:2987 elf32-frv.c:3641 elf32-frv.c:3762
+msgid "cannot emit fixups in read-only section"
+msgstr "tidak dapat mengeluarkan fixups dalam bagian baca-saja"
+
+#: elf32-bfin.c:2889 elf32-bfin.c:3036 elf32-frv.c:3672 elf32-frv.c:3806
+msgid "cannot emit dynamic relocations in read-only section"
+msgstr "tidak dapat mengeluarkan relokasi dinamis dalam bagian baca-saja"
+
+#: elf32-bfin.c:2945
+msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
+msgstr "R_BFIN_FUNCDESC_VALUE referensi simbol dinamis dengan bukan nol ditambahkan"
+
+#: elf32-bfin.c:3126
+msgid "relocations between different segments are not supported"
+msgstr "relokasi diantara segmen berbeda tidak didukung"
+
+#: elf32-bfin.c:3127
+msgid "warning: relocation references a different segment"
+msgstr "peringatan: relokasi referensi sebuah segmen berbeda"
+
+#: elf32-bfin.c:4791 elf32-frv.c:6404
+msgid "%B: unsupported relocation type %i"
+msgstr "%B: tipe relokasi %i tidak didukung"
+
+#: elf32-bfin.c:4944 elf32-frv.c:6812
+#, c-format
+msgid "%s: cannot link non-fdpic object file into fdpic executable"
+msgstr "%s: tidak dapat menghubungkan berkas objek bukan-fdpic kedalam aplikasi fdpic"
+
+#: elf32-bfin.c:4948 elf32-frv.c:6816
+#, c-format
+msgid "%s: cannot link fdpic object file into non-fdpic executable"
+msgstr "%s: tidak dapat menghubungkan berkas objek fdpic kedalam aplikasi bukan-fdpic"
+
+#: elf32-cris.c:1060
+msgid "%B, section %A: unresolvable relocation %s against symbol `%s'"
+msgstr "%B, bagian %A: relokasi tidak teresolf %s terhadap simbol `%s'"
+
+#: elf32-cris.c:1129
+msgid "%B, section %A: No PLT nor GOT for relocation %s against symbol `%s'"
+msgstr "%B, bagian %A: Bukan PLT atau GOT untuk relokasi %s terhadap simbol `%s'"
+
+#: elf32-cris.c:1131
+msgid "%B, section %A: No PLT for relocation %s against symbol `%s'"
+msgstr "%B, bagian %A: Bukan PLT untuk relokasi %s terhadap simbol `%s'"
+
+#: elf32-cris.c:1137 elf32-cris.c:1269
+msgid "[whose name is lost]"
+msgstr "[yang namanya hilang]"
+
+#: elf32-cris.c:1255
+msgid "%B, section %A: relocation %s with non-zero addend %d against local symbol"
+msgstr "%B, bagian %A: relokasi %s dengan bukan-nol ditambahkan %d terhadap simbol lokal"
+
+#: elf32-cris.c:1263
+msgid "%B, section %A: relocation %s with non-zero addend %d against symbol `%s'"
+msgstr "%B, bagian %A: relokasi %s dengan bukan-nol ditambakan %d terhadap simbol `%s'"
+
+#: elf32-cris.c:1289
+msgid "%B, section %A: relocation %s is not allowed for global symbol: `%s'"
+msgstr "%B, bagian %A: relokasi %s tidak diperbolehkan untuk simbol global: `%s'"
+
+#: elf32-cris.c:1305
+msgid "%B, section %A: relocation %s with no GOT created"
+msgstr "%B, bagian %A: relokasi %s dengan tidak GOT dibuat"
+
+#: elf32-cris.c:1423
+msgid "%B: Internal inconsistency; no relocation section %s"
+msgstr "%B: Internal tidak konsisten; bagian %s tidak bisa direlokasi"
+
+#: elf32-cris.c:2510
+msgid ""
+"%B, section %A:\n"
+"  v10/v32 compatible object %s must not contain a PIC relocation"
+msgstr ""
+"%B, bagian %A:\n"
+"  v10/v32 objek kompatibel %s harus berisi sebuah relokasi PIC"
+
+#: elf32-cris.c:2697 elf32-cris.c:2765
+msgid ""
+"%B, section %A:\n"
+"  relocation %s should not be used in a shared object; recompile with -fPIC"
+msgstr ""
+"%B, bagian %A:\n"
+"  relokasi %s seharusnya digunakan dalam sebuah objek terbagi; rekompile dengan -fPIC"
+
+#: elf32-cris.c:3184
+msgid "Unexpected machine number"
+msgstr "Nomor mesin tidak terduga"
+
+#: elf32-cris.c:3238
+#, c-format
+msgid " [symbols have a _ prefix]"
+msgstr " [simbol memiliki sebuah awalan _]"
+
+#: elf32-cris.c:3241
+#, c-format
+msgid " [v10 and v32]"
+msgstr " [v10 dan v32]"
+
+#: elf32-cris.c:3244
+#, c-format
+msgid " [v32]"
+msgstr " [v32]"
+
+#: elf32-cris.c:3289
+msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols"
+msgstr "%B: menggunakan awalan _ simbol, tetapi menulis berkas dengan simbol tanpa awalan"
+
+#: elf32-cris.c:3290
+msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols"
+msgstr "%B: menggunakan simbol tanpa awalan, tetapi menulis berkas dengan simbol awalan _"
+
+#: elf32-cris.c:3309
+msgid "%B contains CRIS v32 code, incompatible with previous objects"
+msgstr "%B berisi kode CRIS v32, tidak kompatibel dengan objek sebelumnya"
+
+#: elf32-cris.c:3311
+msgid "%B contains non-CRIS-v32 code, incompatible with previous objects"
+msgstr "%B berisi kode bukan CRIS v32, tidak kompatibel dengan objek sebelumnya"
+
+#: elf32-frv.c:1507 elf32-frv.c:1656
+msgid "relocation requires zero addend"
+msgstr "relokasi membutuhkan penambahan nol"
+
+#: elf32-frv.c:2891
+msgid "%B(%A+0x%x): relocation to `%s+%x' may have caused the error above"
+msgstr "%B(%A+0x%x): relokasi ke `%s+%x' mungkin menyebabkan error diatas"
+
+#: elf32-frv.c:2980
+msgid "R_FRV_GETTLSOFF not applied to a call instruction"
+msgstr "R_FRV_GETTLSOFF tidak teraplikasi untuk sebuah panggilan instruksi"
+
+#: elf32-frv.c:3022
+msgid "R_FRV_GOTTLSDESC12 not applied to an lddi instruction"
+msgstr "R_FRV_GOTTLSDESC12 tidak teraplikasi untuk sebuah instruksi lddi"
+
+#: elf32-frv.c:3093
+msgid "R_FRV_GOTTLSDESCHI not applied to a sethi instruction"
+msgstr "R_FRV_GOTTLSDESCHI tidak teraplikasi untuk sebuah instruksi sethi"
+
+#: elf32-frv.c:3130
+msgid "R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction"
+msgstr "R_FRV_GOTTLSDESCLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos"
+
+#: elf32-frv.c:3178
+msgid "R_FRV_TLSDESC_RELAX not applied to an ldd instruction"
+msgstr "R_FRV_TLSDESC_RELAX tidak teraplikasi untuk sebuah instruksi ldd"
+
+#: elf32-frv.c:3262
+msgid "R_FRV_GETTLSOFF_RELAX not applied to a calll instruction"
+msgstr "R_FRV_GETTLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi calll"
+
+#: elf32-frv.c:3317
+msgid "R_FRV_GOTTLSOFF12 not applied to an ldi instruction"
+msgstr "R_FRV_GETTLSOFF12 tidak teraplikasi untuk sebuah instruksi ldi"
+
+#: elf32-frv.c:3347
+msgid "R_FRV_GOTTLSOFFHI not applied to a sethi instruction"
+msgstr "R_FRV_GOTTLSOFFHI tidak teraplikasi untuk sebuah instruksi sethi"
+
+#: elf32-frv.c:3376
+msgid "R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction"
+msgstr "R_FRV_GOTTLSOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos"
+
+#: elf32-frv.c:3407
+msgid "R_FRV_TLSOFF_RELAX not applied to an ld instruction"
+msgstr "R_FRV_TLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi ld"
+
+#: elf32-frv.c:3452
+msgid "R_FRV_TLSMOFFHI not applied to a sethi instruction"
+msgstr "R_FRV_TLSMOFFHI tidak teraplikasi untuk sebuah instruksi sethi"
+
+#: elf32-frv.c:3479
+msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction"
+msgstr "R_FRV_TLSMOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos"
+
+#: elf32-frv.c:3600
+msgid "R_FRV_FUNCDESC references dynamic symbol with nonzero addend"
+msgstr "R_FRV_FUNCDESC referensi simbol dinamis dengan penambahan bukan nol"
+
+#: elf32-frv.c:3720
+msgid "R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
+msgstr "R_FRV_FUNCDESC_VALUE referensi simbol dinamis dengan penambahan bukan nol"
+
+#: elf32-frv.c:3977 elf32-frv.c:4133
+msgid "%B(%A+0x%lx): reloc against `%s': %s"
+msgstr "%B(%A+0x%lx): relokasi terhadap `%s': %s"
+
+#: elf32-frv.c:3979 elf32-frv.c:3983
+msgid "relocation references a different segment"
+msgstr "relokasi referensi ke segmen berbeda"
+
+#: elf32-frv.c:6726
+#, c-format
+msgid "%s: compiled with %s and linked with modules that use non-pic relocations"
+msgstr "%s: terkompile dengan %s dan terhubung dengan modul yang menggunakan relokasi bukan-pic"
+
+#: elf32-frv.c:6779 elf32-iq2000.c:852 elf32-m32c.c:814
+#, c-format
+msgid "%s: compiled with %s and linked with modules compiled with %s"
+msgstr "%s: terkompile dengan %s dan terhubung dengan modul terkompile dengan %s"
+
+#: elf32-frv.c:6791
+#, c-format
+msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)"
+msgstr "%s: menggunakan bagian e_flags (0x%lx) berbeda yang tidak dikenal dari modul sebelumnya (0x%lx)"
+
+#: elf32-frv.c:6841 elf32-iq2000.c:889 elf32-m32c.c:850 elf32-mt.c:583
+#, c-format
+msgid "private flags = 0x%lx:"
+msgstr "private flags = 0x%lx:"
+
+#: elf32-gen.c:69 elf64-gen.c:69
+msgid "%B: Relocations in generic ELF (EM: %d)"
+msgstr "%B: Relokasi dalam ELF standar (EM: %d)"
+
+#: elf32-hppa.c:854 elf32-hppa.c:3600
+msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections"
+msgstr "%B(%A+0x%lx): tidak dapat mencapai %s, rekompile dengan -ffunction-sections"
+
+#: elf32-hppa.c:1263
+msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC"
+msgstr "%B: relokasi %s tidak dapat digunakan ketika membuat sebuah objek terbagi; rekompile dengan -fPIC"
+
+#: elf32-hppa.c:1518
+#, c-format
+msgid "Could not find relocation section for %s"
+msgstr "Tidak dapat menemukan bagian relokasi untuk %s"
+
+#: elf32-hppa.c:2810
+msgid "%B: duplicate export stub %s"
+msgstr "%B: duplikasi export stub %s"
+
+#: elf32-hppa.c:3436
+msgid "%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link"
+msgstr "%B(%A+0x%lx): %s fixup untuk insn 0x%x tidak didukung dalam sebuah sambunga tidak terbagi"
+
+#: elf32-hppa.c:4290
+msgid "%B(%A+0x%lx): cannot handle %s for %s"
+msgstr "%B(%A+0x%lx): tidak dapat menangani %s untuk %s"
+
+#: elf32-hppa.c:4597
+msgid ".got section not immediately after .plt section"
+msgstr "bagian .got tidak mengikuti bagian .plt"
+
+#: elf32-i386.c:362 elf32-ppc.c:1616 elf32-s390.c:379 elf64-ppc.c:2153
+#: elf64-s390.c:403 elf64-x86-64.c:222
+msgid "%B: invalid relocation type %d"
+msgstr "%B: tipe relokasi %d tidak valid"
+
+#: elf32-i386.c:1183 elf64-x86-64.c:964
+msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed"
+msgstr "%B: TLS transisi dari %s ke %s terhadap `%s' di 0x%lx dalam bagian `%A' gagal"
+
+#: elf32-i386.c:1364 elf32-s390.c:1188 elf32-sh.c:5098 elf32-xtensa.c:1162
+#: elf64-s390.c:1152 elfxx-sparc.c:1263
+msgid "%B: `%s' accessed both as normal and thread local symbol"
+msgstr "%B: `%s' terakses kedua sebagai normal dan memperlakukan lokal simbol"
+
+#: elf32-i386.c:1479 elf32-s390.c:1297 elf64-ppc.c:5046 elf64-s390.c:1264
+#: elf64-x86-64.c:1299
+msgid "%B: bad relocation section name `%s'"
+msgstr "%B: relokasi bagian nama `%s' buruk"
+
+#: elf32-i386.c:2598
+msgid "%B: unrecognized relocation (0x%x) in section `%A'"
+msgstr "%B: relokasi tidak dikenal (0x%x) dalam bagian `%A'"
+
+#: elf32-i386.c:2822 elf64-x86-64.c:2660
+msgid "hidden symbol"
+msgstr "simbol tersembunyi"
+
+#: elf32-i386.c:2825 elf64-x86-64.c:2663
+msgid "internal symbol"
+msgstr "internal simbol"
+
+#: elf32-i386.c:2828 elf64-x86-64.c:2666
+msgid "protected symbol"
+msgstr "simbol terproteksi"
+
+#: elf32-i386.c:2831 elf64-x86-64.c:2669
+msgid "symbol"
+msgstr "simbol"
+
+#: elf32-i386.c:2836
+msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object"
+msgstr "%B: relokasi R_386_GOTOFF terhadap %s `%s' tidak terdefinisi tidak dapat digunakan ketika membuah sebuah objek terbagi"
+
+#: elf32-i386.c:2846
+msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object"
+msgstr "%B: relokasi R_386_GOTOFF terhadap fungsi terproteksi `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi"
+
+#: elf32-ip2k.c:868 elf32-ip2k.c:874 elf32-ip2k.c:941 elf32-ip2k.c:947
+msgid "ip2k relaxer: switch table without complete matching relocation information."
+msgstr "ip2k relaxer: tabel switch tanpa pencocokan informasi relokasi lengkap."
+
+#: elf32-ip2k.c:891 elf32-ip2k.c:974
+msgid "ip2k relaxer: switch table header corrupt."
+msgstr "ip2k relaxer: switch tabel header terkorupsi."
+
+#: elf32-ip2k.c:1316
+#, c-format
+msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)."
+msgstr "ip2k linker: hilang halaman instruksi di 0x%08lx (dest = 0x%08lx)."
+
+#: elf32-ip2k.c:1332
+#, c-format
+msgid "ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)."
+msgstr "ip2k linker: redundant halaman instruksi di 0x%08lx (dest = 0x%08lx)."
+
+#. Only if it's not an unresolved symbol.
+#: elf32-ip2k.c:1506
+msgid "unsupported relocation between data/insn address spaces"
+msgstr "relokasi tidak didukung diantara data/insn ruang alamat"
+
+#: elf32-iq2000.c:865 elf32-m32c.c:826
+#, c-format
+msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
+msgstr "%s: menggunakan e_flags (0x%lx) field berbeda dari modul sebelumnya (0x%lx)"
+
+#: elf32-m32r.c:1453
+msgid "SDA relocation when _SDA_BASE_ not defined"
+msgstr "SDA relokasi ketika _SDA_BASE_ tidak terdefinisi"
+
+#: elf32-m32r.c:3061
+msgid "%B: The target (%s) of an %s relocation is in the wrong section (%A)"
+msgstr "%B: Target (%s) dari sebuah %s relokasi berada dalam bagian yang salah (%A)"
+
+#: elf32-m32r.c:3589
+msgid "%B: Instruction set mismatch with previous modules"
+msgstr "%B: Set Instruksi tidak cocok dengan modul sebelumnya"
+
+#: elf32-m32r.c:3610
+#, c-format
+msgid "private flags = %lx"
+msgstr "private flags = %lx"
+
+#: elf32-m32r.c:3615
+#, c-format
+msgid ": m32r instructions"
+msgstr ": m32r instruksi"
+
+#: elf32-m32r.c:3616
+#, c-format
+msgid ": m32rx instructions"
+msgstr ": m32rx instruksi"
+
+#: elf32-m32r.c:3617
+#, c-format
+msgid ": m32r2 instructions"
+msgstr ": m32r2 instruksi"
+
+#: elf32-m68hc1x.c:1047
+#, c-format
+msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution"
+msgstr "Referensi ke simbol jauh `%s' menggunakan relokasi salah mungkin akan menghasilkan eksekusi salah"
+
+#: elf32-m68hc1x.c:1070
+#, c-format
+msgid "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked address [%lx:%04lx] (%lx)"
+msgstr "banked address [%lx:%04lx] (%lx) tidak dalam bank yang sama seperti dalam alamat bank sekarang [%lx:%04lx] (%lx)"
+
+#: elf32-m68hc1x.c:1089
+#, c-format
+msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx"
+msgstr "referensi ke alamat bank [%lx:%04lx] dalam ruang alamat normal di %04lx"
+
+#: elf32-m68hc1x.c:1222
+msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers"
+msgstr "%B: menghubungkan berkas yang dikompile untuk 16-bit integer (-mshort) dan yang lain untuk 32-bit integer"
+
+#: elf32-m68hc1x.c:1229
+msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double"
+msgstr "%B: menghubungkan berkas yang dikompile untuk 32-bit double (-fshort-double) dan yang lain untuk 64-bit double"
+
+#: elf32-m68hc1x.c:1238
+msgid "%B: linking files compiled for HCS12 with others compiled for HC12"
+msgstr "%B: menghubungkan berkas dikompile untuk HCS12 dengan yang lain dikompile untuk HC12"
+
+#: elf32-m68hc1x.c:1254 elf32-ppc.c:4046 elf64-sparc.c:697 elfxx-mips.c:12561
+msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
+msgstr "%B: menggunakan field e_flags (0x%lx) berbeda dari modul sebelumnya (0x%lx)"
+
+#: elf32-m68hc1x.c:1282
+#, c-format
+msgid "[abi=32-bit int, "
+msgstr "[abi=32-bit int, "
+
+#: elf32-m68hc1x.c:1284
+#, c-format
+msgid "[abi=16-bit int, "
+msgstr "[abi=16-bit int, "
+
+#: elf32-m68hc1x.c:1287
+#, c-format
+msgid "64-bit double, "
+msgstr "64-bit double, "
+
+#: elf32-m68hc1x.c:1289
+#, c-format
+msgid "32-bit double, "
+msgstr "32-bit double, "
+
+#: elf32-m68hc1x.c:1292
+#, c-format
+msgid "cpu=HC11]"
+msgstr "cpu=HC11]"
+
+#: elf32-m68hc1x.c:1294
+#, c-format
+msgid "cpu=HCS12]"
+msgstr "cpu=HCS12]"
+
+#: elf32-m68hc1x.c:1296
+#, c-format
+msgid "cpu=HC12]"
+msgstr "cpu=HC12]"
+
+#: elf32-m68hc1x.c:1299
+#, c-format
+msgid " [memory=bank-model]"
+msgstr " [memory=bank-model]"
+
+#: elf32-m68hc1x.c:1301
+#, c-format
+msgid " [memory=flat]"
+msgstr " [memory=flat]"
+
+#: elf32-m68k.c:789 elf32-m68k.c:790
+msgid "unknown"
+msgstr "tidak dikenal"
+
+#: elf32-m68k.c:1216
+msgid "%B: GOT overflow: Number of R_68K_GOT8O relocations > %d"
+msgstr "%B: GOT overflow: Jumlah dari R_68K_GOT80 relokasi > %d"
+
+#: elf32-m68k.c:1221
+msgid "%B: GOT overflow: Number of R_68K_GOT8O and R_68K_GOT16O relocations > %d"
+msgstr "%B: Memperoleh overflow: Jumlah dari R_68K_GOT80 dan R_68K_GOT160 relokasi > %d"
+
+#: elf32-mcore.c:99 elf32-mcore.c:442
+msgid "%B: Relocation %s (%d) is not currently supported.\n"
+msgstr "%B: Relokasi %s (%d) saat ini tidak didukung.\n"
+
+#: elf32-mcore.c:428
+msgid "%B: Unknown relocation type %d\n"
+msgstr "%B: Tipe relokasi %d tidak dikenal\n"
+
+#: elf32-mep.c:654
+msgid "%B and %B are for different cores"
+msgstr "%B dan %B adalah untuk cores berbeda"
+
+#: elf32-mep.c:671
+msgid "%B and %B are for different configurations"
+msgstr "%B dan %B adalah untuk konfigurasi berbeda"
+
+#: elf32-mep.c:709
+#, c-format
+msgid "private flags = 0x%lx"
+msgstr "private flags = 0x%lx"
+
+#: elf32-mips.c:1045 elf64-mips.c:2056 elfn32-mips.c:1888
+msgid "literal relocation occurs for an external symbol"
+msgstr "literal relokasi terjadi untuk simbol eksternal"
+
+#: elf32-mips.c:1085 elf32-score.c:484 elf64-mips.c:2099 elfn32-mips.c:1929
+msgid "32bits gp relative relocation occurs for an external symbol"
+msgstr "32bit gp relative relokasi terjadi untuk sebuah simbol eksternal"
+
+#: elf32-ppc.c:1681
+#, c-format
+msgid "generic linker can't handle %s"
+msgstr "linker generik tidak dapat menangani %s"
+
+#: elf32-ppc.c:2161
+msgid "corrupt or empty %s section in %B"
+msgstr "korup atau kosong %s bagian dalam %B"
+
+#: elf32-ppc.c:2168
+msgid "unable to read in %s section from %B"
+msgstr "tidak dapat membaca dalam bagian %s dari %B"
+
+#: elf32-ppc.c:2174
+msgid "corrupt %s section in %B"
+msgstr "korup bagian %s dalam %B"
+
+#: elf32-ppc.c:2217
+msgid "warning: unable to set size of %s section in %B"
+msgstr "peringatan: tidak dapat menset ukuran bagian %s dalam %B"
+
+#: elf32-ppc.c:2265
+msgid "failed to allocate space for new APUinfo section."
+msgstr "gagal mengalokasikan ruang untuk bagian baru APUinfo."
+
+#: elf32-ppc.c:2284
+msgid "failed to compute new APUinfo section."
+msgstr "gagal untuk menghitung bagian baru APUinfo."
+
+#: elf32-ppc.c:2287
+msgid "failed to install new APUinfo section."
+msgstr "gagal untuk memasang bagian baru APUinfo."
+
+#: elf32-ppc.c:3263
+msgid "%B: relocation %s cannot be used when making a shared object"
+msgstr "%B: relokasi %s tidak dapat digunakan ketika membuat sebuah objek terbagi"
+
+#. It does not make sense to have a procedure linkage
+#. table entry for a local symbol.
+#: elf32-ppc.c:3534
+msgid "%B(%A+0x%lx): %s reloc against local symbol"
+msgstr "%B(%A+0x%lx): %s relokasi terhadap simbol lokal"
+
+#: elf32-ppc.c:3885 elf32-ppc.c:3900 elfxx-mips.c:12268 elfxx-mips.c:12294
+#: elfxx-mips.c:12316 elfxx-mips.c:12342
+msgid "Warning: %B uses hard float, %B uses soft float"
+msgstr "Peringatan: %B menggunakan hard float, %B menggunakan soft float"
+
+#: elf32-ppc.c:3888 elf32-ppc.c:3892
+msgid "Warning: %B uses double-precision hard float, %B uses single-precision hard float"
+msgstr "Peringatan: %B menggunakan double-precision hard float, %B menggunakan single-precision hard float"
+
+#: elf32-ppc.c:3896
+msgid "Warning: %B uses soft float, %B uses single-precision hard float"
+msgstr "Peringatan: %B menggunakan soft float, %B menggunakan single-precision hard float"
+
+#: elf32-ppc.c:3903 elf32-ppc.c:3907 elfxx-mips.c:12248 elfxx-mips.c:12252
+msgid "Warning: %B uses unknown floating point ABI %d"
+msgstr "Peringatan: %B menggunkaan floating point ABI %d"
+
+#: elf32-ppc.c:3949 elf32-ppc.c:3953
+msgid "Warning: %B uses unknown vector ABI %d"
+msgstr "Peringatan: %B menggunakan vector ABI %d tidak dikenal"
+
+#: elf32-ppc.c:3957
+msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\""
+msgstr "Peringatan: %B menggunakan vector ABI \"%s\", %B menggunakan \"%s\""
+
+#: elf32-ppc.c:4011
+msgid "%B: compiled with -mrelocatable and linked with modules compiled normally"
+msgstr "%B: dikompile dengan -mrelocatable dan dihubungkan dengan module yang dikompile secara normal"
+
+#: elf32-ppc.c:4019
+msgid "%B: compiled normally and linked with modules compiled with -mrelocatable"
+msgstr "%B: dikompile secara normal dan dihubungkan dengan modul yang dikompile dengan -mrelocatable"
+
+#: elf32-ppc.c:4105
+msgid "Using bss-plt due to %B"
+msgstr "Menggunakan bss-plt karena %B"
+
+#: elf32-ppc.c:6418 elf64-ppc.c:10881
+msgid "%B: unknown relocation type %d for symbol %s"
+msgstr "%B: tipe relokasi %d tidak dikenal untuk simbol %s"
+
+#: elf32-ppc.c:6668
+msgid "%B(%A+0x%lx): non-zero addend on %s reloc against `%s'"
+msgstr "%B(%A+0x%lx): bukan-nol ditambahkan di %s relokasi terhadap `%s'"
+
+#: elf32-ppc.c:7024 elf32-ppc.c:7050 elf32-ppc.c:7109
+msgid "%B: the target (%s) of a %s relocation is in the wrong output section (%s)"
+msgstr "%B: target (%s) dari sebuah relokasi %s berada dalam daerah keluaran salah (%s)"
+
+#: elf32-ppc.c:7164
+msgid "%B: relocation %s is not yet supported for symbol %s."
+msgstr "%B: relokasi %s tidak didukung untuk simbol %s."
+
+#: elf32-ppc.c:7272 elf64-ppc.c:11575
+msgid "%B(%A+0x%lx): %s reloc against `%s': error %d"
+msgstr "%B(%A+0x%lx): %s relokasi terhadap `%s': error %d"
+
+#: elf32-s390.c:2246 elf64-s390.c:2220
+msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s"
+msgstr "%B(%A+0x%lx): instruksi tidak valid untuk relokasi TLS %s"
+
+#: elf32-score.c:1415 elfxx-mips.c:3273
+msgid "not enough GOT space for local GOT entries"
+msgstr "tidak cukup ruang GOT untuk masukan lokal GOT"
+
+#: elf32-score.c:2545
+#, c-format
+msgid "%s: Malformed reloc detected for section %s"
+msgstr "%s: relokasi malformat terdeteksi untuk bagian %s"
+
+#: elf32-score.c:2596
+msgid "%B: CALL15 reloc at 0x%lx not against global symbol"
+msgstr "%B: CALL15 relokasi di 0x%lx tidak terhadap simbol global"
+
+#: elf32-score.c:3753
+#, c-format
+msgid " [pic]"
+msgstr " [pic]"
+
+#: elf32-score.c:3757
+#, c-format
+msgid " [fix dep]"
+msgstr " [fix dep]"
+
+#: elf32-score.c:3799
+msgid "%B: warning: linking PIC files with non-PIC files"
+msgstr "%B: peringatan: menghubungkan berkas PIC dengan berkas bukan-PIC"
+
+#: elf32-sh-symbian.c:130
+msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS"
+msgstr "%B: IMPORT SEBAGAI direktif untuk %s menyembunyikan IMPORT SEBAGAI sebelumnya"
+
+#: elf32-sh-symbian.c:383
+msgid "%B: Unrecognised .directive command: %s"
+msgstr "%B: Perintah .directive tidak dikenal: %s"
+
+#: elf32-sh-symbian.c:504
+msgid "%B: Failed to add renamed symbol %s"
+msgstr "%B: Gagal menambahkan simbol diubah namanya %s"
+
+#: elf32-sh.c:533
+msgid "%B: 0x%lx: warning: bad R_SH_USES offset"
+msgstr "%B: 0x%lx: peringatan: ofset R_SH_USES buruk"
+
+#: elf32-sh.c:545
+msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"
+msgstr "%B: 0x%lx: peringatan: R_SH_USES titik tidak dikenal insn 0x%x"
+
+#: elf32-sh.c:562
+msgid "%B: 0x%lx: warning: bad R_SH_USES load offset"
+msgstr "%B: 0x%lx: peringatan: ofset R_SH_USES beban buruk"
+
+#: elf32-sh.c:577
+msgid "%B: 0x%lx: warning: could not find expected reloc"
+msgstr "%B: 0x%lx: peringatan: tidak dapat menemukan relokasi yang diperkirakan"
+
+#: elf32-sh.c:605
+msgid "%B: 0x%lx: warning: symbol in unexpected section"
+msgstr "%B: 0x%lx: peringatan: simbol dalam bagian yang tidak diperkirakan"
+
+#: elf32-sh.c:731
+msgid "%B: 0x%lx: warning: could not find expected COUNT reloc"
+msgstr "%B: 0x%lx: peringatan: tidak dapat menemukan COUNT relokasi"
+
+#: elf32-sh.c:740
+msgid "%B: 0x%lx: warning: bad count"
+msgstr "%B: 0x%lx: peringatan: jumlah buruk"
+
+#: elf32-sh.c:1144 elf32-sh.c:1514
+msgid "%B: 0x%lx: fatal: reloc overflow while relaxing"
+msgstr "%B: 0x%lx: fatal: relokasi overflow ketika relaxing"
+
+#: elf32-sh.c:3279 elf64-sh64.c:1526
+msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled"
+msgstr "Tidak diperkirakan STO_SH5_ISA32 di simbol lokal tidak ditangani"
+
+#: elf32-sh.c:3516
+msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation"
+msgstr "%B: 0x%lx: fatal: unaligned branch target untuk relax-support relokasi"
+
+#: elf32-sh.c:3549 elf32-sh.c:3564
+msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx"
+msgstr "%B: 0x%lx: fatal: unaligned %s relokasi 0x%lx"
+
+#: elf32-sh.c:3578
+msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32"
+msgstr "%B: 0x%lx: fatal: R_SH_PSHA relokasi %d tidak dalam jangkauan -32..32"
+
+#: elf32-sh.c:3592
+msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32"
+msgstr "%B: 0x%lx: fatal: R_SH_PSHL relokasi %d tidak dalam jangkauan -32..32"
+
+#: elf32-sh.c:5310 elf64-alpha.c:4552
+msgid "%B: TLS local exec code cannot be linked into shared objects"
+msgstr "%B: TLS lokal exec kode tidak dapat dihubungkan dalam objek terbagi"
+
+#: elf32-sh64.c:222 elf64-sh64.c:2345
+#, c-format
+msgid "%s: compiled as 32-bit object and %s is 64-bit"
+msgstr "%s: dikompile sebagai 32-bit objek dan %s adalah 64-bit"
+
+#: elf32-sh64.c:225 elf64-sh64.c:2348
+#, c-format
+msgid "%s: compiled as 64-bit object and %s is 32-bit"
+msgstr "%s: dikompile sebagai 64-bit objek dan %s adalah 32-bit"
+
+#: elf32-sh64.c:227 elf64-sh64.c:2350
+#, c-format
+msgid "%s: object size does not match that of target %s"
+msgstr "%s: ukuran objek tidak cocok dari target %s"
+
+#: elf32-sh64.c:450 elf64-sh64.c:2888
+#, c-format
+msgid "%s: encountered datalabel symbol in input"
+msgstr "%s: ditemui datalabel simbol dalam masukan"
+
+#: elf32-sh64.c:527
+msgid "PTB mismatch: a SHmedia address (bit 0 == 1)"
+msgstr "PTB tidak cocok: sebuah SHmedia alamat (bit 0 ==1)"
+
+#: elf32-sh64.c:530
+msgid "PTA mismatch: a SHcompact address (bit 0 == 0)"
+msgstr "PTA tidak cocok: sebuah SHcompact alamat (bit 0 == 0)"
+
+#: elf32-sh64.c:548
+#, c-format
+msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16"
+msgstr "%s: GAS error: tidak diduga PTB insn dengan R_SH_PT_16"
+
+#: elf32-sh64.c:597
+msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n"
+msgstr "%B: error: tipe relokasi unaligned %d di %08x relokasi %p\n"
+
+#: elf32-sh64.c:673
+#, c-format
+msgid "%s: could not write out added .cranges entries"
+msgstr "%s: tidak dapat menulis masukan tambahan .cranges"
+
+#: elf32-sh64.c:733
+#, c-format
+msgid "%s: could not write out sorted .cranges entries"
+msgstr "%s: tidak dapat menulis masukan terurut .cranges"
+
+#: elf32-sparc.c:89
+msgid "%B: compiled for a 64 bit system and target is 32 bit"
+msgstr "%B: dikompile untuk sebuah sistem 64 bit dan target adalah 32 bit"
+
+#: elf32-sparc.c:102
+msgid "%B: linking little endian files with big endian files"
+msgstr "%B: menghubungkan berkas little endian dengan berkas big endian"
+
+#: elf32-spu.c:607
+msgid "%X%P: overlay sections %A and %A do not start at the same address.\n"
+msgstr "%X%P: bagian overlay %A dan %A jangan diawali di alamat yang sama.\n"
+
+#: elf32-spu.c:805
+msgid "warning: call to non-function symbol %s defined in %B"
+msgstr "peringatan: panggilan bukan-fungsi simbol %s didefinisikan dalam %B"
+
+#: elf32-spu.c:1406
+msgid "%B is not allowed to define %s"
+msgstr "%B tidak diperbolehkan untuk didefinisikan %s"
+
+#: elf32-spu.c:1453
+#, c-format
+msgid "%s in overlay section"
+msgstr "%s dalam daerah overlay"
+
+#: elf32-spu.c:1469
+msgid "overlay stub relocation overflow"
+msgstr "relokasi stub overlay overflow"
+
+#: elf32-spu.c:1478 elf64-ppc.c:10078
+msgid "stubs don't match calculated size"
+msgstr "stub tidak cocok dengan ukuran yang dihitung"
+
+#: elf32-spu.c:1976
+#, c-format
+msgid "warning: %s overlaps %s\n"
+msgstr "peringatan: %s timpang tindih %s\n"
+
+#: elf32-spu.c:1992
+#, c-format
+msgid "warning: %s exceeds section size\n"
+msgstr "peringatan: %s melebihi ukuran daerah\n"
+
+#: elf32-spu.c:2023
+msgid "%A:0x%v not found in function table\n"
+msgstr "%A:0x%v tidak ditemukan dalam tabel fungsi\n"
+
+#: elf32-spu.c:2165
+msgid "%B(%A+0x%v): call to non-code section %B(%A), analysis incomplete\n"
+msgstr "%B(%A+0x%v): panggilan untuk daerah bukan-kode %B(%A), analysis tidak lengkap\n"
+
+#: elf32-spu.c:2339
+#, c-format
+msgid "%A link_order not found\n"
+msgstr "%A link_order tidak ditemukan\n"
+
+#: elf32-spu.c:2706
+#, c-format
+msgid "Stack analysis will ignore the call from %s to %s\n"
+msgstr "Stack analysis akan mengabaikan panggilan dari %s ke %s\n"
+
+#: elf32-spu.c:3348
+msgid "  %s: 0x%v\n"
+msgstr "  %s: 0x%v\n"
+
+#: elf32-spu.c:3349
+msgid "%s: 0x%v 0x%v\n"
+msgstr "%s: 0x%v 0x%v\n"
+
+#: elf32-spu.c:3354
+msgid "  calls:\n"
+msgstr "  panggilan:\n"
+
+#: elf32-spu.c:3362
+#, c-format
+msgid "   %s%s %s\n"
+msgstr "   %s%s %s\n"
+
+#: elf32-spu.c:3564
+#, c-format
+msgid "%s duplicated in %s\n"
+msgstr "%s duplikasi dalam %s\n"
+
+#: elf32-spu.c:3568
+#, c-format
+msgid "%s duplicated\n"
+msgstr "%s duplikasi\n"
+
+#: elf32-spu.c:3575
+msgid "sorry, no support for duplicate object files in auto-overlay script\n"
+msgstr "maaf, tidak ada dukungan untuk duplikasi berkas objek dalam auto-overlay script\n"
+
+#: elf32-spu.c:3605
+msgid "non-overlay size of 0x%v plus maximum overlay size of 0x%v exceeds local store\n"
+msgstr "ukuran non-overlay dari 0x%v plus maksimul overlay size dari 0x%v melebihi lokal store\n"
+
+#: elf32-spu.c:3741
+msgid "%B:%A%s exceeds overlay size\n"
+msgstr "%B:%A%s melebihi ukuran overlay\n"
+
+#: elf32-spu.c:3862
+msgid "Stack size for call graph root nodes.\n"
+msgstr "Ukuran stack untuk panggilan graph titik root.\n"
+
+#: elf32-spu.c:3863
+msgid ""
+"\n"
+"Stack size for functions.  Annotations: '*' max stack, 't' tail call\n"
+msgstr ""
+"\n"
+"Ukuran stack untuk fungsi. Anotasi: '*' max stack, 't' tail call\n"
+
+#: elf32-spu.c:3871
+msgid "Maximum stack required is 0x%v\n"
+msgstr "Maksimal stack dibutuhkan adalah 0x%v\n"
+
+#: elf32-spu.c:4067
+msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'"
+msgstr "%B(%s=0x%lx): tidak teresolf %s relokasi terhadap simbol `%s'"
+
+#: elf32-v850.c:165
+#, c-format
+msgid "Variable `%s' cannot occupy in multiple small data regions"
+msgstr "Variabel `%s' tidak dapat mengisi dalam beberapa daerah data kecil"
+
+#: elf32-v850.c:168
+#, c-format
+msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions"
+msgstr "Variabel `%s' hanya dapat berada dalam satu dari kecil, nol, dan sangat kecil daerah data"
+
+#: elf32-v850.c:171
+#, c-format
+msgid "Variable `%s' cannot be in both small and zero data regions simultaneously"
+msgstr "Variabel `%s' tidak dapat berada dalam kecil dan nol daerah data secara bersamaan"
+
+#: elf32-v850.c:174
+#, c-format
+msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously"
+msgstr "Variabel `%s' tidak dapat berada dalam kecil dan sangat kecil daerah data secara bersamaan"
+
+#: elf32-v850.c:177
+#, c-format
+msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously"
+msgstr "variabel `%s' tidak dapat dalam nol dan kecil daerah data secara bersamaan"
+
+#: elf32-v850.c:480
+#, c-format
+msgid "FAILED to find previous HI16 reloc\n"
+msgstr "GAGAL untuk menemukan relokasi HI16 sebelumnya\n"
+
+#: elf32-v850.c:1715
+msgid "could not locate special linker symbol __gp"
+msgstr "tidak dapat menemukan simbol linker spesial __gp"
+
+#: elf32-v850.c:1719
+msgid "could not locate special linker symbol __ep"
+msgstr "tidak dapat menemukan simbol linker spesial __ep"
+
+#: elf32-v850.c:1723
+msgid "could not locate special linker symbol __ctbp"
+msgstr "tidak dapat menemukan simbol linker spesial __ctbp"
+
+#: elf32-v850.c:1873
+msgid "%B: Architecture mismatch with previous modules"
+msgstr "%B: Arsitektur tidak cocok dengan modul sebelumnya"
+
+#: elf32-v850.c:1892
+#, c-format
+msgid "private flags = %lx: "
+msgstr "private flags = %lx: "
+
+#: elf32-v850.c:1897
+#, c-format
+msgid "v850 architecture"
+msgstr "v850 arsitektur"
+
+#: elf32-v850.c:1898
+#, c-format
+msgid "v850e architecture"
+msgstr "v850e arsitektur"
+
+#: elf32-v850.c:1899
+#, c-format
+msgid "v850e1 architecture"
+msgstr "v850e1 arsitektur"
+
+#: elf32-vax.c:541
+#, c-format
+msgid " [nonpic]"
+msgstr " [bukan-pic]"
+
+#: elf32-vax.c:544
+#, c-format
+msgid " [d-float]"
+msgstr " [d-float]"
+
+#: elf32-vax.c:547
+#, c-format
+msgid " [g-float]"
+msgstr " [g-float]"
+
+#: elf32-vax.c:657
+#, c-format
+msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld"
+msgstr "%s: peringatan: GOT ditambahkan dari %ld ke `%s' tidak cocok dengan penambahan GOT sebelumnya dari %ld"
+
+#: elf32-vax.c:1589
+#, c-format
+msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored"
+msgstr "%s: peringatan: PLT ditambahkan dari %d ke `%s' dari %s bagian diabaikan"
+
+#: elf32-vax.c:1726
+#, c-format
+msgid "%s: warning: %s relocation against symbol `%s' from %s section"
+msgstr "%s: peringatan: %s relokasi terhadap simbol `%s' dari bagian %s"
+
+#: elf32-vax.c:1732
+#, c-format
+msgid "%s: warning: %s relocation to 0x%x from %s section"
+msgstr "%s: peringatan: relokasi %s ke 0x%x dari daerah %s"
+
+#: elf32-xstormy16.c:451 elf32-ia64.c:2794 elf64-ia64.c:2794
+msgid "non-zero addend in @fptr reloc"
+msgstr "bukan-nol ditambahkan dalam @fptr relokasi"
+
+#: elf32-xtensa.c:911
+msgid "%B(%A): invalid property table"
+msgstr "%B(%A): tabel properti tidak valid"
+
+#: elf32-xtensa.c:2734
+msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)"
+msgstr "%B(%A+0x%lx): ofset relokasi diluar jangkauan (size=0x%x)"
+
+#: elf32-xtensa.c:2813 elf32-xtensa.c:2934
+msgid "dynamic relocation in read-only section"
+msgstr "relokasi dinamis dalam bagian baca-saja"
+
+#: elf32-xtensa.c:2910
+msgid "TLS relocation invalid without dynamic sections"
+msgstr "relokasi TLS tidak valid tanpa bagian dinamis"
+
+#: elf32-xtensa.c:3127
+msgid "internal inconsistency in size of .got.loc section"
+msgstr "internal tidak konsisten dalam ukuran dari daerah .got.loc"
+
+#: elf32-xtensa.c:3437
+msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x"
+msgstr "%B: tipe mesin tidak kompatibel. Keluaran adalah 0x%x. Masukan adalah 0x%x"
+
+#: elf32-xtensa.c:4666 elf32-xtensa.c:4674
+msgid "Attempt to convert L32R/CALLX to CALL failed"
+msgstr "Mencoba untuk mengubah L32R/CALLX ke CALL gagal"
+
+#: elf32-xtensa.c:6276 elf32-xtensa.c:6352 elf32-xtensa.c:7468
+msgid "%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"
+msgstr "%B(%A+0x%lx): tidak dapat mendeko instruksi; mungkin konfigurasi tidak cocok"
+
+#: elf32-xtensa.c:7208
+msgid "%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch"
+msgstr "%B(%A+0x%lx): tidak dapat mendeko instruksi untuk XTENSA_ASM_SIMPLIFY relokasi; mungkin konfigurasi tidak cocok"
+
+#: elf32-xtensa.c:8969
+msgid "invalid relocation address"
+msgstr "alamat relokasi tidak valid"
+
+#: elf32-xtensa.c:9018
+msgid "overflow after relaxation"
+msgstr "overflow setelah relaksasi"
+
+#: elf32-xtensa.c:10154
+msgid "%B(%A+0x%lx): unexpected fix for %s relocation"
+msgstr "%B(%A+0x%lx): unexpected fix untuk relokasi %s"
+
+#: elf64-alpha.c:452
+msgid "GPDISP relocation did not find ldah and lda instructions"
+msgstr "GPDISP relokasi tidak dapat menemukan instruksi ldah dan lda"
+
+#: elf64-alpha.c:2416
+msgid "%B: .got subsegment exceeds 64K (size %d)"
+msgstr "%B: .got subsegmen melebihi 64K (size %d)"
+
+#: elf64-alpha.c:4296 elf64-alpha.c:4308
+msgid "%B: gp-relative relocation against dynamic symbol %s"
+msgstr "%B: gp-relative relokasi terhadap simbol dinamis %s"
+
+#: elf64-alpha.c:4334 elf64-alpha.c:4469
+msgid "%B: pc-relative relocation against dynamic symbol %s"
+msgstr "%B: pc-relative relokasi terhadap simbol dinamis %s"
+
+#: elf64-alpha.c:4362
+msgid "%B: change in gp: BRSGP %s"
+msgstr "%B: perubahan dalam gp: BRSGP %s"
+
+#: elf64-alpha.c:4387
+msgid "<unknown>"
+msgstr "<tidak dikenal>"
+
+#: elf64-alpha.c:4392
+msgid "%B: !samegp reloc against symbol without .prologue: %s"
+msgstr "%B: !samegp relokasi terhadap simbol tanpa .prologue: %s"
+
+#: elf64-alpha.c:4444
+msgid "%B: unhandled dynamic relocation against %s"
+msgstr "%B: relokasi dinamis tidak ditangani terhadap %s"
+
+#: elf64-alpha.c:4476
+msgid "%B: pc-relative relocation against undefined weak symbol %s"
+msgstr "%B: pc-relative relokasi terhadap simbol lemah tidak terdefinisi %s"
+
+#: elf64-alpha.c:4536
+msgid "%B: dtp-relative relocation against dynamic symbol %s"
+msgstr "%B: dtp-relative relokasi terhadap simbol dinamis %s"
+
+#: elf64-alpha.c:4559
+msgid "%B: tp-relative relocation against dynamic symbol %s"
+msgstr "%B: tp-relative relokasi terhadap simbol dinamis %s"
+
+#: elf64-hppa.c:2071
+#, c-format
+msgid "stub entry for %s cannot load .plt, dp offset = %ld"
+msgstr "masukan stub untuk %s tidak dapat diload .plt, dp ofset = %ld"
+
+#: elf64-mmix.c:1177
+#, c-format
+msgid ""
+"%s: Internal inconsistency error for value for\n"
+" linker-allocated global register: linked: 0x%lx%08lx != relaxed: 0x%lx%08lx\n"
+msgstr ""
+"%s: Internal tidak konsisten error untuk nilai untuk\n"
+" linker-allocated global register: terhubung: 0x%lx%08lx != relaxed: 0x%lx%08lx\n"
+
+#: elf64-mmix.c:1618
+#, c-format
+msgid "%s: base-plus-offset relocation against register symbol: (unknown) in %s"
+msgstr "%s: base-plus-offset relokasi terhadap simbol register: (tidak diketahui) dalam %s"
+
+#: elf64-mmix.c:1623
+#, c-format
+msgid "%s: base-plus-offset relocation against register symbol: %s in %s"
+msgstr "%s: base-plus-offset relokasi terhadap simbol register: %s dalam %s"
+
+#: elf64-mmix.c:1667
+#, c-format
+msgid "%s: register relocation against non-register symbol: (unknown) in %s"
+msgstr "%s: register relokasi terhadap non-register simbol: (tidak diketahui) dalam %s"
+
+#: elf64-mmix.c:1672
+#, c-format
+msgid "%s: register relocation against non-register symbol: %s in %s"
+msgstr "%s: register relokasi terhadap bukan-register simbol: %s dalam %s"
+
+#: elf64-mmix.c:1709
+#, c-format
+msgid "%s: directive LOCAL valid only with a register or absolute value"
+msgstr "%s: direktif LOKAL hanya valid dengan sebuah register atau nilai absolut"
+
+#: elf64-mmix.c:1737
+#, c-format
+msgid "%s: LOCAL directive: Register $%ld is not a local register.  First global register is $%ld."
+msgstr "%s: LOKAL direktif: Register $%ld bukan sebuah lokal register. Pertama global registar adala $%ld."
+
+#: elf64-mmix.c:2201
+#, c-format
+msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n"
+msgstr "%s: Error: multiple definisi dari `%s'; awal dari %s adalah diset dalam sebuah sebelum berkas terlink\n"
+
+#: elf64-mmix.c:2259
+msgid "Register section has contents\n"
+msgstr "Daerah register memiliki isi\n"
+
+#: elf64-mmix.c:2451
+#, c-format
+msgid ""
+"Internal inconsistency: remaining %u != max %u.\n"
+"  Please report this bug."
+msgstr ""
+"Internal tidak konsisten: sisa %u != max %u.\n"
+"  Tolong laporkan bug ini."
+
+#: elf64-ppc.c:2561 libbfd.c:978
+msgid "%B: compiled for a big endian system and target is little endian"
+msgstr "%B: dikompile untuk sebuah sistem big endian dan target adalah little endian"
+
+#: elf64-ppc.c:2564 libbfd.c:980
+msgid "%B: compiled for a little endian system and target is big endian"
+msgstr "%B: dikompile untuk sebuah sistem little endian dan target adalah big endian"
+
+#: elf64-ppc.c:6065
+#, c-format
+msgid "copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc"
+msgstr "salin relokasi terhadap `%s' membutuhkan lazy plt linking; hindari konfigurasi LD_BIND_NOW=1 atau upgrade gcc"
+
+#: elf64-ppc.c:6486
+msgid "dynreloc miscount for %B, section %A"
+msgstr "dynareloc miscount untuk %B, bagian %A"
+
+#: elf64-ppc.c:6570
+msgid "%B: .opd is not a regular array of opd entries"
+msgstr "%B: .opd adalah bukan array regular dari masukan opd"
+
+#: elf64-ppc.c:6579
+msgid "%B: unexpected reloc type %u in .opd section"
+msgstr "%B: tipe relokasi %u tidak diduga dalam bagian .opd"
+
+#: elf64-ppc.c:6600
+msgid "%B: undefined sym `%s' in .opd section"
+msgstr "%B: tidak terdefinisi simbol `%s' dalam bagian .opd"
+
+#: elf64-ppc.c:7377 elf64-ppc.c:7754
+#, c-format
+msgid "%s defined in removed toc entry"
+msgstr "%s terdefinisi dalam masukan toc terhapus"
+
+#: elf64-ppc.c:8581
+#, c-format
+msgid "long branch stub `%s' offset overflow"
+msgstr "stub brach panjang `%s' ofset overflow"
+
+#: elf64-ppc.c:8640
+#, c-format
+msgid "can't find branch stub `%s'"
+msgstr "tidak dapat menemukan branch stub `%s'"
+
+#: elf64-ppc.c:8702 elf64-ppc.c:8822
+#, c-format
+msgid "linkage table error against `%s'"
+msgstr "linkage tabel error terhadap `%s'"
+
+#: elf64-ppc.c:8978
+#, c-format
+msgid "can't build branch stub `%s'"
+msgstr "tidak dapat membuat branch stub `%s'"
+
+#: elf64-ppc.c:9451
+msgid "%B section %A exceeds stub group size"
+msgstr "%B bagian %A melebihi ukuran grup stub"
+
+#: elf64-ppc.c:10090
+#, c-format
+msgid ""
+"linker stubs in %u group%s\n"
+"  branch       %lu\n"
+"  toc adjust   %lu\n"
+"  long branch  %lu\n"
+"  long toc adj %lu\n"
+"  plt call     %lu"
+msgstr ""
+"linker stubs dalam %u grup %s\n"
+"  cabang         %lu\n"
+"  toc adjust     %lu\n"
+"  cabang panjang %lu\n"
+"  long toc adj   %lu\n"
+"  plt call       %lu"
+
+#: elf64-ppc.c:10769
+msgid "%B(%A+0x%lx): automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc"
+msgstr "%B(%A+0x%lx): otomatis multiple TOC tidak didukung menggunakan berkas crt anda; rekompile dengan -mminimal-toc atau upgrade gcc"
+
+#: elf64-ppc.c:10777
+msgid "%B(%A+0x%lx): sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern"
+msgstr "%B(%A+0x%lx): sibling call optimization ke `%s' tidak membolehkan otomatis multiple TOC; rekompile dengan -mminimal-toc atau -fno-optimize-sibling-calls, atau buat `%s' extern"
+
+#: elf64-ppc.c:11427
+msgid "%B: relocation %s is not supported for symbol %s."
+msgstr "%B: relokasi %s tidak didukung untuk simbol %s."
+
+#: elf64-ppc.c:11509
+msgid "%B: error: relocation %s not a multiple of %d"
+msgstr "%B: error: relokasi %s bukan multiple dari %d"
+
+#: elf64-sh64.c:1701
+#, c-format
+msgid "%s: error: unaligned relocation type %d at %08x reloc %08x\n"
+msgstr "%s: error: tipe relokasi %d unaligned di %08x relokasi %08x\n"
+
+#: elf64-sparc.c:439
+msgid "%B: Only registers %%g[2367] can be declared using STT_REGISTER"
+msgstr "%B: Hanya register %%g[2367] dapat dideklarasikan menggunakan STT_REGISTER"
+
+#: elf64-sparc.c:459
+msgid "Register %%g%d used incompatibly: %s in %B, previously %s in %B"
+msgstr "Register %%g%d digunakan tidak kompatibel: %s dalam %B, sebelumnya %s dalam %B"
+
+#: elf64-sparc.c:482
+msgid "Symbol `%s' has differing types: REGISTER in %B, previously %s in %B"
+msgstr "Simbol `%s' memiliki tipe berbeda: REGISTER dalam %B, sebelumnya %s dalam %B"
+
+#: elf64-sparc.c:527
+msgid "Symbol `%s' has differing types: %s in %B, previously REGISTER in %B"
+msgstr "Simbol `%s' memiliki tipe berbeda: %s dalam %B, sebelumnya REGISTER dalam %B"
+
+#: elf64-sparc.c:678
+msgid "%B: linking UltraSPARC specific with HAL specific code"
+msgstr "%B: menghubungkan UltraSPARC spesifik dengan HAL spesifik kode"
+
+#: elf64-x86-64.c:1047 elf64-x86-64.c:1207 elfxx-mips.c:7834
+msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC"
+msgstr "%B: relokasi %s terhadap `%s' tidak dapat digunkan ketika membuat sebuah objek terbagi; rekompile dengan -fPIC"
+
+#: elf64-x86-64.c:1138
+msgid "%B: '%s' accessed both as normal and thread local symbol"
+msgstr "%B: '%s' keduanya diakses secara normal dan thread simbol lokal"
+
+#: elf64-x86-64.c:2559
+msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object"
+msgstr "%B: relokasi R_X86_64_GOTOFF64 terhadap fungsi terproteksi `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi"
+
+#: elf64-x86-64.c:2670
+msgid "; recompile with -fPIC"
+msgstr "; rekompile dengan -fPIC"
+
+#: elf64-x86-64.c:2675
+msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s"
+msgstr "%B: relokasi %s terhadap %s `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi%s"
+
+#: elf64-x86-64.c:2677
+msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s"
+msgstr "%B: relokasi %s terhadap tidak terdefinisi %s `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi %s"
+
+#: elfcode.h:795
+#, c-format
+msgid "warning: %s has a corrupt string table index - ignoring"
+msgstr "peringatan: %s memiliki sebuah string tabel korup index - diabaikan"
+
+#: elfcode.h:1201
+#, c-format
+msgid "%s: version count (%ld) does not match symbol count (%ld)"
+msgstr "%s: versi terhitung (%ld) tidak cocok dengan simbol terhitung (%ld)"
+
+#: elfcode.h:1435
+#, c-format
+msgid "%s(%s): relocation %d has invalid symbol index %ld"
+msgstr "%s(%s): relokasi %d memiliki indek simbol tidak valid %ld"
+
+#: elfcore.h:251
+msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu."
+msgstr "Peringatan: %B terpotong: diperkirakan ukuran berkas core >= %lu, ditemukan: %lu."
+
+#: elflink.c:1028
+msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A"
+msgstr "%s: TLS definisi dalam %B bagian %A tidak cocok bukan-TLS definisi dalam %B bagian %A"
+
+#: elflink.c:1032
+msgid "%s: TLS reference in %B mismatches non-TLS reference in %B"
+msgstr "%s: TLS referensi dalam %B tidak cocok bukan-TLS referensi dalam %B"
+
+#: elflink.c:1036
+msgid "%s: TLS definition in %B section %A mismatches non-TLS reference in %B"
+msgstr "%s: TLS definisi dalam %B bagian %A tidak cocok bukan-TLS referensi dalam %B"
+
+#: elflink.c:1040
+msgid "%s: TLS reference in %B mismatches non-TLS definition in %B section %A"
+msgstr "%s: TLS referensi dalam %B tidak cocok bukan-TLS definisi dalam %B bagian %A"
+
+#: elflink.c:1654
+msgid "%B: unexpected redefinition of indirect versioned symbol `%s'"
+msgstr "%B: tidak diduga redefinisi dari indirek versioned simbol `%s'"
+
+#: elflink.c:1982
+msgid "%B: version node not found for symbol %s"
+msgstr "%B: titik versi tidak ditemukan untuk simbol %s"
+
+#: elflink.c:2130
+msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'"
+msgstr "%B: bad relokasi simbol indeks (0x%lx >= 0x%lx) untuk ofset 0x%lx dalam daerah `%A'"
+
+#: elflink.c:2327
+msgid "%B: relocation size mismatch in %B section %A"
+msgstr "%B: ukuran relokasi tidak cocok dalam %B bagian %A"
+
+#: elflink.c:2629
+#, c-format
+msgid "warning: type and size of dynamic symbol `%s' are not defined"
+msgstr "peringatan: tipe dan ukuran dari simbol dinamis `%s' tidak terdefinisi"
+
+#: elflink.c:3953
+msgid "%B: %s: invalid version %u (max %d)"
+msgstr "%B: %s: versi %u tidak valid (max %d)"
+
+#: elflink.c:3989
+msgid "%B: %s: invalid needed version %d"
+msgstr "%B: %s: tidak valid dibutuhkan versi %d"
+
+#: elflink.c:4172
+msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A"
+msgstr "Peringatan: alignmen %u dari simbol umum `%s' dalam %B adalah lebih besar daripada alignment (%u) dari bagian ini %A"
+
+#: elflink.c:4178
+msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B"
+msgstr "Peringatan: alignment %u dari simbol `%s' dalam %B adalah lebih kecil daripada %u dalam %B"
+
+#: elflink.c:4193
+msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B"
+msgstr "Peringatan: ukuran dari simbol `%s' berubah dari %lu dalam %B ke %lu dalam %B"
+
+#: elflink.c:4371
+#, c-format
+msgid "%s: invalid DSO for symbol `%s' definition"
+msgstr "%s: tidak valid DSO untuk simbol `%s' definisi"
+
+#: elflink.c:5621
+#, c-format
+msgid "%s: undefined version: %s"
+msgstr "%s: versi tidak terdefinisi: %s"
+
+#: elflink.c:5689
+msgid "%B: .preinit_array section is not allowed in DSO"
+msgstr "%B: .preinit_array bagian tidak diperbolehkan dalam DSO"
+
+#: elflink.c:7414
+#, c-format
+msgid "undefined %s reference in complex symbol: %s"
+msgstr "undefined %s referensi dalam simbol kompleks: %s"
+
+#: elflink.c:7568
+#, c-format
+msgid "unknown operator '%c' in complex symbol"
+msgstr "operator tidak diketahui '%c' dalam simbol kompleks"
+
+#: elflink.c:7904 elflink.c:7921 elflink.c:7958 elflink.c:7975
+msgid "%B: Unable to sort relocs - they are in more than one size"
+msgstr "%B: Tidak dapat mengurutkan relokasi - mereka berada dalam lebih dari satu ukuran"
+
+#: elflink.c:7935 elflink.c:7989
+msgid "%B: Unable to sort relocs - they are of an unknown size"
+msgstr "%B: Tidak dapat mengurutkan relokasi - mereka dari ukuran yang tidak diketahui"
+
+#: elflink.c:8038
+msgid "Not enough memory to sort relocations"
+msgstr "Tidak cukup memori untuk mengurutkan relokasi"
+
+#: elflink.c:8227
+msgid "%B: Too many sections: %d (>= %d)"
+msgstr "%B: Terlalu banyak bagian: %d (>= %d)"
+
+#: elflink.c:8461
+msgid "%B: %s symbol `%s' in %B is referenced by DSO"
+msgstr "%B: %s simbol `%s' dalam %B adalah direferensikan oleh DSO"
+
+#: elflink.c:8544
+msgid "%B: could not find output section %A for input section %A"
+msgstr "%B: tidak dapat menemukan bagian keluaran %A untuk daerah masukan %A"
+
+#: elflink.c:8655
+msgid "%B: %s symbol `%s' isn't defined"
+msgstr "%B: %s simbol `%s' tidak didefinisikan"
+
+#: elflink.c:9141
+msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol"
+msgstr "error: %B berisi sebuah relokasi (0x%s) untuk daerah %A yang mereferensikan sebuah bukan-exist simbol global"
+
+#: elflink.c:9205
+msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n"
+msgstr "%X`%s' direferensikan dalam daerah `%A' dari %B: didefinisikan dalam daerah diabaikan `%A' dari %B\n"
+
+#: elflink.c:9825
+msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections"
+msgstr "%A memiliki keduanya terurut [`%A' dalam %B] dan daerah tidak terurut [`%A' dalam %B]"
+
+#: elflink.c:9830
+#, c-format
+msgid "%A has both ordered and unordered sections"
+msgstr "%A memiliki daerah terurut dan tidak terurut"
+
+#: elflink.c:10715 elflink.c:10759
+msgid "%B: could not find output section %s"
+msgstr "%B: tidak dapat menemukan daerah keluaran %s"
+
+#: elflink.c:10720
+#, c-format
+msgid "warning: %s section has zero size"
+msgstr "peringatan: %s daerah memiliki ukuran nol"
+
+#: elflink.c:10824
+msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n"
+msgstr "%P: peringatan: membuat sebuah DT_TEXTREL dalam sebuah objek terbagi.\n"
+
+#: elflink.c:11006
+msgid "%P%X: can not read symbols: %E\n"
+msgstr "%P%X: tidak dapat membaca simbol: %E\n"
+
+#: elflink.c:11313
+msgid "Removing unused section '%s' in file '%B'"
+msgstr "Menghapus daerah tidak digunakan '%s' dalam berkas '%B'"
+
+#: elflink.c:11525
+msgid "Warning: gc-sections option ignored"
+msgstr "Peringatan: gc-sections opsi diabaikan"
+
+#: elflink.c:12056
+msgid "%B: ignoring duplicate section `%A'"
+msgstr "%B: peringatan daerah duplikasi `%A'"
+
+#: elflink.c:12063 elflink.c:12070
+msgid "%B: duplicate section `%A' has different size"
+msgstr "%B: daerah duplikasi `%A' memiliki ukuran berbeda"
+
+#: elflink.c:12078 elflink.c:12083
+msgid "%B: warning: could not read contents of section `%A'"
+msgstr "%B: peringatan: tidak dapat membaca isi dari daerah `%A'"
+
+#: elflink.c:12087
+msgid "%B: warning: duplicate section `%A' has different contents"
+msgstr "%B: peringatan: duplikasi daerah `%A' memiliki isi berbeda"
+
+#: elflink.c:12166 linker.c:3080
+msgid "%F%P: already_linked_table: %E"
+msgstr "%F%P: already_linked_table: %E"
+
+#: elfxx-mips.c:1197
+msgid "static procedure (no name)"
+msgstr "prosedur statis (tidak bernama)"
+
+#: elfxx-mips.c:5562
+msgid "%B: %A+0x%lx: jump to stub routine which is not jal"
+msgstr "%B: %A+0x%lx: lompat ke routine stub dimana bukan jal"
+
+#: elfxx-mips.c:6206 elfxx-mips.c:6427
+msgid "%B: Warning: bad `%s' option size %u smaller than its header"
+msgstr "%B: Peringatan: opsi `%s' buruk ukuran %u lebih kecil dari headernya"
+
+#: elfxx-mips.c:7174 elfxx-mips.c:7299
+msgid "%B: Warning: cannot determine the target function for stub section `%s'"
+msgstr "%B: Peringatan: tidak dapat menentukan fungsi terget untuk daerah stub `%s'"
+
+#: elfxx-mips.c:7428
+msgid "%B: Malformed reloc detected for section %s"
+msgstr "%B: Malformed relokasi terdeteksi untuk daerah %s"
+
+#: elfxx-mips.c:7468
+msgid "%B: GOT reloc at 0x%lx not expected in executables"
+msgstr "%B: GOT relokasi di 0x%lx tidak diduga dalam aplikasi"
+
+#: elfxx-mips.c:7566
+msgid "%B: CALL16 reloc at 0x%lx not against global symbol"
+msgstr "%B: CALL16 relokasi di 0x%lx tidak terhadap simbol global"
+
+#: elfxx-mips.c:8244
+#, c-format
+msgid "non-dynamic relocations refer to dynamic symbol %s"
+msgstr "bukan-dinamis relokasi refer ke simbol dinamis %s"
+
+#: elfxx-mips.c:8947
+msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'"
+msgstr "%B: Tidak dapat menemukan cocok LO16 relokasi terhadap `%s' untuk %s di 0x%lx di daerah `%A'"
+
+#: elfxx-mips.c:9086
+msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
+msgstr "daerah data-kecil melebihi 64KB; dibawah data-kecil batas ukuran (lihat opsi -G)"
+
+#: elfxx-mips.c:11887
+#, c-format
+msgid "%s: illegal section name `%s'"
+msgstr "%s: nama daerah `%s' ilegal"
+
+#: elfxx-mips.c:12262 elfxx-mips.c:12288
+msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float"
+msgstr "Peringatan: %B menggunakan 0msingle-float, %B menggunakan -mdouble-float"
+
+#: elfxx-mips.c:12274 elfxx-mips.c:12330
+msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64"
+msgstr "Peringatan: %B menggunakan -msingle-float, %B menggunakan -mips32r2 -mfp64"
+
+#: elfxx-mips.c:12300 elfxx-mips.c:12336
+msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64"
+msgstr "Peringatan: %B menggunakan -mdouble-float, %B menggunakan -mips32r2 -mfp64"
+
+#: elfxx-mips.c:12378
+msgid "%B: endianness incompatible with that of the selected emulation"
+msgstr "%B: endianness tidak kompatibel dengan yang dipilih di emulasi"
+
+#: elfxx-mips.c:12389
+msgid "%B: ABI is incompatible with that of the selected emulation"
+msgstr "%B: ABI tidak kompatibel dengan yang dipilih di emulasi"
+
+#: elfxx-mips.c:12470
+msgid "%B: warning: linking abicalls files with non-abicalls files"
+msgstr "%B: peringatan: menghubungkan berkas abicalls dengan berkas bukan-abicalls"
+
+#: elfxx-mips.c:12487
+msgid "%B: linking 32-bit code with 64-bit code"
+msgstr "%B: menghubungkan 32-bit kode dengan 64-bit kode"
+
+#: elfxx-mips.c:12515
+msgid "%B: linking %s module with previous %s modules"
+msgstr "%B: menghubungkan %s modul dengan modul %s sebelumnya"
+
+#: elfxx-mips.c:12538
+msgid "%B: ABI mismatch: linking %s module with previous %s modules"
+msgstr "%B: ABI tidak cocok: menghubungkan modul %s dengan modul %s sebelumnya"
+
+#: elfxx-mips.c:12702
+#, c-format
+msgid " [abi=O32]"
+msgstr " [abi=032]"
+
+#: elfxx-mips.c:12704
+#, c-format
+msgid " [abi=O64]"
+msgstr " [abi=064]"
+
+#: elfxx-mips.c:12706
+#, c-format
+msgid " [abi=EABI32]"
+msgstr " [abi=EABI32]"
+
+#: elfxx-mips.c:12708
+#, c-format
+msgid " [abi=EABI64]"
+msgstr " [abi=EABI64]"
+
+#: elfxx-mips.c:12710
+#, c-format
+msgid " [abi unknown]"
+msgstr " [abi tidak diketahui]"
+
+#: elfxx-mips.c:12712
+#, c-format
+msgid " [abi=N32]"
+msgstr " [abi=N32]"
+
+#: elfxx-mips.c:12714
+#, c-format
+msgid " [abi=64]"
+msgstr " [abi=64]"
+
+#: elfxx-mips.c:12716
+#, c-format
+msgid " [no abi set]"
+msgstr " [bukan abi set]"
+
+#: elfxx-mips.c:12737
+#, c-format
+msgid " [unknown ISA]"
+msgstr " [ISA tidak diketahui]"
+
+#: elfxx-mips.c:12748
+#, c-format
+msgid " [not 32bitmode]"
+msgstr " [bukan 32bitmode]"
+
+#: elfxx-sparc.c:440
+#, c-format
+msgid "invalid relocation type %d"
+msgstr "tipe relokasi %d tidak valid"
+
+#: elfxx-sparc.c:2976
+msgid "%B: probably compiled without -fPIC?"
+msgstr "%B: mungkin dikompile tanpa -fPIC?"
+
+#: i386linux.c:455 m68klinux.c:459 sparclinux.c:453
+#, c-format
+msgid "Output file requires shared library `%s'\n"
+msgstr "Berkas keluaran membutuhkan library terbagi `%s'\n"
+
+#: i386linux.c:463 m68klinux.c:467 sparclinux.c:461
+#, c-format
+msgid "Output file requires shared library `%s.so.%s'\n"
+msgstr "Berkas keluaran membutuhkan library terbagi `%s.so.%s'\n"
+
+#: i386linux.c:652 i386linux.c:702 m68klinux.c:659 m68klinux.c:707
+#: sparclinux.c:651 sparclinux.c:701
+#, c-format
+msgid "Symbol %s not defined for fixups\n"
+msgstr "Simbol %s tidak terdefinisi untuk fixups\n"
+
+#: i386linux.c:726 m68klinux.c:731 sparclinux.c:725
+msgid "Warning: fixup count mismatch\n"
+msgstr "Peringatan: jumlah fixup tidak cocok\n"
+
+#: ieee.c:159
+#, c-format
+msgid "%s: string too long (%d chars, max 65535)"
+msgstr "%s: string terlalu panjang (%d chars, max 65535)"
+
+#: ieee.c:286
+#, c-format
+msgid "%s: unrecognized symbol `%s' flags 0x%x"
+msgstr "%s: simbol tidak dikenal `%s' flags 0x%x"
+
+#: ieee.c:788
+msgid "%B: unimplemented ATI record %u for symbol %u"
+msgstr "%B: tidak terimplementasi ATI record %u untuk simbol %u"
+
+#: ieee.c:812
+msgid "%B: unexpected ATN type %d in external part"
+msgstr "%B: tipe ATN %d tidak diduga dalam bagian luar"
+
+#: ieee.c:834
+msgid "%B: unexpected type after ATN"
+msgstr "%B: tidak diduga tipe sesudah ATN"
+
+#: ihex.c:230
+msgid "%B:%d: unexpected character `%s' in Intel Hex file"
+msgstr "%B:%d: tidak diduga karakter `%s' dalam berkas Intel Hex"
+
+#: ihex.c:337
+msgid "%B:%u: bad checksum in Intel Hex file (expected %u, found %u)"
+msgstr "%B:%u: checksum buruk dalam berkas Intel Hex (diperkirakan %u, ditemukan %u)"
+
+#: ihex.c:392
+msgid "%B:%u: bad extended address record length in Intel Hex file"
+msgstr "%B:%u: buruk extended alamat panjang record dalam berkas Intel Hex"
+
+#: ihex.c:409
+msgid "%B:%u: bad extended start address length in Intel Hex file"
+msgstr "%B:%u: buruk extended awal panjang alamat dalam berkas Intel Hex "
+
+#: ihex.c:426
+msgid "%B:%u: bad extended linear address record length in Intel Hex file"
+msgstr "%B:%u: buruk extended alamat linear panjang record dalam berkas Intel Hex"
+
+#: ihex.c:443
+msgid "%B:%u: bad extended linear start address length in Intel Hex file"
+msgstr "%B:%u: buruk extended panjang awal alamat linear dalam berkas Intel Hex"
+
+#: ihex.c:460
+msgid "%B:%u: unrecognized ihex type %u in Intel Hex file"
+msgstr "%B:%u: tidak dikenal ihex tipe %u dalam berkas Intel Hex"
+
+#: ihex.c:579
+msgid "%B: internal error in ihex_read_section"
+msgstr "%B: internal error dalam ihex_read_section"
+
+#: ihex.c:613
+msgid "%B: bad section length in ihex_read_section"
+msgstr "%B: buruk panjang bagian dalam ihex_read_section"
+
+#: ihex.c:825
+#, c-format
+msgid "%s: address 0x%s out of range for Intel Hex file"
+msgstr "%s: alamat 0x%s diluar jangkauan untuk berkas Intel Hex"
+
+#: libbfd.c:1008
+#, c-format
+msgid "Deprecated %s called at %s line %d in %s\n"
+msgstr "Deprecated %s dipanggil di %s baris %d dalam %s\n"
+
+#: libbfd.c:1011
+#, c-format
+msgid "Deprecated %s called\n"
+msgstr "Deprecated %s dipanggil\n"
+
+#: linker.c:1874
+msgid "%B: indirect symbol `%s' to `%s' is a loop"
+msgstr "%B: indirect simbol `%s' ke `%s' adalah sebuah loop"
+
+#: linker.c:2740
+#, c-format
+msgid "Attempt to do relocatable link with %s input and %s output"
+msgstr "Mencoba untuk merelokasi link dengan masukan %s dan keluaran %s"
+
+#: linker.c:3047
+msgid "%B: warning: ignoring duplicate section `%A'\n"
+msgstr "%B: peringatan: mengabaikan bagiann terduplikasi `%A'\n"
+
+#: linker.c:3061
+msgid "%B: warning: duplicate section `%A' has different size\n"
+msgstr "%B: peringatan: bagian terduplikasi `%A' memiliki ukuran berbeda\n"
+
+#: merge.c:828
+#, c-format
+msgid "%s: access beyond end of merged section (%ld)"
+msgstr "%s: akses diluar dari daerah merged (%ld)"
+
+#: mmo.c:456
+#, c-format
+msgid "%s: No core to allocate section name %s\n"
+msgstr "%s: Tidak ada core untuk alokasi daerah nama %s\n"
+
+#: mmo.c:531
+#, c-format
+msgid "%s: No core to allocate a symbol %d bytes long\n"
+msgstr "%s: Tidak ada core untuk alokasi sebuah simbol %d bytes long\n"
+
+#: mmo.c:1187
+#, c-format
+msgid "%s: invalid mmo file: initialization value for $255 is not `Main'\n"
+msgstr "%s: berkas mmo tidak valid: nilai inisialisasi untuk $255 bukan `Main'\n"
+
+#: mmo.c:1332
+#, c-format
+msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n"
+msgstr "%s: tidak didukung dengan urutan karakter lebar 0x%02X 0x%02X sesudah nama simbol dimulai dengan `%s'\n"
+
+#: mmo.c:1566
+#, c-format
+msgid "%s: invalid mmo file: unsupported lopcode `%d'\n"
+msgstr "%s: berkas mmo tidak valid: lopcode tidak didukung `%d'\n"
+
+#: mmo.c:1576
+#, c-format
+msgid "%s: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n"
+msgstr "%s: berka mmo tidak valid: diduga YZ = 1 diperoleh YZ = %d untuk lop_quote\n"
+
+#: mmo.c:1612
+#, c-format
+msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n"
+msgstr "%s: berkas mmo tidak valid: diduga z = 1 atau z = 2, diperoleh z = %d untuk lop_loc\n"
+
+#: mmo.c:1658
+#, c-format
+msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n"
+msgstr "%s: berkas mmo tidak valid: diduga z = 1 atau z = 2, diperoleh z = %d untuk lop_fixo\n"
+
+#: mmo.c:1697
+#, c-format
+msgid "%s: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n"
+msgstr "%s: berkas mmo tidak valid: diduga y = 0, diperoleh y = %d untuk lop_fixrx\n"
+
+#: mmo.c:1706
+#, c-format
+msgid "%s: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n"
+msgstr "%s: berkas mmo tidak valid: diduga z = 16 atau z = 24, diperoleh z = %d untuk lop_fixrx\n"
+
+#: mmo.c:1729
+#, c-format
+msgid "%s: invalid mmo file: leading byte of operand word must be 0 or 1, got %d for lop_fixrx\n"
+msgstr "%s: berkas mmo tidak valid: awalan byte dari kata operand harus 0 atau 1, diperoleh %d untuk lop_fixrx\n"
+
+#: mmo.c:1752
+#, c-format
+msgid "%s: cannot allocate file name for file number %d, %d bytes\n"
+msgstr "%s: tidak dapat mengalokasikan nama berkas untuk nomor berkas %d, %d bytes\n"
+
+#: mmo.c:1772
+#, c-format
+msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n"
+msgstr "%s: berkas mmo tidak valid: nomor berkas %d `%s', telah dimasukan sebagai `%s'\n"
+
+#: mmo.c:1785
+#, c-format
+msgid "%s: invalid mmo file: file name for number %d was not specified before use\n"
+msgstr "%s: berkas mmo tidak valid: nama berkas untuk nomor %d telah dispesifikasikan sebelum digunakan\n"
+
+#: mmo.c:1892
+#, c-format
+msgid "%s: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n"
+msgstr "%s: berkas mmo tidak valid: daerah y dan z dari lop_stab bukan-nol, y: %d, z: %d\n"
+
+#: mmo.c:1928
+#, c-format
+msgid "%s: invalid mmo file: lop_end not last item in file\n"
+msgstr "%s: berkas mmo tidak valid: lop_end bukan item terakhir dalam berkas\n"
+
+#: mmo.c:1941
+#, c-format
+msgid "%s: invalid mmo file: YZ of lop_end (%ld) not equal to the number of tetras to the preceding lop_stab (%ld)\n"
+msgstr "%s: berkas mmo tidak valid: YZ dari lop_end (%ld) tidak sama dengan jumlah dari tetras yang mengawali lop_stab (%ld)\n"
+
+#: mmo.c:2651
+#, c-format
+msgid "%s: invalid symbol table: duplicate symbol `%s'\n"
+msgstr "%s: tabel simbol tidak valid: duplikasi simbol `%s'\n"
+
+#: mmo.c:2894
+#, c-format
+msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n"
+msgstr "%s: Definisi simbol buruk: `Main' di set ke %s daripada ke awal alamat %s\n"
+
+#: mmo.c:2986
+#, c-format
+msgid "%s: warning: symbol table too large for mmo, larger than 65535 32-bit words: %d.  Only `Main' will be emitted.\n"
+msgstr "%s: Peringatan: tabel simbol terlalu besar untuk mmo, lebih besar daripada 65535 32-bit words: %d. Hanya `Main' yang akan dikeluarkan.\n"
+
+#: mmo.c:3031
+#, c-format
+msgid "%s: internal error, symbol table changed size from %d to %d words\n"
+msgstr "%s: internal error, tabel simbol berubah ukuran dari %d ke %d kata\n"
+
+#: mmo.c:3083
+#, c-format
+msgid "%s: internal error, internal register section %s had contents\n"
+msgstr "%s: internal error, daerah internal register %s memiliki isi\n"
+
+#: mmo.c:3134
+#, c-format
+msgid "%s: no initialized registers; section length 0\n"
+msgstr "%s: tidak ada register yang terinisialisasi; panjang daerah 0\n"
+
+#: mmo.c:3140
+#, c-format
+msgid "%s: too many initialized registers; section length %ld\n"
+msgstr "%s: terlalu banyak register yang terinisialisasi; panjang daerah %ld\n"
+
+#: mmo.c:3145
+#, c-format
+msgid "%s: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n"
+msgstr "%s: awal alaman tidak valid untuk register terinisialisasi dari panjang %ld: 0x%lx%08lx\n"
+
+#: oasys.c:881
+#, c-format
+msgid "%s: can not represent section `%s' in oasys"
+msgstr "%s: tidak dapat merepresentasikan daerah `%s' dalam oasys"
+
+#: osf-core.c:139
+#, c-format
+msgid "Unhandled OSF/1 core file section type %d\n"
+msgstr "Tidak tertangani berkas core OSF/1 daerah tipe %d\n"
+
+#: pe-mips.c:607
+msgid "%B: `ld -r' not supported with PE MIPS objects\n"
+msgstr "%B: `ld -r' tidak didukung dengan PE MIPS objek\n"
+
+#. OK, at this point the following variables are set up:
+#. src = VMA of the memory we're fixing up
+#. mem = pointer to memory we're fixing up
+#. val = VMA of what we need to refer to.
+#: pe-mips.c:723
+msgid "%B: unimplemented %s\n"
+msgstr "%B: tidak terimplementasi %s\n"
+
+#: pe-mips.c:749
+msgid "%B: jump too far away\n"
+msgstr "%B: lompat terlalu jauh\n"
+
+#: pe-mips.c:775
+msgid "%B: bad pair/reflo after refhi\n"
+msgstr "%B: pasangan/reflo buruk setelah refhi\n"
+
+#. XXX code yet to be written.
+#: peicode.h:759
+msgid "%B: Unhandled import type; %x"
+msgstr "%B: Tipe impor tidak tertangani; %x"
+
+#: peicode.h:764
+msgid "%B: Unrecognised import type; %x"
+msgstr "%B: Tipe impor tidak dikenal; %x"
+
+#: peicode.h:778
+msgid "%B: Unrecognised import name type; %x"
+msgstr "%B: Nama tipe impor tidak dikenal; %x"
+
+#: peicode.h:1161
+msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive"
+msgstr "%B: Tipe mesin (0x%x) tidak dikenal dalam Import Library Format archive"
+
+#: peicode.h:1173
+msgid "%B: Recognised but unhandled machine type (0x%x) in Import Library Format archive"
+msgstr "%B: Dikenal tetapi tidak tertangani tipe mesin (0x%x) dalam Import Library Format archive"
+
+#: peicode.h:1191
+msgid "%B: size field is zero in Import Library Format header"
+msgstr "%B: besar field adalah nol dalam Import Library Format header"
+
+#: peicode.h:1222
+msgid "%B: string not null terminated in ILF object file."
+msgstr "%B: string tidak diakhiri kosong dalam berkas objek ILF."
+
+#: ppcboot.c:414
+#, c-format
+msgid ""
+"\n"
+"ppcboot header:\n"
+msgstr ""
+"\n"
+"ppcboot header:\n"
+
+#: ppcboot.c:415
+#, c-format
+msgid "Entry offset        = 0x%.8lx (%ld)\n"
+msgstr "Ofset masukan       = 0x%.8lx (%ld)\n"
+
+#: ppcboot.c:417
+#, c-format
+msgid "Length              = 0x%.8lx (%ld)\n"
+msgstr "Panjang             = 0x%.8lx (%ld)\n"
+
+#: ppcboot.c:421
+#, c-format
+msgid "Flag field          = 0x%.2x\n"
+msgstr "Tanda daerah        = 0x%.2x\n"
+
+#: ppcboot.c:427
+#, c-format
+msgid "Partition name      = \"%s\"\n"
+msgstr "Nama partisi        = \"%s\"\n"
+
+#: ppcboot.c:446
+#, c-format
+msgid ""
+"\n"
+"Partition[%d] start  = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
+msgstr ""
+"\n"
+"Awal partisi[%d]     = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
+
+#: ppcboot.c:452
+#, c-format
+msgid "Partition[%d] end    = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
+msgstr "Akhir partisi[%d]    = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
+
+#: ppcboot.c:458
+#, c-format
+msgid "Partition[%d] sector = 0x%.8lx (%ld)\n"
+msgstr "Daerah partisi[%d]   = 0x%.8lx (%ld)\n"
+
+#: ppcboot.c:460
+#, c-format
+msgid "Partition[%d] length = 0x%.8lx (%ld)\n"
+msgstr "Panjang partisi[%d]  = 0x%.8lx (%ld)\n"
+
+#: som.c:5137
+#, c-format
+msgid ""
+"\n"
+"Exec Auxiliary Header\n"
+msgstr ""
+"\n"
+"Tambahan exec header\n"
+
+#: som.c:5440
+msgid "som_sizeof_headers unimplemented"
+msgstr "som_sizeof_headers tidak terimplementasi"
+
+#: srec.c:261
+msgid "%B:%d: Unexpected character `%s' in S-record file\n"
+msgstr "%B:%d: Karakter `%s' tidak diduga dalam berkas S-record\n"
+
+#: srec.c:567 srec.c:600
+msgid "%B:%d: Bad checksum in S-record file\n"
+msgstr "%B:%d: Checksum buruk dalam berkas S-record\n"
+
+#: stabs.c:279
+msgid "%B(%A+0x%lx): Stabs entry has invalid string index."
+msgstr "%B(%A+0x%lx): Masukan stabs memiliki index string tidak valid."
+
+#: syms.c:1067
+msgid "Unsupported .stab relocation"
+msgstr "Relokasi .stab tidak didukung"
+
+#: vms-gsd.c:338
+#, c-format
+msgid "bfd_make_section (%s) failed"
+msgstr "bfd_make_section (%s) gagal"
+
+#: vms-gsd.c:353
+#, c-format
+msgid "bfd_set_section_flags (%s, %x) failed"
+msgstr "bfd_set_section_flags (%s, %x) gagal"
+
+#: vms-gsd.c:388
+#, c-format
+msgid "Size mismatch section %s=%lx, %s=%lx"
+msgstr "Ukuran tidak cocok daerah %s=%lx, %s=%lx"
+
+#: vms-gsd.c:679
+#, c-format
+msgid "unknown gsd/egsd subtype %d"
+msgstr "tidak diketahui gds/egsd subtype %d"
+
+#: vms-hdr.c:328
+msgid "Object module NOT error-free !\n"
+msgstr "Modul objek Tidak bebas-error !\n"
+
+#: vms-misc.c:474
+#, c-format
+msgid "Stack overflow (%d) in _bfd_vms_push"
+msgstr "Stack overflow (%d) dalam _bfd_vms_push"
+
+#: vms-misc.c:489
+msgid "Stack underflow in _bfd_vms_pop"
+msgstr "Stack underflow dalam _bfd_vms_pop"
+
+#: vms-misc.c:808
+msgid "_bfd_vms_output_counted called with zero bytes"
+msgstr "_bfd_vms_output_counted dipanggil dengan zero bytes"
+
+#: vms-misc.c:813
+msgid "_bfd_vms_output_counted called with too many bytes"
+msgstr "_bfd_vms_output_counted dipanggil dengan terlalu banyak bytes"
+
+#: vms-misc.c:931
+#, c-format
+msgid "Symbol %s replaced by %s\n"
+msgstr "Simbol %s digantikan oleh %s\n"
+
+#: vms-misc.c:990
+#, c-format
+msgid "failed to enter %s"
+msgstr "gagal untuk memasuki %s"
+
+#: vms-tir.c:57
+msgid "No Mem !"
+msgstr "Tidak ada Memori !"
+
+#: vms-tir.c:300
+#, c-format
+msgid "bad section index in %s"
+msgstr "Indek daerah buruk dalam %s"
+
+#: vms-tir.c:313
+#, c-format
+msgid "unsupported STA cmd %s"
+msgstr "perintah %s STA tidak didukung"
+
+#: vms-tir.c:318 vms-tir.c:1120
+#, c-format
+msgid "reserved STA cmd %d"
+msgstr "perintah %d STA direserve"
+
+#: vms-tir.c:410 vms-tir.c:432
+#, c-format
+msgid "%s: no symbol \"%s\""
+msgstr "%s: tidak ada simbol \"%s\""
+
+#. Unsigned shift.
+#. Rotate.
+#. Redefine symbol to current location.
+#. Define a literal.
+#: vms-tir.c:497 vms-tir.c:606 vms-tir.c:704 vms-tir.c:721 vms-tir.c:728
+#: vms-tir.c:736 vms-tir.c:1440
+#, c-format
+msgid "%s: not supported"
+msgstr "%s: tidak didukung"
+
+#: vms-tir.c:502 vms-tir.c:1297
+#, c-format
+msgid "%s: not implemented"
+msgstr "%s: tidak terimplementasi"
+
+#: vms-tir.c:506 vms-tir.c:1301
+#, c-format
+msgid "reserved STO cmd %d"
+msgstr "reserved STO perintah %d"
+
+#: vms-tir.c:621 vms-tir.c:1445
+#, c-format
+msgid "reserved OPR cmd %d"
+msgstr "reserved OPR perintah %d"
+
+#: vms-tir.c:681 vms-tir.c:1509
+#, c-format
+msgid "reserved CTL cmd %d"
+msgstr "reserved CTL perintah %d"
+
+#. stack byte from image
+#. arg: none.
+#: vms-tir.c:1028
+msgid "stack-from-image not implemented"
+msgstr "stack-from-image tidak terimplementasi"
+
+#: vms-tir.c:1046
+msgid "stack-entry-mask not fully implemented"
+msgstr "stack-entry-mask tidak terimplementasi secara penuh"
+
+#. compare procedure argument
+#. arg: cs	symbol name
+#. by	argument index
+#. da	argument descriptor
+#.
+#. compare argument descriptor with symbol argument (ARG$V_PASSMECH)
+#. and stack TRUE (args match) or FALSE (args dont match) value.
+#: vms-tir.c:1060
+msgid "PASSMECH not fully implemented"
+msgstr "PASSMECH tidak terimplementasi secara penuh"
+
+#: vms-tir.c:1079
+msgid "stack-local-symbol not fully implemented"
+msgstr "stack-local-symbol tidak terimplementasi secara penuh"
+
+#: vms-tir.c:1092
+msgid "stack-literal not fully implemented"
+msgstr "stack-literal tidak terimplementasi secara penuh"
+
+#: vms-tir.c:1113
+msgid "stack-local-symbol-entry-point-mask not fully implemented"
+msgstr "stack-local-symbol-entry-point-mask tidak terimplementasi secara penuh"
+
+#: vms-tir.c:1387 vms-tir.c:1399 vms-tir.c:1411 vms-tir.c:1423 vms-tir.c:1488
+#: vms-tir.c:1496 vms-tir.c:1504
+#, c-format
+msgid "%s: not fully implemented"
+msgstr "%s: tidak terimplementasi secara penuh"
+
+#: vms-tir.c:1562
+#, c-format
+msgid "obj code %d not found"
+msgstr "obj kode %d tidak ditemukan"
+
+#: vms-tir.c:1870
+#, c-format
+msgid "SEC_RELOC with no relocs in section %s"
+msgstr "SEC_RELOC dengan tidak ada relokasi dalam daerah %s"
+
+#: vms-tir.c:2152
+#, c-format
+msgid "Unhandled relocation %s"
+msgstr "Relokasi %s tidak tertangani"
+
+#: xcofflink.c:566
+#, c-format
+msgid "%s: XCOFF shared object when not producing XCOFF output"
+msgstr "%s: XCOFF objek shared ketika tidak menghasilkan keluaran XCOFF"
+
+#: xcofflink.c:587
+#, c-format
+msgid "%s: dynamic object with no .loader section"
+msgstr "%s: objek dinamis dengan tidak ada daerah .loader"
+
+#: xcofflink.c:1150
+msgid "%B: `%s' has line numbers but no enclosing section"
+msgstr "%B: `%s' memiliki nomor baris tetapi tidak ditutupi daerah"
+
+#: xcofflink.c:1202
+msgid "%B: class %d symbol `%s' has no aux entries"
+msgstr "%B: kelas %d simbol `%s' tidak memiliki tambahan masukan"
+
+#: xcofflink.c:1225
+msgid "%B: symbol `%s' has unrecognized csect type %d"
+msgstr "%B: simbol `%s' memiliki tipe %d csect tidak dikenal"
+
+#: xcofflink.c:1237
+msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d"
+msgstr "%B: simbol XTY_ER buruk `%s': kelas %d scnum %d scnlen %d"
+
+#: xcofflink.c:1273
+msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d"
+msgstr "%B: XMC_TC0 simbol `%s' adalah kelas %d scnlen %d"
+
+#: xcofflink.c:1419
+msgid "%B: csect `%s' not in enclosing section"
+msgstr "%B: csect `%s' tidak dalam lingkup daerah"
+
+#: xcofflink.c:1526
+msgid "%B: misplaced XTY_LD `%s'"
+msgstr "%B: salah tempat XTY_LD `%s'"
+
+#: xcofflink.c:1842
+msgid "%B: reloc %s:%d not in csect"
+msgstr "%B: relokasi %s:%d tidak dalam csect"
+
+#: xcofflink.c:2640
+#, c-format
+msgid "%s: no such symbol"
+msgstr "%s: tidak ada simbol seperti itu"
+
+#: xcofflink.c:2869
+#, c-format
+msgid "warning: attempt to export undefined symbol `%s'"
+msgstr "peringatan: mencoba untuk mengekspor simbol tidak terdefinisi `%s'"
+
+#: xcofflink.c:3036
+msgid "error: undefined symbol __rtinit"
+msgstr "error: simbol tidak terdefinisi __rtinit"
+
+#: xcofflink.c:3656
+#, c-format
+msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling"
+msgstr "TOC overflow: 0x%lx > 0x10000; coba -mminimal-toc ketika mengkompile"
+
+#: xcofflink.c:4492
+msgid "%B: loader reloc in unrecognized section `%A'"
+msgstr "%B: loader relokasi dalam daerah tidak dikenal `%A'"
+
+#: xcofflink.c:4513
+msgid "%B: `%s' in loader reloc but not loader sym"
+msgstr "%B: `%s' dalam relokasi loader tetapi bukan loader sym"
+
+#: xcofflink.c:4528
+msgid "%B: loader reloc in read-only section %A"
+msgstr "%B: loader relokasi dalam daerah baca-saja %A"
+
+#: xcofflink.c:4937 xcofflink.c:4999 xcofflink.c:5294
+#, c-format
+msgid "%s: loader reloc in unrecognized section `%s'"
+msgstr "%s: loader relokasi dalam daerah `%s' tidak dikenal"
+
+#: xcofflink.c:5305
+#, c-format
+msgid "%s: `%s' in loader reloc but not loader sym"
+msgstr "%s: `%s' dalam relokasi loader tetapi bukan loader sym"
+
+#: elf32-ia64.c:1037 elf64-ia64.c:1037
+msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch."
+msgstr "%B: Tidak dapat relaks br di 0x%lx dalam daerah `%A'. Tolong gunakan brl atau indirect branch."
+
+#: elf32-ia64.c:2742 elf64-ia64.c:2742
+msgid "@pltoff reloc against local symbol"
+msgstr "@pltoff relokasi terhadap simbol lokal"
+
+#: elf32-ia64.c:4317 elf64-ia64.c:4317
+#, c-format
+msgid "%s: short data segment overflowed (0x%lx >= 0x400000)"
+msgstr "%s: short data segment overflowed (0x%lx >= 0x400000)"
+
+#: elf32-ia64.c:4328 elf64-ia64.c:4328
+#, c-format
+msgid "%s: __gp does not cover short data segment"
+msgstr "%s: __gp tidak meliputi segmen data pendek"
+
+#: elf32-ia64.c:4598 elf64-ia64.c:4598
+msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'"
+msgstr "%B: bukan-pic kode dengan relokasi imm terhadap simbol dinamis `%s'"
+
+#: elf32-ia64.c:4665 elf64-ia64.c:4665
+msgid "%B: @gprel relocation against dynamic symbol %s"
+msgstr "%B: @gprel relokasi terhadap simbol dinamis %s"
+
+#: elf32-ia64.c:4728 elf64-ia64.c:4728
+msgid "%B: linking non-pic code in a position independent executable"
+msgstr "%B: menghubungkan dengan kode bukan-pic dalam sebuah executable bebas posisi"
+
+#: elf32-ia64.c:4865 elf64-ia64.c:4865
+msgid "%B: @internal branch to dynamic symbol %s"
+msgstr "%B: @internal branck ke simbol dinamis %s"
+
+#: elf32-ia64.c:4867 elf64-ia64.c:4867
+msgid "%B: speculation fixup to dynamic symbol %s"
+msgstr "%B: spekulasi fixup ke simbol dinamis %s"
+
+#: elf32-ia64.c:4869 elf64-ia64.c:4869
+msgid "%B: @pcrel relocation against dynamic symbol %s"
+msgstr "%B: @pcrel relokasi terhadap simbol dinamis %s"
+
+#: elf32-ia64.c:5066 elf64-ia64.c:5066
+msgid "unsupported reloc"
+msgstr "relokasi tidak didukung"
+
+#: elf32-ia64.c:5104 elf64-ia64.c:5104
+msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'."
+msgstr "%B: hilang daerah TLS untuk relokasi %s terhadap `%s' di 0x%lx dalam daerah `%A'."
+
+#: elf32-ia64.c:5119 elf64-ia64.c:5119
+msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)."
+msgstr "%B: Tidak dapat relaks br (%s) ke `%s' di 0x%lx dalam daerah `%A' dengan ukuran 0x%lx (> 0x1000000)."
+
+#: elf32-ia64.c:5375 elf64-ia64.c:5375
+msgid "%B: linking trap-on-NULL-dereference with non-trapping files"
+msgstr "%B: menghubungkan trap-on-NULL-dereference dengan berkas bukan-trapping"
+
+#: elf32-ia64.c:5384 elf64-ia64.c:5384
+msgid "%B: linking big-endian files with little-endian files"
+msgstr "%B: menghubungkan berkas big-endian dengan berkas little-endian"
+
+#: elf32-ia64.c:5393 elf64-ia64.c:5393
+msgid "%B: linking 64-bit files with 32-bit files"
+msgstr "%B: menghubungkan berkas 64-bit dengan berkas 32-bit"
+
+#: elf32-ia64.c:5402 elf64-ia64.c:5402
+msgid "%B: linking constant-gp files with non-constant-gp files"
+msgstr "%B: menghubungkan berkas constant-gp dengan berkas bukan-constant-gp"
+
+#: elf32-ia64.c:5412 elf64-ia64.c:5412
+msgid "%B: linking auto-pic files with non-auto-pic files"
+msgstr "%B: menghubungkan berkas auto-pic dengan berkas non-auto-pic"
+
+#: peigen.c:1000 pepigen.c:1000 pex64igen.c:1000
+#, c-format
+msgid "%s: line number overflow: 0x%lx > 0xffff"
+msgstr "%s: nomor baris overflow: 0x%lx > 0xffff"
+
+#: peigen.c:1027 pepigen.c:1027 pex64igen.c:1027
+msgid "Export Directory [.edata (or where ever we found it)]"
+msgstr "Direktori expor [.edata (atau dimanapun kita menemukannya)]"
+
+#: peigen.c:1028 pepigen.c:1028 pex64igen.c:1028
+msgid "Import Directory [parts of .idata]"
+msgstr "Impor Direktori [bagian dari .idata]"
+
+#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029
+msgid "Resource Directory [.rsrc]"
+msgstr "Resource Direktori [.rsrc]"
+
+#: peigen.c:1030 pepigen.c:1030 pex64igen.c:1030
+msgid "Exception Directory [.pdata]"
+msgstr "Exception Direktori [.pdata]"
+
+#: peigen.c:1031 pepigen.c:1031 pex64igen.c:1031
+msgid "Security Directory"
+msgstr "Direktori Keamanan"
+
+#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032
+msgid "Base Relocation Directory [.reloc]"
+msgstr "Dasar Relokasi Direktori [.reloc]"
+
+#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033
+msgid "Debug Directory"
+msgstr "Debug Direktori"
+
+#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034
+msgid "Description Directory"
+msgstr "Direktori Penjelasan"
+
+#: peigen.c:1035 pepigen.c:1035 pex64igen.c:1035
+msgid "Special Directory"
+msgstr "Direktori Spesial"
+
+#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036
+msgid "Thread Storage Directory [.tls]"
+msgstr "Thread Storage Direktori [.tls]"
+
+#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037
+msgid "Load Configuration Directory"
+msgstr "Direktori Konfigurasi Beban"
+
+#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038
+msgid "Bound Import Directory"
+msgstr "Direktori Bound Impor"
+
+#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039
+msgid "Import Address Table Directory"
+msgstr "Direktori Impor Tabel Alamat"
+
+#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040
+msgid "Delay Import Directory"
+msgstr "Delay Impor Direktori"
+
+#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041
+msgid "CLR Runtime Header"
+msgstr "CLR Runtime Header"
+
+#: peigen.c:1042 pepigen.c:1042 pex64igen.c:1042
+msgid "Reserved"
+msgstr "Reserved"
+
+#: peigen.c:1102 pepigen.c:1102 pex64igen.c:1102
+#, c-format
+msgid ""
+"\n"
+"There is an import table, but the section containing it could not be found\n"
+msgstr ""
+"\n"
+"Ada tabel impor, tetapi daerah yang berisi itu tidak dapat ditemukan\n"
+
+#: peigen.c:1107 pepigen.c:1107 pex64igen.c:1107
+#, c-format
+msgid ""
+"\n"
+"There is an import table in %s at 0x%lx\n"
+msgstr ""
+"\n"
+"Ada impor tabel di %s pada 0x%lx\n"
+
+#: peigen.c:1150 pepigen.c:1150 pex64igen.c:1150
+#, c-format
+msgid ""
+"\n"
+"Function descriptor located at the start address: %04lx\n"
+msgstr ""
+"\n"
+"Deskripsi fungsi ditempatkan di awal alamat: %04lx\n"
+
+#: peigen.c:1153 pepigen.c:1153 pex64igen.c:1153
+#, c-format
+msgid "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n"
+msgstr "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n"
+
+#: peigen.c:1161 pepigen.c:1161 pex64igen.c:1161
+#, c-format
+msgid ""
+"\n"
+"No reldata section! Function descriptor not decoded.\n"
+msgstr ""
+"\n"
+"Tidak ada daerah reldata! Deskripsi fungsi tidak terdekode.\n"
+
+#: peigen.c:1166 pepigen.c:1166 pex64igen.c:1166
+#, c-format
+msgid ""
+"\n"
+"The Import Tables (interpreted %s section contents)\n"
+msgstr ""
+"\n"
+"Tabel Impor (diinterpretasikan isi daerah %s)\n"
+
+#: peigen.c:1169 pepigen.c:1169 pex64igen.c:1169
+#, c-format
+msgid ""
+" vma:            Hint    Time      Forward  DLL       First\n"
+"                 Table   Stamp     Chain    Name      Thunk\n"
+msgstr ""
+"vma:             Tips    Waktu     Forward  DLL       Pertama\n"
+"                 Tabel   Stamp     Rantai   Nama      Thunk\n"
+
+#: peigen.c:1217 pepigen.c:1217 pex64igen.c:1217
+#, c-format
+msgid ""
+"\n"
+"\tDLL Name: %s\n"
+msgstr ""
+"\n"
+"\tNama DLL: %s\n"
+
+#: peigen.c:1228 pepigen.c:1228 pex64igen.c:1228
+#, c-format
+msgid "\tvma:  Hint/Ord Member-Name Bound-To\n"
+msgstr "\tvma:  Tips/Ord Nama-Anggota Terikat-Ke\n"
+
+#: peigen.c:1253 pepigen.c:1253 pex64igen.c:1253
+#, c-format
+msgid ""
+"\n"
+"There is a first thunk, but the section containing it could not be found\n"
+msgstr ""
+"\n"
+"Ada thunk pertama, tetapi daerah yang berisi itu tidak dapat ditemukan\n"
+
+#: peigen.c:1418 pepigen.c:1418 pex64igen.c:1418
+#, c-format
+msgid ""
+"\n"
+"There is an export table, but the section containing it could not be found\n"
+msgstr ""
+"\n"
+"Ada tabel expor, tetapi daerah yang berisi itu tidak dapat ditemukan\n"
+
+#: peigen.c:1427 pepigen.c:1427 pex64igen.c:1427
+#, c-format
+msgid ""
+"\n"
+"There is an export table in %s, but it does not fit into that section\n"
+msgstr ""
+"\n"
+"Ada tabel expor dalam %s, tetapi ini tidak masuk dalam daerah itu\n"
+
+#: peigen.c:1433 pepigen.c:1433 pex64igen.c:1433
+#, c-format
+msgid ""
+"\n"
+"There is an export table in %s at 0x%lx\n"
+msgstr ""
+"\n"
+"Ada sebuah tabel expor dalam %s di 0x%lx\n"
+
+#: peigen.c:1461 pepigen.c:1461 pex64igen.c:1461
+#, c-format
+msgid ""
+"\n"
+"The Export Tables (interpreted %s section contents)\n"
+"\n"
+msgstr ""
+"\n"
+"Tabel expor (diinterpretasikan isi daerah %s)\n"
+
+#: peigen.c:1465 pepigen.c:1465 pex64igen.c:1465
+#, c-format
+msgid "Export Flags \t\t\t%lx\n"
+msgstr "Tanda Expor \t\t\t%lx\n"
+
+#: peigen.c:1468 pepigen.c:1468 pex64igen.c:1468
+#, c-format
+msgid "Time/Date stamp \t\t%lx\n"
+msgstr "Waktu/Tanggal stamp \t\t%lx\n"
+
+#: peigen.c:1471 pepigen.c:1471 pex64igen.c:1471
+#, c-format
+msgid "Major/Minor \t\t\t%d/%d\n"
+msgstr "Mayor/Minor \t\t\t%d/%d\n"
+
+#: peigen.c:1474 pepigen.c:1474 pex64igen.c:1474
+#, c-format
+msgid "Name \t\t\t\t"
+msgstr "Nama \t\t\t\t"
+
+#: peigen.c:1480 pepigen.c:1480 pex64igen.c:1480
+#, c-format
+msgid "Ordinal Base \t\t\t%ld\n"
+msgstr "Dasar Ordinal \t\t\t%ld\n"
+
+#: peigen.c:1483 pepigen.c:1483 pex64igen.c:1483
+#, c-format
+msgid "Number in:\n"
+msgstr "Nomor dalam:\n"
+
+#: peigen.c:1486 pepigen.c:1486 pex64igen.c:1486
+#, c-format
+msgid "\tExport Address Table \t\t%08lx\n"
+msgstr "\tTabel Alamat Expor \t\t%08lx\n"
+
+#: peigen.c:1490 pepigen.c:1490 pex64igen.c:1490
+#, c-format
+msgid "\t[Name Pointer/Ordinal] Table\t%08lx\n"
+msgstr "\t[Nama Pointer/Ordinal] Tabel\t%08lx\n"
+
+#: peigen.c:1493 pepigen.c:1493 pex64igen.c:1493
+#, c-format
+msgid "Table Addresses\n"
+msgstr "Tabel Alamat\n"
+
+#: peigen.c:1496 pepigen.c:1496 pex64igen.c:1496
+#, c-format
+msgid "\tExport Address Table \t\t"
+msgstr "\tTabel Alamat Expor \t\t"
+
+#: peigen.c:1501 pepigen.c:1501 pex64igen.c:1501
+#, c-format
+msgid "\tName Pointer Table \t\t"
+msgstr "\tTabel Nama Pointer \t\t"
+
+#: peigen.c:1506 pepigen.c:1506 pex64igen.c:1506
+#, c-format
+msgid "\tOrdinal Table \t\t\t"
+msgstr "\tTabel Ordinal \t\t\t"
+
+#: peigen.c:1520 pepigen.c:1520 pex64igen.c:1520
+#, c-format
+msgid ""
+"\n"
+"Export Address Table -- Ordinal Base %ld\n"
+msgstr ""
+"\n"
+"Tabel Alamat Expor -- Ordinal Base %ld\n"
+
+#: peigen.c:1539 pepigen.c:1539 pex64igen.c:1539
+msgid "Forwarder RVA"
+msgstr "Forwarder RVA"
+
+#: peigen.c:1550 pepigen.c:1550 pex64igen.c:1550
+msgid "Export RVA"
+msgstr "Expor RVA"
+
+#: peigen.c:1557 pepigen.c:1557 pex64igen.c:1557
+#, c-format
+msgid ""
+"\n"
+"[Ordinal/Name Pointer] Table\n"
+msgstr ""
+"\n"
+"[Ordinal/Nama Pointer] Tabel\n"
+
+#: peigen.c:1617 peigen.c:1796 pepigen.c:1617 pepigen.c:1796 pex64igen.c:1617
+#: pex64igen.c:1796
+#, c-format
+msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n"
+msgstr "Peringatan, besar (%ld) daerah .pdata tidak dalam kelipatan dari %d\n"
+
+#: peigen.c:1621 peigen.c:1800 pepigen.c:1621 pepigen.c:1800 pex64igen.c:1621
+#: pex64igen.c:1800
+#, c-format
+msgid ""
+"\n"
+"The Function Table (interpreted .pdata section contents)\n"
+msgstr ""
+"\n"
+"Tabel Fungsi (diinterpretasikan isi daerah .pdata)\n"
+
+#: peigen.c:1624 pepigen.c:1624 pex64igen.c:1624
+#, c-format
+msgid " vma:\t\t\tBegin Address    End Address      Unwind Info\n"
+msgstr " vma:\t\t\tAwal  Alamat     Akhir Alamat     Unwind Informasi\n"
+
+#: peigen.c:1626 pepigen.c:1626 pex64igen.c:1626
+#, c-format
+msgid ""
+" vma:\t\tBegin    End      EH       EH       PrologEnd  Exception\n"
+"     \t\tAddress  Address  Handler  Data     Address    Mask\n"
+msgstr ""
+" vma:\t\tAwal     Akhir    EH       EH       PrologEnd  Exception\n"
+"     \t\tAlamat   Alamat   Handler  Data     Alamat     Topeng\n"
+
+#: peigen.c:1696 pepigen.c:1696 pex64igen.c:1696
+#, c-format
+msgid " Register save millicode"
+msgstr " Register simpan millicode"
+
+#: peigen.c:1699 pepigen.c:1699 pex64igen.c:1699
+#, c-format
+msgid " Register restore millicode"
+msgstr " Register restore millicode"
+
+#: peigen.c:1702 pepigen.c:1702 pex64igen.c:1702
+#, c-format
+msgid " Glue code sequence"
+msgstr " Urutan kode pengikat"
+
+#: peigen.c:1802 pepigen.c:1802 pex64igen.c:1802
+#, c-format
+msgid ""
+" vma:\t\tBegin    Prolog   Function Flags    Exception EH\n"
+"     \t\tAddress  Length   Length   32b exc  Handler   Data\n"
+msgstr ""
+" vma:\t\tMulai    Prolog   Fungsi   Flags    Exception EH\n"
+"     \t\tAlamat   Panjang  Panjang  32b exc  Handler   Data\n"
+
+#: peigen.c:1933 pepigen.c:1933 pex64igen.c:1933
+#, c-format
+msgid ""
+"\n"
+"\n"
+"PE File Base Relocations (interpreted .reloc section contents)\n"
+msgstr ""
+"\n"
+"\n"
+"Berkas Dasar Relokasi PE (diinterpretasikan isi daerah .reloc)\n"
+
+#: peigen.c:1963 pepigen.c:1963 pex64igen.c:1963
+#, c-format
+msgid ""
+"\n"
+"Virtual Address: %08lx Chunk size %ld (0x%lx) Number of fixups %ld\n"
+msgstr ""
+"\n"
+"Alamat Maya: %08lx Besar potongan %ld (0x%lx) Jumlah dari perbaikan %ld\n"
+
+#: peigen.c:1976 pepigen.c:1976 pex64igen.c:1976
+#, c-format
+msgid "\treloc %4d offset %4x [%4lx] %s"
+msgstr "\trelokasi %4d ofset %4x [%4lx] %s"
+
+#. The MS dumpbin program reportedly ands with 0xff0f before
+#. printing the characteristics field.  Not sure why.  No reason to
+#. emulate it here.
+#: peigen.c:2015 pepigen.c:2015 pex64igen.c:2015
+#, c-format
+msgid ""
+"\n"
+"Characteristics 0x%x\n"
+msgstr ""
+"\n"
+"Karakteristik 0x%x\n"
+
+#: peigen.c:2289 pepigen.c:2289 pex64igen.c:2289
+msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing"
+msgstr "%B: tidak dapat mengisi dalam DataDictionary[1] karena .idata$2 hilang"
+
+#: peigen.c:2307 pepigen.c:2307 pex64igen.c:2307
+msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing"
+msgstr "%B: tidak dapat mengisi dalam DataDictionary[1] karena .data$4 hilang"
+
+#: peigen.c:2326 pepigen.c:2326 pex64igen.c:2326
+msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing"
+msgstr "%B: tidak dapat mengisi dalam DataDictionary[12] karena .idata$5 hilang"
+
+#: peigen.c:2344 pepigen.c:2344 pex64igen.c:2344
+msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing"
+msgstr "%B: tidak dapat mengisi dalam DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] karena .idata$6 hilang"
+
+#: peigen.c:2364 pepigen.c:2364 pex64igen.c:2364
+msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing"
+msgstr "%B: tidak dapat mengisi dalam DataDictionary[9] karena __tls_used hilang"
diff --git a/bfd/po/vi.po b/bfd/po/vi.po
index f191edb..e0f3e12 100644
--- a/bfd/po/vi.po
+++ b/bfd/po/vi.po
@@ -6,10 +6,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: bfd 2.17.90\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-08-06 16:21-0400\n"
-"PO-Revision-Date: 2008-04-24 19:51+0930\n"
+"Project-Id-Version: bfd 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-09-23 22:51+0930\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
 "MIME-Version: 1.0\n"
@@ -35,142 +35,142 @@
 msgid "%B: Bad relocation record imported: %d"
 msgstr "%B: Đã nhập mục ghi định vị lại sai: %d"
 
-#: aoutx.h:1268 aoutx.h:1602
+#: aoutx.h:1268 aoutx.h:1604
 #, c-format
 msgid "%s: can not represent section `%s' in a.out object file format"
 msgstr "%s: không thể đại diện phân « %s » trong định dạng tập tin đối tượng a.out"
 
-#: aoutx.h:1568
+#: aoutx.h:1570
 #, c-format
 msgid "%s: can not represent section for symbol `%s' in a.out object file format"
 msgstr "%s: không thể đại diện phân cho ký hiệu « %s » trong định dạng tập tin đối tượng a.ou"
 
-#: aoutx.h:1570
+#: aoutx.h:1572
 msgid "*unknown*"
 msgstr "• không rõ •"
 
-#: aoutx.h:3987 aoutx.h:4313
+#: aoutx.h:3989 aoutx.h:4315
 msgid "%P: %B: unexpected relocation type\n"
 msgstr "%P: %B: kiểu định vị lại bất thường\n"
 
-#: aoutx.h:5347
+#: aoutx.h:5349
 #, c-format
 msgid "%s: relocatable link from %s to %s not supported"
 msgstr "%s: không hỗ trợ liên kết có khả năng định vị lại từ %s sang %s"
 
-#: archive.c:1766
+#: archive.c:2046
 msgid "Warning: writing archive was slow: rewriting timestamp\n"
 msgstr "Cảnh báo : ghi kho quá chậm nên đang ghi lại nhãn thời gian\n"
 
-#: archive.c:2029
+#: archive.c:2309
 msgid "Reading archive file mod timestamp"
 msgstr "Đang đọc nhãn thời gian sửa đổi tập tin kho"
 
-#: archive.c:2053
+#: archive.c:2333
 msgid "Writing updated armap timestamp"
 msgstr "Đang ghi nhãn thời gian armap đã cập nhật"
 
-#: bfd.c:289
+#: bfd.c:368
 msgid "No error"
 msgstr "Không có lỗi"
 
-#: bfd.c:290
+#: bfd.c:369
 msgid "System call error"
 msgstr "Lỗi gọi hệ thống"
 
-#: bfd.c:291
+#: bfd.c:370
 msgid "Invalid bfd target"
 msgstr "Đích bfd không hợp lệ"
 
-#: bfd.c:292
+#: bfd.c:371
 msgid "File in wrong format"
 msgstr "Tập tin có định dạng không đúng"
 
-#: bfd.c:293
+#: bfd.c:372
 msgid "Archive object file in wrong format"
 msgstr "Tập tin đối tượng kho có định dạng không đúng"
 
-#: bfd.c:294
+#: bfd.c:373
 msgid "Invalid operation"
 msgstr "Thao tác không hợp lệ"
 
-#: bfd.c:295
+#: bfd.c:374
 msgid "Memory exhausted"
 msgstr "Cạn bộ nhớ"
 
-#: bfd.c:296
+#: bfd.c:375
 msgid "No symbols"
 msgstr "Không có ký hiệu"
 
-#: bfd.c:297
+#: bfd.c:376
 msgid "Archive has no index; run ranlib to add one"
 msgstr "Kho không có chỉ mục: hãy chạy ranlib để thêm"
 
-#: bfd.c:298
+#: bfd.c:377
 msgid "No more archived files"
 msgstr "Không còn có tập tin đã lưu trữ nào nữa"
 
-#: bfd.c:299
+#: bfd.c:378
 msgid "Malformed archive"
 msgstr "Kho dạng sai"
 
-#: bfd.c:300
+#: bfd.c:379
 msgid "File format not recognized"
 msgstr "Không nhận ra định dạng tập tin"
 
-#: bfd.c:301
+#: bfd.c:380
 msgid "File format is ambiguous"
 msgstr "Định dạng tập tin mơ hồ"
 
-#: bfd.c:302
+#: bfd.c:381
 msgid "Section has no contents"
 msgstr "Phần không có nội dung"
 
-#: bfd.c:303
+#: bfd.c:382
 msgid "Nonrepresentable section on output"
 msgstr "Kết xuất có phần không thể đại diện được"
 
-#: bfd.c:304
+#: bfd.c:383
 msgid "Symbol needs debug section which does not exist"
 msgstr "Ký hiệu cần phần gỡ lỗi mà không tồn tại"
 
-#: bfd.c:305
+#: bfd.c:384
 msgid "Bad value"
 msgstr "Giá trị sai"
 
-#: bfd.c:306
+#: bfd.c:385
 msgid "File truncated"
 msgstr "Tập tin bị cắt ngắn"
 
-#: bfd.c:307
+#: bfd.c:386
 msgid "File too big"
 msgstr "Tập tin quá lớn"
 
-#: bfd.c:308
+#: bfd.c:387
 #, c-format
 msgid "Error reading %s: %s"
 msgstr "Gặp lỗi khi đọc %s: %s"
 
-#: bfd.c:309
+#: bfd.c:388
 msgid "#<Invalid error code>"
 msgstr "#<mã lỗi không hợp lệ>"
 
-#: bfd.c:830
+#: bfd.c:912
 #, c-format
 msgid "BFD %s assertion fail %s:%d"
 msgstr "BFD %s khắng định bị lỗi %s:%d"
 
-#: bfd.c:842
+#: bfd.c:924
 #, c-format
 msgid "BFD %s internal error, aborting at %s line %d in %s\n"
 msgstr "BFD %s lỗi nội bộ nên hủy bỏ tại %s dòng %d trong %s\n"
 
-#: bfd.c:846
+#: bfd.c:928
 #, c-format
 msgid "BFD %s internal error, aborting at %s line %d\n"
 msgstr "BFD %s lỗi nội bộ nên hủy bỏ tại %s dòng %d\n"
 
-#: bfd.c:848
+#: bfd.c:930
 msgid "Please report this bug.\n"
 msgstr "Hãy thông báo lỗi này.\n"
 
@@ -189,14 +189,10 @@
 msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx."
 msgstr "Cảnh báo : đang ghi phần « %s » vào khoảng bù tập tin rất lớn (tức là âm) 0x%lx."
 
-#: cache.c:238
+#: cache.c:222
 msgid "reopening %B: %s\n"
 msgstr "đang mở lại %B: %s\n"
 
-#: coff64-rs6000.c:2126 coff-rs6000.c:3624
-msgid "%B: symbol `%s' has unrecognized smclas %d"
-msgstr "%B: ký tự « %s » có smclas không nhận ra %d"
-
 #: coff-alpha.c:490
 msgid ""
 "%B: Cannot handle compressed Alpha binaries.\n"
@@ -209,7 +205,7 @@
 msgid "%B: unknown/unsupported relocation type %d"
 msgstr "%B: kiểu định vị lại không rõ hoặc không được hỗ trợ : %d"
 
-#: coff-alpha.c:899 coff-alpha.c:936 coff-alpha.c:2024 coff-mips.c:1002
+#: coff-alpha.c:899 coff-alpha.c:936 coff-alpha.c:2024 coff-mips.c:1003
 msgid "GP relative relocation used when GP not defined"
 msgstr "Chưa xác định GP thì sử dụng định vị lại tương đối GP"
 
@@ -225,22 +221,22 @@
 msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW"
 msgstr "%B: định vị lại không được hỗ trợ : ALPHA_R_GPRELLOW"
 
-#: coff-alpha.c:1574 elf32-m32r.c:2487 elf64-alpha.c:3953 elf64-alpha.c:4106
-#: elf32-ia64.c:4675 elf64-ia64.c:4675
+#: coff-alpha.c:1574 elf32-m32r.c:2487 elf64-alpha.c:3970 elf64-alpha.c:4125
+#: elf32-ia64.c:4465 elf64-ia64.c:4465
 msgid "%B: unknown relocation type %d"
 msgstr "%B: không rõ kiểu định vị lại %d"
 
-#: coff-arm.c:1036
+#: coff-arm.c:1039
 #, c-format
 msgid "%B: unable to find THUMB glue '%s' for `%s'"
 msgstr "%B: không tìm thấy keo hồ THUMB « %s » cho « %s »"
 
-#: coff-arm.c:1065
+#: coff-arm.c:1068
 #, c-format
 msgid "%B: unable to find ARM glue '%s' for `%s'"
 msgstr "%B: không tìm thấy keo hồ ARM « %s » cho « %s »"
 
-#: coff-arm.c:1367 elf32-arm.c:4167
+#: coff-arm.c:1370 elf32-arm.c:5453
 #, c-format
 msgid ""
 "%B(%s): warning: interworking not enabled.\n"
@@ -249,7 +245,7 @@
 "%B(%s): cảnh báo : chưa bật dùng ảnh hưởng lẫn nhau.\n"
 "  lần xuất hiện đầu tiên: %B: gọi arm tới thumb"
 
-#: coff-arm.c:1457
+#: coff-arm.c:1460
 #, c-format
 msgid ""
 "%B(%s): warning: interworking not enabled.\n"
@@ -260,188 +256,118 @@
 "  lần xuất hiện đầu tiên: %B: gọi thumb tới arm\n"
 "  coi như liên kết lại với « --support-old-code » được bật"
 
-#: coff-arm.c:1750 cofflink.c:3018 coff-tic80.c:695
+#: coff-arm.c:1755 coff-tic80.c:695 cofflink.c:3018
 msgid "%B: bad reloc address 0x%lx in section `%A'"
 msgstr "%B: địa chỉ định vị lại sai 0x%lx trong phần « %A »"
 
-#: coff-arm.c:2075
+#: coff-arm.c:2080
 msgid "%B: illegal symbol index in reloc: %d"
 msgstr "%B: chỉ mục ký hiệu cấm trong định vị lại: %d"
 
-#: coff-arm.c:2206
+#: coff-arm.c:2211
 #, c-format
 msgid "ERROR: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"
 msgstr "LỖI: %B được biên dịch cho APCS-%d, còn %B được biên dịch cho APCS-%d"
 
-#: coff-arm.c:2222 elf32-arm.c:7072
+#: coff-arm.c:2227 elf32-arm.c:8563
 #, c-format
 msgid "ERROR: %B passes floats in float registers, whereas %B passes them in integer registers"
 msgstr "LỖI: %B gửi trôi qua trong thanh ghi trôi, còn %B gửi chúng qua trong thanh ghi số nguyên"
 
-#: coff-arm.c:2225 elf32-arm.c:7076
+#: coff-arm.c:2230 elf32-arm.c:8567
 #, c-format
 msgid "ERROR: %B passes floats in integer registers, whereas %B passes them in float registers"
 msgstr "LỖI: %B gửi trôi qua trong thanh ghi số nguyên, còn %B gửi chúng qua trong thanh ghi trôi"
 
-#: coff-arm.c:2239
+#: coff-arm.c:2244
 #, c-format
 msgid "ERROR: %B is compiled as position independent code, whereas target %B is absolute position"
 msgstr "LỖI: %B được biên dịch như mã không phụ thuộc vào vị trí, còn %B là vị trí tuyệt đối"
 
-#: coff-arm.c:2242
+#: coff-arm.c:2247
 #, c-format
 msgid "ERROR: %B is compiled as absolute position code, whereas target %B is position independent"
 msgstr "LỖI: %B được biên dịch như mã vị trí tuyệt đối, còn %B không phụ thuộc vào vị trí"
 
-#: coff-arm.c:2270 elf32-arm.c:7141
+#: coff-arm.c:2275 elf32-arm.c:8632
 #, c-format
 msgid "Warning: %B supports interworking, whereas %B does not"
 msgstr "Cảnh báo : %B hỗ trợ ảnh hưởng lẫn nhau, còn %B thì không"
 
-#: coff-arm.c:2273 elf32-arm.c:7147
+#: coff-arm.c:2278 elf32-arm.c:8638
 #, c-format
 msgid "Warning: %B does not support interworking, whereas %B does"
 msgstr "Cảnh báo : %B không hỗ trợ ảnh hưởng lẫn nhau, còn %B thì có"
 
-#: coff-arm.c:2297
+#: coff-arm.c:2302
 #, c-format
 msgid "private flags = %x:"
 msgstr "các cờ riêng = %x:"
 
-#: coff-arm.c:2305 elf32-arm.c:7198
+#: coff-arm.c:2310 elf32-arm.c:8689
 #, c-format
 msgid " [floats passed in float registers]"
 msgstr " [các trôi được gửi qua trong thanh ghi trôi]"
 
-#: coff-arm.c:2307
+#: coff-arm.c:2312
 #, c-format
 msgid " [floats passed in integer registers]"
 msgstr " [các trôi được gửi qua trong thanh ghi số nguyên]"
 
-#: coff-arm.c:2310 elf32-arm.c:7201
+#: coff-arm.c:2315 elf32-arm.c:8692
 #, c-format
 msgid " [position independent]"
 msgstr " [không phụ thuộc vào vị trí]"
 
-#: coff-arm.c:2312
+#: coff-arm.c:2317
 #, c-format
 msgid " [absolute position]"
 msgstr " [vị trí tuyệt đối]"
 
-#: coff-arm.c:2316
+#: coff-arm.c:2321
 #, c-format
 msgid " [interworking flag not initialised]"
 msgstr " [chưa sở khởi cờ ảnh hưởng lẫn nhau]"
 
-#: coff-arm.c:2318
+#: coff-arm.c:2323
 #, c-format
 msgid " [interworking supported]"
 msgstr " [hỗ trợ ảnh hưởng lẫn nhau]"
 
-#: coff-arm.c:2320
+#: coff-arm.c:2325
 #, c-format
 msgid " [interworking not supported]"
 msgstr " [không hỗ trợ ảnh hưởng lẫn nhau]"
 
-#: coff-arm.c:2366 elf32-arm.c:6578
+#: coff-arm.c:2371 elf32-arm.c:8050
 #, c-format
 msgid "Warning: Not setting interworking flag of %B since it has already been specified as non-interworking"
 msgstr "Cảnh báo : không đang đặt cờ ảnh hưởng lẫn nhau của %B vì nó đã được xác định là không ảnh hưởng lẫn nhau"
 
-#: coff-arm.c:2370 elf32-arm.c:6582
+#: coff-arm.c:2375 elf32-arm.c:8054
 #, c-format
 msgid "Warning: Clearing the interworking flag of %B due to outside request"
 msgstr "Cảnh báo : Đang xoá cờ ảnh hưởng lẫn nhau của %B theo yêu cầu bên ngoài"
 
-#: coffcode.h:850
-msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'"
-msgstr "%B: cảnh báo : ký hiệu COMDAT « %s » không tương ứng vơi tên phần « %s »"
-
-#. Generate a warning message rather using the 'unhandled'
-#. variable as this will allow some .sys files generate by
-#. other toolchains to be processed.  See bugzilla issue 196.
-#: coffcode.h:1062
-msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"
-msgstr "%B: Cảnh báo: Đang lờ đi cờ của phần IMAGE_SCN_MEM_NOT_PAGED trong phần %s"
-
-#: coffcode.h:1117
-msgid "%B (%s): Section flag %s (0x%x) ignored"
-msgstr "%B (%s): Đã lờ đi cờ của phần %s (0x%x)"
-
-#: coffcode.h:2236
-#, c-format
-msgid "Unrecognized TI COFF target id '0x%x'"
-msgstr "Không nhận ra mã số đích TI COFF « 0x%x »"
-
-#: coffcode.h:2551
-msgid "%B: reloc against a non-existant symbol index: %ld"
-msgstr "%B: định vị lại so với một chỉ mục ký hiệu không tồn tại: %ld"
-
-#: coffcode.h:4296
-msgid "%B: warning: line number table read failed"
-msgstr "%B: Cảnh bảo : lỗi đọc bảng số thứ tự dòng"
-
-#: coffcode.h:4329
-msgid "%B: warning: illegal symbol index %ld in line numbers"
-msgstr "%B: cảnh báo : chỉ mục ký hiệu cấm %ld trong các số thứ tự dòng"
-
-#: coffcode.h:4343
-msgid "%B: warning: duplicate line number information for `%s'"
-msgstr "%B: cảnh báo : thông tin số thứ tự dòng trùng đối với « %s »"
-
-#: coffcode.h:4735
-msgid "%B: Unrecognized storage class %d for %s symbol `%s'"
-msgstr "%B: Không nhận ra hạng lưu trữ %d cho ký hiệu %s « %s »"
-
-#: coffcode.h:4861
-msgid "warning: %B: local symbol `%s' has no section"
-msgstr "cảnh báo : %B: ký hiệu cục bộ « %s » không có phần đoạn"
-
-#: coffcode.h:4966 coff-i860.c:601 coff-tic54x.c:393
-msgid "%B: warning: illegal symbol index %ld in relocs"
-msgstr "%B: cảnh báo : chỉ mục ký hiệu cấm %ld trong định vị lại"
-
-#: coffcode.h:5004
-msgid "%B: illegal relocation type %d at address 0x%lx"
-msgstr "%B: kiểu định vị lại cấm %d ở địa chỉ 0x%lx"
-
-#: coffgen.c:1518
-msgid "%B: bad string table size %lu"
-msgstr "%B: kích cỡ bảng chuỗi sai %lu"
-
 #: coff-h8300.c:1122
 #, c-format
 msgid "cannot handle R_MEM_INDIRECT reloc when using %s output"
 msgstr "không thể xử lý định vị lại R_MEM_INDIRECT khi sử dụng kết xuất %s"
 
-#: coff-i860.c:143
+#: coff-i860.c:147
 #, c-format
 msgid "Relocation `%s' not yet implemented\n"
 msgstr "Chưa thực hiện định vị lại « %s »\n"
 
-#: coff-i960.c:138 coff-i960.c:501
+#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:4975
+msgid "%B: warning: illegal symbol index %ld in relocs"
+msgstr "%B: cảnh báo : chỉ mục ký hiệu cấm %ld trong định vị lại"
+
+#: coff-i960.c:143 coff-i960.c:506
 msgid "uncertain calling convention for non-COFF symbol"
 msgstr "quy ước gọi không chắc chắn cho ký hiệu khác COFF"
 
-#: cofflink.c:513 elflink.c:4175
-msgid "Warning: type of symbol `%s' changed from %d to %d in %B"
-msgstr "Cảnh báo : kiểu ký hiệu « %s » bị thay đổi từ %d thành %d trong %B"
-
-#: cofflink.c:2296
-msgid "%B: relocs in section `%A', but it has no contents"
-msgstr "%B: định vị lại trong phần « %A », nhưng nó không có nội dung"
-
-#: cofflink.c:2627 coffswap.h:824
-#, c-format
-msgid "%s: %s: reloc overflow: 0x%lx > 0xffff"
-msgstr "%s: %s: tràn định vị lại: 0x%lx > 0xffff"
-
-#: cofflink.c:2636 coffswap.h:810
-#, c-format
-msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff"
-msgstr "%s: cảnh báo : %s: tràn số thứ tự dòng: 0x%lx > 0xffff"
-
-#: coff-m68k.c:506 elf32-bfin.c:5434 elf32-m68k.c:2393
+#: coff-m68k.c:506 elf32-bfin.c:5510 elf32-m68k.c:3938
 msgid "unsupported reloc type"
 msgstr "kiểu định vị lại không được hỗ trợ"
 
@@ -465,31 +391,35 @@
 msgid "Unrecognized Reloc Type"
 msgstr "Kiểu định vị lại không được nhận ra"
 
-#: coff-mips.c:687 elf32-mips.c:958 elf32-score.c:345 elf64-mips.c:1911
-#: elfn32-mips.c:1752
+#: coff-mips.c:688 elf32-mips.c:1014 elf32-score.c:345 elf64-mips.c:1991
+#: elfn32-mips.c:1832
 msgid "GP relative relocation when _gp not defined"
 msgstr "Có định vị lại tương đối GP khi chưa xác định _gp"
 
-#: coff-or32.c:228
+#: coff-or32.c:229
 msgid "Unrecognized reloc"
 msgstr "Định vị lại không được nhận ra"
 
-#: coff-rs6000.c:2799
+#: coff-rs6000.c:2803
 #, c-format
 msgid "%s: unsupported relocation type 0x%02x"
 msgstr "%s: kiểu định vị lại không được hỗ trợ 0x%02x"
 
-#: coff-rs6000.c:2892
+#: coff-rs6000.c:2896
 #, c-format
 msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry"
 msgstr "%s: định vị lại TOC tại 0x%x tới ký hiệu « %s » không có mục nhập TOC"
 
-#: coff-tic4x.c:191 coff-tic54x.c:299 coff-tic80.c:458
+#: coff-rs6000.c:3628 coff64-rs6000.c:2130
+msgid "%B: symbol `%s' has unrecognized smclas %d"
+msgstr "%B: ký tự « %s » có smclas không nhận ra %d"
+
+#: coff-tic4x.c:195 coff-tic54x.c:299 coff-tic80.c:458
 #, c-format
 msgid "Unrecognized reloc type 0x%x"
 msgstr "Không nhận ra kiểu định vị lại 0x%x"
 
-#: coff-tic4x.c:236
+#: coff-tic4x.c:240
 #, c-format
 msgid "%s: warning: illegal symbol index %ld in relocs"
 msgstr "%s: cảnh báo : chỉ mục ký hiệu cấm %ld trong các định vị lại"
@@ -499,6 +429,76 @@
 msgid "ignoring reloc %s\n"
 msgstr "Đang lờ đi định vị lại %s\n"
 
+#: coffcode.h:850
+msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'"
+msgstr "%B: cảnh báo : ký hiệu COMDAT « %s » không tương ứng vơi tên phần « %s »"
+
+#. Generate a warning message rather using the 'unhandled'
+#. variable as this will allow some .sys files generate by
+#. other toolchains to be processed.  See bugzilla issue 196.
+#: coffcode.h:1062
+msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"
+msgstr "%B: Cảnh báo: Đang lờ đi cờ của phần IMAGE_SCN_MEM_NOT_PAGED trong phần %s"
+
+#: coffcode.h:1117
+msgid "%B (%s): Section flag %s (0x%x) ignored"
+msgstr "%B (%s): Đã lờ đi cờ của phần %s (0x%x)"
+
+#: coffcode.h:2244
+#, c-format
+msgid "Unrecognized TI COFF target id '0x%x'"
+msgstr "Không nhận ra mã số đích TI COFF « 0x%x »"
+
+#: coffcode.h:2559
+msgid "%B: reloc against a non-existant symbol index: %ld"
+msgstr "%B: định vị lại so với một chỉ mục ký hiệu không tồn tại: %ld"
+
+#: coffcode.h:4309
+msgid "%B: warning: line number table read failed"
+msgstr "%B: Cảnh bảo : lỗi đọc bảng số thứ tự dòng"
+
+#: coffcode.h:4339
+msgid "%B: warning: illegal symbol index %ld in line numbers"
+msgstr "%B: cảnh báo : chỉ mục ký hiệu cấm %ld trong các số thứ tự dòng"
+
+#: coffcode.h:4353
+msgid "%B: warning: duplicate line number information for `%s'"
+msgstr "%B: cảnh báo : thông tin số thứ tự dòng trùng đối với « %s »"
+
+#: coffcode.h:4744
+msgid "%B: Unrecognized storage class %d for %s symbol `%s'"
+msgstr "%B: Không nhận ra hạng lưu trữ %d cho ký hiệu %s « %s »"
+
+#: coffcode.h:4870
+msgid "warning: %B: local symbol `%s' has no section"
+msgstr "cảnh báo : %B: ký hiệu cục bộ « %s » không có phần đoạn"
+
+#: coffcode.h:5013
+msgid "%B: illegal relocation type %d at address 0x%lx"
+msgstr "%B: kiểu định vị lại cấm %d ở địa chỉ 0x%lx"
+
+#: coffgen.c:1518
+msgid "%B: bad string table size %lu"
+msgstr "%B: kích cỡ bảng chuỗi sai %lu"
+
+#: cofflink.c:513 elflink.c:4218
+msgid "Warning: type of symbol `%s' changed from %d to %d in %B"
+msgstr "Cảnh báo : kiểu ký hiệu « %s » bị thay đổi từ %d thành %d trong %B"
+
+#: cofflink.c:2296
+msgid "%B: relocs in section `%A', but it has no contents"
+msgstr "%B: định vị lại trong phần « %A », nhưng nó không có nội dung"
+
+#: cofflink.c:2627 coffswap.h:824
+#, c-format
+msgid "%s: %s: reloc overflow: 0x%lx > 0xffff"
+msgstr "%s: %s: tràn định vị lại: 0x%lx > 0xffff"
+
+#: cofflink.c:2636 coffswap.h:810
+#, c-format
+msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff"
+msgstr "%s: cảnh báo : %s: tràn số thứ tự dòng: 0x%lx > 0xffff"
+
 #: cpu-arm.c:189 cpu-arm.c:200
 msgid "ERROR: %B is compiled for the EP9312, whereas %B is compiled for XScale"
 msgstr "LỖI: %B được biên dịch cho EP9312, còn %B được biên dịch cho XScale"
@@ -508,66 +508,50 @@
 msgid "warning: unable to update contents of %s section in %s"
 msgstr "cảnh báo : không thể cập nhật nội dung của phần %s trong %s"
 
-#: dwarf2.c:481
-msgid "Dwarf Error: Can't find .debug_str section."
-msgstr "Lỗi Dwarf: Không tìm thấy phần « .debug_str »"
-
-#: dwarf2.c:499
+#: dwarf2.c:424
 #, c-format
-msgid "Dwarf Error: DW_FORM_strp offset (%lu) greater than or equal to .debug_str size (%lu)."
-msgstr "Lỗi Dwarf: khoảng bù DW_FORM_strp (%lu) lớn hơn hoặc bằng kích cỡ « .debug_str » (%lu)."
+msgid "Dwarf Error: Can't find %s section."
+msgstr "Lỗi Dwarf: không tìm thấy phần %s."
 
-#: dwarf2.c:592
-msgid "Dwarf Error: Can't find .debug_abbrev section."
-msgstr "Lỗi Dwarf: Không tìm thấy phần « .debug_abbrev »."
-
-#: dwarf2.c:607
+#: dwarf2.c:452
 #, c-format
-msgid "Dwarf Error: Abbrev offset (%lu) greater than or equal to .debug_abbrev size (%lu)."
-msgstr "Lỗi Dwarf: khoảng bù Abbrev (%lu) lớn hơn hoặc bằng kích cỡ « .debug_abbrev » (%lu)."
+msgid "Dwarf Error: unable to decompress %s section."
+msgstr "Lỗi Dwarf: không thể giải nén phần %s."
 
-#: dwarf2.c:822
+#: dwarf2.c:462
+#, c-format
+msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)."
+msgstr "Lỗi Dwarf: Khoảng bù dòng (%lu) lớn hơn hoặc bằng kích cỡ %s (%lu)."
+
+#: dwarf2.c:849
 #, c-format
 msgid "Dwarf Error: Invalid or unhandled FORM value: %u."
 msgstr "Lỗi Dwarf: Giá trị FORM sai hoặc chưa được xử lý: %u."
 
-#: dwarf2.c:1025
+#: dwarf2.c:1063
 msgid "Dwarf Error: mangled line number section (bad file number)."
 msgstr "Lỗi Dwarf: phần số thứ tự dòng đã rối (số thứ tự tập tin sai)."
 
-#: dwarf2.c:1137
-msgid "Dwarf Error: Can't find .debug_line section."
-msgstr "Lỗi Dwarf: Không tìm thấy phần « .debug_line »."
-
-#: dwarf2.c:1154
-#, c-format
-msgid "Dwarf Error: Line offset (%lu) greater than or equal to .debug_line size (%lu)."
-msgstr "Lỗi Dwarf: Khoảng bù dòng (%lu) lớn hơn hoặc bằng kích cỡ « .debug_line » (%lu)."
-
-#: dwarf2.c:1380
+#: dwarf2.c:1393
 msgid "Dwarf Error: mangled line number section."
 msgstr "Lỗi Dwarf: phần số thứ tự dòng đã rối."
 
-#: dwarf2.c:1568
-msgid "Dwarf Error: Can't find .debug_ranges section."
-msgstr "Lỗi Dwarf: Không tìm thấy phần « debug_ranges »."
-
-#: dwarf2.c:1731 dwarf2.c:1847 dwarf2.c:2119
+#: dwarf2.c:1726 dwarf2.c:1842 dwarf2.c:2114
 #, c-format
 msgid "Dwarf Error: Could not find abbrev number %u."
 msgstr "Lỗi Dwarf: Không tìm thấy số viết tắt %u."
 
-#: dwarf2.c:2080
+#: dwarf2.c:2075
 #, c-format
 msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2 information."
 msgstr "Lỗi Dwarf: tìm thấy dwarf phiên bản « %u », nhưng trình đọc này chỉ điều khiển thông tin của phiên bản 2."
 
-#: dwarf2.c:2087
+#: dwarf2.c:2082
 #, c-format
 msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'."
 msgstr "Lỗi Dwarf: tìm thấy kích cỡ địa chỉ « %u », nhưng trình đọc này không điều khiển được kích cỡ lớn hơn « %u »."
 
-#: dwarf2.c:2110
+#: dwarf2.c:2105
 #, c-format
 msgid "Dwarf Error: Bad abbrev number: %u."
 msgstr "Lỗi Dwarf: Số viết tắt sai: %u."
@@ -649,35 +633,271 @@
 "\n"
 "      Kiểu : %s"
 
-#: elf32-arm.c:2524
+#: elf-attrs.c:582
+msgid "ERROR: %B: Must be processed by '%s' toolchain"
+msgstr "LỖI: %B: Phải được dãy công cụ « %s » xử lý"
+
+#: elf-attrs.c:602 elf-attrs.c:621
+msgid "ERROR: %B: Incompatible object tag '%s':%d"
+msgstr "LỖI: %B: Thẻ đối tượng không tương thích « %s »:%s"
+
+#: elf-eh-frame.c:866
+msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"
+msgstr "%P: gặp lỗi trong %B(%A); sẽ không tạo bảng .eh_frame_hdr nào.\n"
+
+#: elf-eh-frame.c:1102
+msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n"
+msgstr "%P: biên mã fde trong %B(%A) thì ngăn cản tạo bảng .eh_frame_hdr.\n"
+
+#: elf-hppa.h:2241 elf-m10300.c:1546 elf32-arm.c:7954 elf32-i386.c:3582
+#: elf32-m32r.c:2598 elf32-m68k.c:3516 elf32-ppc.c:7223 elf32-s390.c:3058
+#: elf32-sh.c:3438 elf32-xtensa.c:3021 elf64-ppc.c:11528 elf64-s390.c:3019
+#: elf64-sh64.c:1648 elf64-x86-64.c:3239 elfxx-sparc.c:3336
+msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"
+msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết %s đối với ký hiệu « %s »"
+
+#: elf-hppa.h:2266 elf-hppa.h:2280
+msgid "%B(%A): warning: unresolvable relocation against symbol `%s'"
+msgstr "%B(%A): cảnh báo : định vị lại không thể giải quyết được so với ký hiệu « %s »"
+
+#: elf-m10200.c:456 elf-m10300.c:1609 elf32-avr.c:1250 elf32-bfin.c:3214
+#: elf32-cr16.c:959 elf32-cr16c.c:790 elf32-cris.c:1538 elf32-crx.c:933
+#: elf32-d10v.c:516 elf32-fr30.c:616 elf32-frv.c:4114 elf32-h8300.c:516
+#: elf32-i860.c:1218 elf32-ip2k.c:1499 elf32-iq2000.c:691 elf32-m32c.c:560
+#: elf32-m32r.c:3124 elf32-m68hc1x.c:1135 elf32-mep.c:541 elf32-msp430.c:493
+#: elf32-mt.c:402 elf32-openrisc.c:411 elf32-score.c:2451 elf32-spu.c:4132
+#: elf32-v850.c:1703 elf32-xstormy16.c:948 elf64-mmix.c:1533
+msgid "internal error: out of range error"
+msgstr "lỗi nội bộ : lỗi ở ngoại phạm vi"
+
+#: elf-m10200.c:460 elf-m10300.c:1613 elf32-avr.c:1254 elf32-bfin.c:3218
+#: elf32-cr16.c:963 elf32-cr16c.c:794 elf32-cris.c:1542 elf32-crx.c:937
+#: elf32-d10v.c:520 elf32-fr30.c:620 elf32-frv.c:4118 elf32-h8300.c:520
+#: elf32-i860.c:1222 elf32-iq2000.c:695 elf32-m32c.c:564 elf32-m32r.c:3128
+#: elf32-m68hc1x.c:1139 elf32-mep.c:545 elf32-msp430.c:497
+#: elf32-openrisc.c:415 elf32-score.c:2455 elf32-spu.c:4136 elf32-v850.c:1707
+#: elf32-xstormy16.c:952 elf64-mmix.c:1537 elfxx-mips.c:9065
+msgid "internal error: unsupported relocation error"
+msgstr "lỗi nội bộ : lỗi định vị lại không được hỗ trợ"
+
+#: elf-m10200.c:464 elf32-cr16.c:967 elf32-cr16c.c:798 elf32-crx.c:941
+#: elf32-d10v.c:524 elf32-h8300.c:524 elf32-m32r.c:3132 elf32-m68hc1x.c:1143
+#: elf32-score.c:2459 elf32-spu.c:4140
+msgid "internal error: dangerous error"
+msgstr "lỗi nội bộ : lỗi nguy hiểm"
+
+#: elf-m10200.c:468 elf-m10300.c:1626 elf32-avr.c:1262 elf32-bfin.c:3226
+#: elf32-cr16.c:971 elf32-cr16c.c:802 elf32-cris.c:1550 elf32-crx.c:945
+#: elf32-d10v.c:528 elf32-fr30.c:628 elf32-frv.c:4126 elf32-h8300.c:528
+#: elf32-i860.c:1230 elf32-ip2k.c:1514 elf32-iq2000.c:703 elf32-m32c.c:572
+#: elf32-m32r.c:3136 elf32-m68hc1x.c:1147 elf32-mep.c:553 elf32-msp430.c:505
+#: elf32-mt.c:410 elf32-openrisc.c:423 elf32-score.c:2463 elf32-spu.c:4144
+#: elf32-v850.c:1727 elf32-xstormy16.c:960 elf64-mmix.c:1545
+msgid "internal error: unknown error"
+msgstr "lỗi nội bộ : lỗi không rõ"
+
+#: elf-m10300.c:1618
+msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)"
+msgstr "lỗi: kiểu định vị lại không thích hợp cho thư viện chia sẻ (bạn đã quên đặt -fpic không?)"
+
+#: elf-m10300.c:1621
+msgid "internal error: suspicious relocation type used in shared library"
+msgstr "lỗi nội bộ: kiểu định vị lại đáng ngờ được dùng trong thư viện chia sẻ"
+
+#: elf-m10300.c:4397 elf32-arm.c:9578 elf32-cris.c:2403 elf32-hppa.c:1921
+#: elf32-i370.c:506 elf32-i386.c:1807 elf32-m32r.c:1931 elf32-m68k.c:2787
+#: elf32-ppc.c:4693 elf32-s390.c:1687 elf32-sh.c:2583 elf32-vax.c:1055
+#: elf64-ppc.c:6075 elf64-s390.c:1662 elf64-sh64.c:3432 elf64-x86-64.c:1641
+#: elfxx-sparc.c:1828
+#, c-format
+msgid "dynamic variable `%s' is zero size"
+msgstr "biến động « %s » có kích cỡ số không"
+
+#: elf.c:328
+msgid "%B: invalid string offset %u >= %lu for section `%s'"
+msgstr "%B: khoảng bù chuỗi không hợp lệ %u≥%lu cho phần « %s »"
+
+#: elf.c:438
+msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section"
+msgstr "%B số thứ tự ký hiệu %lu tham chiếu đến phần SHT_SYMTAB_SHNDX không tồn tại"
+
+#: elf.c:594
+msgid "%B: Corrupt size field in group section header: 0x%lx"
+msgstr "%B: Trường kích cỡ bị hỏng trong phần đầu của phần nhóm: 0x%lx"
+
+#: elf.c:630
+msgid "%B: invalid SHT_GROUP entry"
+msgstr "%B: mục nhập SHT_GROUP không hợp lệ"
+
+#: elf.c:700
+msgid "%B: no group info for section %A"
+msgstr "%B: không có thông tin nhóm về phần %A"
+
+#: elf.c:729 elf.c:2976 elflink.c:9746
+msgid "%B: warning: sh_link not set for section `%A'"
+msgstr "%B: cảnh báo : « sh_link » chưa được đặt cho phần « %A »"
+
+#: elf.c:748
+msgid "%B: sh_link [%d] in section `%A' is incorrect"
+msgstr "%B: sh_link [%d] không đúng trong phần « %A »"
+
+#: elf.c:783
+msgid "%B: unknown [%d] section `%s' in group [%s]"
+msgstr "%B: không rõ [%d] phần « %s » trong nhóm [%s]"
+
+#: elf.c:1159
+#, c-format
+msgid ""
+"\n"
+"Program Header:\n"
+msgstr ""
+"\n"
+"Phần đầu chương trình:\n"
+
+#: elf.c:1201
+#, c-format
+msgid ""
+"\n"
+"Dynamic Section:\n"
+msgstr ""
+"\n"
+"Phần động:\n"
+
+#: elf.c:1337
+#, c-format
+msgid ""
+"\n"
+"Version definitions:\n"
+msgstr ""
+"\n"
+"Phần định nghĩa phiên bản:\n"
+
+#: elf.c:1362
+#, c-format
+msgid ""
+"\n"
+"Version References:\n"
+msgstr ""
+"\n"
+"Tham chiếu phiên bản:\n"
+
+#: elf.c:1367
+#, c-format
+msgid "  required from %s:\n"
+msgstr "  cần thiết từ %s:\n"
+
+#: elf.c:1755
+msgid "%B: invalid link %lu for reloc section %s (index %u)"
+msgstr "%B: liên kết không hợp lệ %lu cho phần định vị lại %s (chỉ mục %u)"
+
+#: elf.c:1924
+msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]"
+msgstr "%B: không biết cách xử lý phần đã cấp phát mà đặc trưng cho ứng dụng « %s » [0x%8x]"
+
+#: elf.c:1936
+msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]"
+msgstr "%B: không biết cách xử lý phần đặc trưng cho bộ xử lý « %s » [0x%8x]"
+
+#: elf.c:1947
+msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]"
+msgstr "%B: không biết cách xử lý phần đặc trưng cho HĐH « %s » [0x%8x]"
+
+#: elf.c:1957
+msgid "%B: don't know how to handle section `%s' [0x%8x]"
+msgstr "%B: không biết cách xử lý phần « %s » [0x%8x]"
+
+#: elf.c:2555
+#, c-format
+msgid "warning: section `%A' type changed to PROGBITS"
+msgstr "cảnh báo : phần « %A » có kiểu bị thay đổi thành PROGBITS"
+
+#: elf.c:2933
+msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'"
+msgstr "%B: sh_link của phần « %A » chỉ tới phần bị hủy « %A » của « %B »"
+
+#: elf.c:2956
+msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'"
+msgstr "%B: sh_link của phần « %A » chỉ tới phần bị gỡ bỏ « %A » của « %B »"
+
+#: elf.c:4300
+msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section"
+msgstr "%B: Phần thứ nhất trong đoạn PT_DYNAMIC không phải là phần .dynamic"
+
+#: elf.c:4327
+msgid "%B: Not enough room for program headers, try linking with -N"
+msgstr "%B: Không đủ sức chứa cho các phần đầu của chương trình: hãy thử liên kết với « -N »"
+
+#: elf.c:4404
+msgid "%B: section %A vma 0x%lx overlaps previous sections"
+msgstr "%B: phần %A vma 0x%lx đè lên phần trước"
+
+#: elf.c:4499
+msgid "%B: section `%A' can't be allocated in segment %d"
+msgstr "%B: phần « %A » không thể được cấp phát trong đoạn %d"
+
+#: elf.c:4549
+msgid "%B: warning: allocated section `%s' not in segment"
+msgstr "%B: cảnh báo : phần đã cấp phát « %s » không nằm trong đoạn"
+
+#: elf.c:5064
+msgid "%B: symbol `%s' required but not present"
+msgstr "%B: ký hiệu « %s » cần thiết mà không có"
+
+#: elf.c:5403
+msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n"
+msgstr "%B: cảnh báo : Phát hiện một đoạn rỗng có thể nạp được: trường hợp này có ý định trước không?\n"
+
+#: elf.c:6366
+#, c-format
+msgid "Unable to find equivalent output section for symbol '%s' from section '%s'"
+msgstr "Không tìm thấy phần kết xuất tương đương cho ký hiệu « %s » từ phần « %s »"
+
+#: elf.c:7346
+msgid "%B: unsupported relocation type %s"
+msgstr "%B: kiểu định vị lại không được hỗ trợ %s"
+
+#: elf32-arm.c:2846 elf32-arm.c:2878
+msgid ""
+"%B(%s): warning: interworking not enabled.\n"
+"  first occurrence: %B: Thumb call to ARM"
+msgstr ""
+"%B(%s): cảnh báo : chưa bật dùng ảnh hưởng lẫn nhau.\n"
+"  lần xuất hiện đầu: %B: thumb gọi tới ARM"
+
+#: elf32-arm.c:3041
+#, c-format
+msgid "%s: cannot create stub entry %s"
+msgstr "%s: không thể tạo mục nhập mẩu %s"
+
+#: elf32-arm.c:3825
 #, c-format
 msgid "unable to find THUMB glue '%s' for '%s'"
 msgstr "không tìm thấy keo hồ THUMB « %s » cho « %s »"
 
-#: elf32-arm.c:2557
+#: elf32-arm.c:3859
 #, c-format
 msgid "unable to find ARM glue '%s' for '%s'"
 msgstr "không tìm thấy keo hồ ARM « %s » cho « %s »"
 
-#: elf32-arm.c:3127
+#: elf32-arm.c:4463
 msgid "%B: BE8 images only valid in big-endian mode."
 msgstr "%B: hình ảnh BE8 chỉ đúng trong chế độ về cuối lớn."
 
 #. Give a warning, but do as the user requests anyway.
-#: elf32-arm.c:3331
+#: elf32-arm.c:4678
 msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture"
 msgstr "%B: cảnh báo : sự khắc phúc các lỗi VFP11 đã chọn không cần thiết cho kiến trúc đích"
 
-#: elf32-arm.c:3865 elf32-arm.c:3885
+#: elf32-arm.c:5212 elf32-arm.c:5232
 msgid "%B: unable to find VFP11 veneer `%s'"
 msgstr "%B: không tìm thấy lớp gỗ mặt VFP11 « %s »"
 
-#: elf32-arm.c:3930
+#: elf32-arm.c:5278
 #, c-format
 msgid "Invalid TARGET2 relocation type '%s'."
 msgstr "Kiểu định vị lại TARGET2 không hợp lệ « %s »"
 
-#: elf32-arm.c:4071
+#: elf32-arm.c:5362
 msgid ""
 "%B(%s): warning: interworking not enabled.\n"
 "  first occurrence: %B: thumb call to arm"
@@ -685,374 +905,326 @@
 "%B(%s): cảnh báo : chưa bật dùng ảnh hưởng lẫn nhau.\n"
 "  lần xuất hiện đầu: %B: thumb gọi tới arm"
 
-#: elf32-arm.c:4759
+#: elf32-arm.c:6094
 msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'."
 msgstr "\\%B: Cảnh báo : Chỉ dẫn Arm BLX đăt mục tiêu hàm Arm « %s »."
 
-#: elf32-arm.c:5059
+#: elf32-arm.c:6418
 msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'."
 msgstr "%B: Cảnh báo : Chỉ dẫn Thumb BLX đăt mục tiêu hàm thumb « %s »."
 
-#: elf32-arm.c:5689
+#: elf32-arm.c:7095
 msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object"
 msgstr "%B(%A+0x%lx): R_ARM_TLS_LE32 không cho phép định vị lại trong đối tượng dùng chung"
 
-#: elf32-arm.c:5890
+#: elf32-arm.c:7310
 msgid "%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations"
 msgstr "%B(%A+0x%lx): Chỉ cho phép chỉ dẫn kiểu ADD (cộng) hoặc SUB (trừ) khi định vị lại nhóm ALU"
 
-#: elf32-arm.c:5930 elf32-arm.c:6017 elf32-arm.c:6100 elf32-arm.c:6185
+#: elf32-arm.c:7350 elf32-arm.c:7437 elf32-arm.c:7520 elf32-arm.c:7605
 msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"
 msgstr "%B(%A+0x%lx): Tràn trong khi tách ra 0x%lx để định vị lại nhóm %s"
 
-#: elf32-arm.c:6369 elf32-sh.c:3304 elf64-sh64.c:1556
+#: elf32-arm.c:7812 elf32-sh.c:3334 elf64-sh64.c:1556
 msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section"
 msgstr "%B(%A+0x%lx): %s định vị lại đối lại phần SEC_MERGE"
 
-#: elf32-arm.c:6458 elf64-ppc.c:9973
+#: elf32-arm.c:7930 elf32-xtensa.c:2759 elf64-ppc.c:10374
 msgid "%B(%A+0x%lx): %s used with TLS symbol %s"
 msgstr "%B(%A+0x%lx): %s được dùng với ký hiệu TLS %s"
 
-#: elf32-arm.c:6459 elf64-ppc.c:9974
+#: elf32-arm.c:7931 elf32-xtensa.c:2760 elf64-ppc.c:10375
 msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s"
 msgstr "%B(%A+0x%lx): %s được dùng với ký hiệu khác TLS %s"
 
-#: elf32-arm.c:6482 elf32-i386.c:3310 elf32-m32r.c:2598 elf32-m68k.c:1982
-#: elf32-ppc.c:6796 elf32-s390.c:3048 elf32-sh.c:3408 elf32-xtensa.c:2290
-#: elf64-ppc.c:11138 elf64-s390.c:3009 elf64-sh64.c:1648 elf64-x86-64.c:3002
-#: elf-hppa.h:2194 elf-m10300.c:1460 elfxx-sparc.c:3256
-msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"
-msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết %s đối với ký hiệu « %s »"
-
-#: elf32-arm.c:6516
+#: elf32-arm.c:7988
 msgid "out of range"
 msgstr "ở ngoại phạm vi"
 
-#: elf32-arm.c:6520
+#: elf32-arm.c:7992
 msgid "unsupported relocation"
 msgstr "định vị lại không được hỗ trợ"
 
-#: elf32-arm.c:6528
+#: elf32-arm.c:8000
 msgid "unknown error"
 msgstr "lỗi không rõ"
 
-#: elf32-arm.c:6628
+#: elf32-arm.c:8099
 msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it"
 msgstr "Cảnh báo : Đang xóa cờ ảnh hưởng lẫn nhau của %B vì mã không ảnh hưởng lẫn nhau trong %B đã được liên kết với nó"
 
-#: elf32-arm.c:6730
+#: elf32-arm.c:8205
 msgid "ERROR: %B uses VFP register arguments, %B does not"
 msgstr "LỖI: %B sử dụng các đối số thanh ghi VFP, còn %B thì không"
 
-#: elf32-arm.c:6780
+#: elf32-arm.c:8254
 msgid "ERROR: %B: Conflicting architecture profiles %c/%c"
 msgstr "LỖI: %B: Các hồ sơ kiến trúc xung đột với nhau %c/%c"
 
-#: elf32-arm.c:6795
+#: elf32-arm.c:8274
 msgid "Warning: %B: Conflicting platform configuration"
 msgstr "Cảnh báo : %B: cấu trúc nền tảng xung đột"
 
-#: elf32-arm.c:6804
+#: elf32-arm.c:8283
 msgid "ERROR: %B: Conflicting use of R9"
 msgstr "LỖI; %B: cách dùng R9 xung đột"
 
-#: elf32-arm.c:6816
+#: elf32-arm.c:8295
 msgid "ERROR: %B: SB relative addressing conflicts with use of R9"
 msgstr "LỖI: %B: đạt địa chỉ tương đối SB xung đột với cách dùng R9"
 
-#: elf32-arm.c:6838
-msgid "ERROR: %B: Conflicting definitions of wchar_t"
-msgstr "LỖI: %B: các lời định nghĩa wchar_t xung đột với nhau"
+#: elf32-arm.c:8318
+msgid "warning: %B uses %u-byte wchar_t yet the output is to use %u-byte wchar_t; use of wchar_t values across objects may fail"
+msgstr "cảnh báo : %B dùng wchar_t %u-byte, còn kết xuất nên dùng wchar_t %u-byte; vì vậy có thể không thành công dùng giá trị wchar_t qua các đối tượng"
 
-#: elf32-arm.c:6867
+#: elf32-arm.c:8347
 msgid "warning: %B uses %s enums yet the output is to use %s enums; use of enum values across objects may fail"
 msgstr "cảnh báo : %B dùng sự đếm %s, còn kết xuất nên dùng sự đếm %s; vì vậy có thể không thành công dùng giá trị đếm qua các đối tượng"
 
-#: elf32-arm.c:6880
+#: elf32-arm.c:8360
 msgid "ERROR: %B uses iWMMXt register arguments, %B does not"
 msgstr "LỖI: %B sử dụng các đối số thanh ghi iWMMXt, còn %B thì không"
 
-#: elf32-arm.c:6920
+#: elf32-arm.c:8400
 msgid "Warning: %B: Unknown EABI object attribute %d"
 msgstr "Cảnh báo : %B: Không rõ thuộc tính đối tượng EABI %d"
 
-#: elf32-arm.c:7045
+#: elf32-arm.c:8460
+msgid "ERROR: %B is already in final BE8 format"
+msgstr "LỖI: %B đã theo định dạng BE8 cuối cùng"
+
+#: elf32-arm.c:8536
 msgid "ERROR: Source object %B has EABI version %d, but target %B has EABI version %d"
 msgstr "LỖI: Đối tượng nguồn %B có phiên bản EABI %d, nhưng đích %B có phiên bản EABI %d"
 
-#: elf32-arm.c:7061
+#: elf32-arm.c:8552
 msgid "ERROR: %B is compiled for APCS-%d, whereas target %B uses APCS-%d"
 msgstr "LỖI: %B được biên dịch cho APCS-%d, còn đích %B sử dụng APCS-%d"
 
-#: elf32-arm.c:7086
+#: elf32-arm.c:8577
 msgid "ERROR: %B uses VFP instructions, whereas %B does not"
 msgstr "LỖI: %B sử dụng các chỉ dẫn VFP, còn %B thì không"
 
-#: elf32-arm.c:7090
+#: elf32-arm.c:8581
 msgid "ERROR: %B uses FPA instructions, whereas %B does not"
 msgstr "LỖI: %B sử dụng các chỉ dẫn FPA, còn %B thì không"
 
-#: elf32-arm.c:7100
+#: elf32-arm.c:8591
 msgid "ERROR: %B uses Maverick instructions, whereas %B does not"
 msgstr "LỖI: %B sử dụng các chỉ dẫn Maverick, còn %B thì không"
 
-#: elf32-arm.c:7104
+#: elf32-arm.c:8595
 msgid "ERROR: %B does not use Maverick instructions, whereas %B does"
 msgstr "LỖI: %B không sử dụng các chỉ dẫn Maverick, còn %B thì có"
 
-#: elf32-arm.c:7123
+#: elf32-arm.c:8614
 msgid "ERROR: %B uses software FP, whereas %B uses hardware FP"
 msgstr "LỖI: %B sử dụng FP phần mềm, còn %B sử dụng FP phần cứng"
 
-#: elf32-arm.c:7127
+#: elf32-arm.c:8618
 msgid "ERROR: %B uses hardware FP, whereas %B uses software FP"
 msgstr "LỖI: %B sử dụng FP phần cứng, còn %B sử dụng FP phần mềm"
 
 #. Ignore init flag - it may not be set, despite the flags field
 #. containing valid data.
 #. Ignore init flag - it may not be set, despite the flags field containing valid data.
-#: elf32-arm.c:7174 elf32-bfin.c:4795 elf32-cris.c:3234 elf32-m68hc1x.c:1277
-#: elf32-m68k.c:620 elf32-score.c:3753 elf32-vax.c:538 elfxx-mips.c:11331
+#: elf32-arm.c:8665 elf32-bfin.c:4899 elf32-cris.c:3235 elf32-m68hc1x.c:1279
+#: elf32-m68k.c:774 elf32-score.c:3750 elf32-vax.c:538 elfxx-mips.c:12699
 #, c-format
 msgid "private flags = %lx:"
 msgstr "các cờ riêng = %lx:"
 
-#: elf32-arm.c:7183
+#: elf32-arm.c:8674
 #, c-format
 msgid " [interworking enabled]"
 msgstr " [ảnh hưởng lẫn nhau đã bật]"
 
-#: elf32-arm.c:7191
+#: elf32-arm.c:8682
 #, c-format
 msgid " [VFP float format]"
 msgstr " [Định dạng trôi VFP]"
 
-#: elf32-arm.c:7193
+#: elf32-arm.c:8684
 #, c-format
 msgid " [Maverick float format]"
 msgstr " [Định dạng trôi Maverick]"
 
-#: elf32-arm.c:7195
+#: elf32-arm.c:8686
 #, c-format
 msgid " [FPA float format]"
 msgstr " [Định dạng trôi FPA]"
 
-#: elf32-arm.c:7204
+#: elf32-arm.c:8695
 #, c-format
 msgid " [new ABI]"
 msgstr " [ABI mới]"
 
-#: elf32-arm.c:7207
+#: elf32-arm.c:8698
 #, c-format
 msgid " [old ABI]"
 msgstr " [ABI cũ]"
 
-#: elf32-arm.c:7210
+#: elf32-arm.c:8701
 #, c-format
 msgid " [software FP]"
 msgstr " [FP phần mềm]"
 
-#: elf32-arm.c:7219
+#: elf32-arm.c:8710
 #, c-format
 msgid " [Version1 EABI]"
 msgstr " [EABI phiên bản 1]"
 
-#: elf32-arm.c:7222 elf32-arm.c:7233
+#: elf32-arm.c:8713 elf32-arm.c:8724
 #, c-format
 msgid " [sorted symbol table]"
 msgstr " [bảng ký hiệu đã sắp xếp]"
 
-#: elf32-arm.c:7224 elf32-arm.c:7235
+#: elf32-arm.c:8715 elf32-arm.c:8726
 #, c-format
 msgid " [unsorted symbol table]"
 msgstr " [bảng ký hiệu chưa sắp xếp]"
 
-#: elf32-arm.c:7230
+#: elf32-arm.c:8721
 #, c-format
 msgid " [Version2 EABI]"
 msgstr " [EABI phiên bản 2]"
 
-#: elf32-arm.c:7238
+#: elf32-arm.c:8729
 #, c-format
 msgid " [dynamic symbols use segment index]"
 msgstr " [các ký hiệu động sử dụng chỉ mục đoạn]"
 
-#: elf32-arm.c:7241
+#: elf32-arm.c:8732
 #, c-format
 msgid " [mapping symbols precede others]"
 msgstr " [ký hiệu ánh xạ đứng trước]"
 
-#: elf32-arm.c:7248
+#: elf32-arm.c:8739
 #, c-format
 msgid " [Version3 EABI]"
 msgstr " [EABI phiên bản 3]"
 
-#: elf32-arm.c:7252
+#: elf32-arm.c:8743
 #, c-format
 msgid " [Version4 EABI]"
 msgstr " [EABI phiên bản 4]"
 
-#: elf32-arm.c:7256
+#: elf32-arm.c:8747
 #, c-format
 msgid " [Version5 EABI]"
 msgstr " [EABI phiên bản 5]"
 
-#: elf32-arm.c:7259
+#: elf32-arm.c:8750
 #, c-format
 msgid " [BE8]"
 msgstr " [BE8]"
 
-#: elf32-arm.c:7262
+#: elf32-arm.c:8753
 #, c-format
 msgid " [LE8]"
 msgstr " [LE8]"
 
-#: elf32-arm.c:7268
+#: elf32-arm.c:8759
 #, c-format
 msgid " <EABI version unrecognised>"
 msgstr "<Phiên bản EABI không được nhận ra>"
 
-#: elf32-arm.c:7275
+#: elf32-arm.c:8766
 #, c-format
 msgid " [relocatable executable]"
 msgstr " [tập tin có thể thực hiện và định vị lại]"
 
-#: elf32-arm.c:7278
+#: elf32-arm.c:8769
 #, c-format
 msgid " [has entry point]"
 msgstr " [có điểm vào]"
 
-#: elf32-arm.c:7283
+#: elf32-arm.c:8774
 #, c-format
 msgid "<Unrecognised flag bits set>"
 msgstr "<Các bit cờ không được nhận ra đã được đặt>"
 
-#: elf32-arm.c:7522 elf32-i386.c:961 elf32-s390.c:1003 elf32-xtensa.c:814
-#: elf64-s390.c:958 elf64-x86-64.c:773 elfxx-sparc.c:1115
+#: elf32-arm.c:9013 elf32-i386.c:1236 elf32-s390.c:1006 elf32-xtensa.c:999
+#: elf64-s390.c:961 elf64-x86-64.c:1016 elfxx-sparc.c:1127
 msgid "%B: bad symbol index: %d"
 msgstr "%B: chỉ mục ký hiệu sai: %d"
 
-#: elf32-arm.c:8080 elf32-cris.c:2400 elf32-hppa.c:1906 elf32-i370.c:506
-#: elf32-i386.c:1522 elf32-m32r.c:1931 elf32-m68k.c:1331 elf32-ppc.c:4314
-#: elf32-s390.c:1679 elf32-sh.c:2584 elf32-vax.c:1050 elf64-ppc.c:5898
-#: elf64-s390.c:1654 elf64-sh64.c:3438 elf64-x86-64.c:1382 elf-m10300.c:4207
-#: elfxx-sparc.c:1797
-#, c-format
-msgid "dynamic variable `%s' is zero size"
-msgstr "biến động « %s » có kích cỡ số không"
-
-#: elf32-arm.c:8603
+#: elf32-arm.c:10125
 #, c-format
 msgid "Errors encountered processing file %s"
 msgstr "Gặp lỗi khi xử lý tập tin %s"
 
-#: elf32-arm.c:9839 elf32-arm.c:9861
+#: elf32-arm.c:11526 elf32-arm.c:11548
 msgid "%B: error: VFP11 veneer out of range"
 msgstr "%B: lỗi: lớp gỗ mặt VFP11 ở ngoại phạm vi"
 
-#: elf32-avr.c:1253 elf32-bfin.c:2795 elf32-cr16.c:887 elf32-cr16c.c:790
-#: elf32-cris.c:1538 elf32-crx.c:933 elf32-d10v.c:517 elf32-fr30.c:616
-#: elf32-frv.c:4129 elf32-h8300.c:516 elf32-i860.c:1218 elf32-ip2k.c:1499
-#: elf32-iq2000.c:647 elf32-m32c.c:560 elf32-m32r.c:3124 elf32-m68hc1x.c:1133
-#: elf32-mep.c:642 elf32-msp430.c:497 elf32-mt.c:402 elf32-openrisc.c:411
-#: elf32-score.c:2456 elf32-spu.c:2813 elf32-v850.c:1701 elf32-xstormy16.c:946
-#: elf64-mmix.c:1533 elf-m10200.c:456 elf-m10300.c:1523
-msgid "internal error: out of range error"
-msgstr "lỗi nội bộ : lỗi ở ngoại phạm vi"
-
-#: elf32-avr.c:1257 elf32-bfin.c:2799 elf32-cr16.c:891 elf32-cr16c.c:794
-#: elf32-cris.c:1542 elf32-crx.c:937 elf32-d10v.c:521 elf32-fr30.c:620
-#: elf32-frv.c:4133 elf32-h8300.c:520 elf32-i860.c:1222 elf32-iq2000.c:651
-#: elf32-m32c.c:564 elf32-m32r.c:3128 elf32-m68hc1x.c:1137 elf32-mep.c:646
-#: elf32-msp430.c:501 elf32-openrisc.c:415 elf32-score.c:2460 elf32-spu.c:2817
-#: elf32-v850.c:1705 elf32-xstormy16.c:950 elf64-mmix.c:1537 elf-m10200.c:460
-#: elf-m10300.c:1527 elfxx-mips.c:8025
-msgid "internal error: unsupported relocation error"
-msgstr "lỗi nội bộ : lỗi định vị lại không được hỗ trợ"
-
-#: elf32-avr.c:1261 elf32-bfin.c:2803 elf32-cris.c:1546 elf32-fr30.c:624
-#: elf32-frv.c:4137 elf32-i860.c:1226 elf32-ip2k.c:1510 elf32-iq2000.c:655
-#: elf32-m32c.c:568 elf32-mep.c:650 elf32-msp430.c:505 elf32-mt.c:406
-#: elf32-openrisc.c:419 elf32-v850.c:1709 elf32-xstormy16.c:954
+#: elf32-avr.c:1258 elf32-bfin.c:3222 elf32-cris.c:1546 elf32-fr30.c:624
+#: elf32-frv.c:4122 elf32-i860.c:1226 elf32-ip2k.c:1510 elf32-iq2000.c:699
+#: elf32-m32c.c:568 elf32-mep.c:549 elf32-msp430.c:501 elf32-mt.c:406
+#: elf32-openrisc.c:419 elf32-v850.c:1711 elf32-xstormy16.c:956
 #: elf64-mmix.c:1541
 msgid "internal error: dangerous relocation"
 msgstr "lỗi nội bộ : định vị lại nguy hiểm"
 
-#: elf32-avr.c:1265 elf32-bfin.c:2807 elf32-cr16.c:899 elf32-cr16c.c:802
-#: elf32-cris.c:1550 elf32-crx.c:945 elf32-d10v.c:529 elf32-fr30.c:628
-#: elf32-frv.c:4141 elf32-h8300.c:528 elf32-i860.c:1230 elf32-ip2k.c:1514
-#: elf32-iq2000.c:659 elf32-m32c.c:572 elf32-m32r.c:3136 elf32-m68hc1x.c:1145
-#: elf32-mep.c:654 elf32-msp430.c:509 elf32-mt.c:410 elf32-openrisc.c:423
-#: elf32-score.c:2468 elf32-spu.c:2825 elf32-v850.c:1725 elf32-xstormy16.c:958
-#: elf64-mmix.c:1545 elf-m10200.c:468 elf-m10300.c:1540
-msgid "internal error: unknown error"
-msgstr "lỗi nội bộ : lỗi không rõ"
-
-#: elf32-avr.c:2369 elf32-hppa.c:595 elf32-m68hc1x.c:164 elf64-ppc.c:3802
+#: elf32-avr.c:2396 elf32-hppa.c:605 elf32-m68hc1x.c:164 elf64-ppc.c:3983
 msgid "%B: cannot create stub entry %s"
 msgstr "%B: không thể tạo mục nhập mẩu %s"
 
-#: elf32-bfin.c:2274
-msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend"
-msgstr "%B: định vị lại ở « %A+0x%x » tham chiếu đến ký hiệu « %s » với số hạng khác không"
-
-#: elf32-bfin.c:2288 elf32-frv.c:2919
-msgid "relocation references symbol not defined in the module"
-msgstr "định vị lại tham chiếu đến ký hiệu không được định nghĩa trong mô-đun"
-
-#: elf32-bfin.c:2385
-msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend"
-msgstr "R_FRV_FUNCDESC tham chiếu đến ký hiệu động với số hạng khác không"
-
-#: elf32-bfin.c:2424 elf32-bfin.c:2547 elf32-frv.c:3656 elf32-frv.c:3777
-msgid "cannot emit fixups in read-only section"
-msgstr "Không thể phát ra sự sửa chữa trong phần chỉ đọc"
-
-#: elf32-bfin.c:2452 elf32-bfin.c:2587 elf32-frv.c:3687 elf32-frv.c:3821
-msgid "cannot emit dynamic relocations in read-only section"
-msgstr "không thể phát ra định vị lại động trong phần chỉ đọc"
-
-#: elf32-bfin.c:2505
-msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
-msgstr "R_FRV_FUNCDESC_VALUE tham chiếu đến ký hiệu động với số hạng khác không"
-
-#: elf32-bfin.c:2673
-msgid "relocations between different segments are not supported"
-msgstr "không hỗ trợ định vị lại giữa các đoạn khác nhau"
-
-#: elf32-bfin.c:2674
-msgid "warning: relocation references a different segment"
-msgstr "cảnh báo : định vị lại tham chiếu đến một đoạn khác"
-
-#: elf32-bfin.c:3083
+#: elf32-bfin.c:1585
 msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'"
 msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết đối với ký hiệu « %s »"
 
-#: elf32-bfin.c:3116 elf32-i386.c:3351 elf32-m68k.c:2023 elf32-s390.c:3100
-#: elf64-s390.c:3061 elf64-x86-64.c:3041
+#: elf32-bfin.c:1618 elf32-i386.c:3623 elf32-m68k.c:3557 elf32-s390.c:3110
+#: elf64-s390.c:3071 elf64-x86-64.c:3278
 msgid "%B(%A+0x%lx): reloc against `%s': error %d"
 msgstr "%B(%A+0x%lx): định vị lại đối với « %s »: lỗi %d"
 
-#: elf32-bfin.c:4687 elf32-frv.c:6423
+#: elf32-bfin.c:2711
+msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend"
+msgstr "%B: định vị lại ở « %A+0x%x » tham chiếu đến ký hiệu « %s » với số hạng khác không"
+
+#: elf32-bfin.c:2725 elf32-frv.c:2904
+msgid "relocation references symbol not defined in the module"
+msgstr "định vị lại tham chiếu đến ký hiệu không được định nghĩa trong mô-đun"
+
+#: elf32-bfin.c:2822
+msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend"
+msgstr "R_FRV_FUNCDESC tham chiếu đến ký hiệu động với số hạng khác không"
+
+#: elf32-bfin.c:2861 elf32-bfin.c:2987 elf32-frv.c:3641 elf32-frv.c:3762
+msgid "cannot emit fixups in read-only section"
+msgstr "Không thể phát ra sự sửa chữa trong phần chỉ đọc"
+
+#: elf32-bfin.c:2889 elf32-bfin.c:3036 elf32-frv.c:3672 elf32-frv.c:3806
+msgid "cannot emit dynamic relocations in read-only section"
+msgstr "không thể phát ra định vị lại động trong phần chỉ đọc"
+
+#: elf32-bfin.c:2945
+msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
+msgstr "R_FRV_FUNCDESC_VALUE tham chiếu đến ký hiệu động với số hạng khác không"
+
+#: elf32-bfin.c:3126
+msgid "relocations between different segments are not supported"
+msgstr "không hỗ trợ định vị lại giữa các đoạn khác nhau"
+
+#: elf32-bfin.c:3127
+msgid "warning: relocation references a different segment"
+msgstr "cảnh báo : định vị lại tham chiếu đến một đoạn khác"
+
+#: elf32-bfin.c:4791 elf32-frv.c:6404
 msgid "%B: unsupported relocation type %i"
 msgstr "%B: kiểu định vị lại không được hỗ trợ %i"
 
-#: elf32-bfin.c:4868 elf32-frv.c:6831
+#: elf32-bfin.c:4944 elf32-frv.c:6812
 #, c-format
 msgid "%s: cannot link non-fdpic object file into fdpic executable"
 msgstr "%s: không thể liên kết tập tin đối tượng khác fdpic vào tập tin fdpic có thể thực hiện"
 
-#: elf32-bfin.c:4872 elf32-frv.c:6835
+#: elf32-bfin.c:4948 elf32-frv.c:6816
 #, c-format
 msgid "%s: cannot link fdpic object file into non-fdpic executable"
 msgstr "%s: không thể liên kết tập tin đối tượng khác fdpic vào tập tin khác fdpic có thể thực hiện"
 
-#: elf32-cr16.c:895 elf32-cr16c.c:798 elf32-crx.c:941 elf32-d10v.c:525
-#: elf32-h8300.c:524 elf32-m32r.c:3132 elf32-m68hc1x.c:1141 elf32-score.c:2464
-#: elf32-spu.c:2821 elf-m10200.c:464
-msgid "internal error: dangerous error"
-msgstr "lỗi nội bộ : lỗi nguy hiểm"
-
 #: elf32-cris.c:1060
 msgid "%B, section %A: unresolvable relocation %s against symbol `%s'"
 msgstr "%B, phần %A: định vị lại không thể giải quyết %s đối với ký hiệu « %s »"
@@ -1089,7 +1261,7 @@
 msgid "%B: Internal inconsistency; no relocation section %s"
 msgstr "%s: Sự mâu thuẫn nội bộ ; không có phần định vị lại %s"
 
-#: elf32-cris.c:2511
+#: elf32-cris.c:2510
 msgid ""
 "%B, section %A:\n"
 "  v10/v32 compatible object %s must not contain a PIC relocation"
@@ -1097,7 +1269,7 @@
 "%B, phần %A:\n"
 "  đối tượng tương thích v10/v32 %s không được chứa định vị lại PIC"
 
-#: elf32-cris.c:2698 elf32-cris.c:2766
+#: elf32-cris.c:2697 elf32-cris.c:2765
 msgid ""
 "%B, section %A:\n"
 "  relocation %s should not be used in a shared object; recompile with -fPIC"
@@ -1105,129 +1277,129 @@
 "%B, phần %A:\n"
 "  không được sử dụng định vị lại %s trong một đối tượng chia sẻ; hãy biên dịch lại với -fPIC"
 
-#: elf32-cris.c:3183
+#: elf32-cris.c:3184
 msgid "Unexpected machine number"
 msgstr "Số thứ tự máy bất thường"
 
-#: elf32-cris.c:3237
+#: elf32-cris.c:3238
 #, c-format
 msgid " [symbols have a _ prefix]"
 msgstr " [ký hiệu có một tiền tố _]"
 
-#: elf32-cris.c:3240
+#: elf32-cris.c:3241
 #, c-format
 msgid " [v10 and v32]"
 msgstr " [v10 và v32]"
 
-#: elf32-cris.c:3243
+#: elf32-cris.c:3244
 #, c-format
 msgid " [v32]"
 msgstr " [v32]"
 
-#: elf32-cris.c:3288
+#: elf32-cris.c:3289
 msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols"
 msgstr "%B: dùng ký hiệu tiền tố _, nhưng đang ghi tập tin với ký hiệu không phải tiền tố"
 
-#: elf32-cris.c:3289
+#: elf32-cris.c:3290
 msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols"
 msgstr "%B: dùng ký hiệu không phải tiền tố, nhưng đang ghi tập tin với ký hiệu có tiền tố _"
 
-#: elf32-cris.c:3308
+#: elf32-cris.c:3309
 msgid "%B contains CRIS v32 code, incompatible with previous objects"
 msgstr "%B chứa mã CRIS v32, không tương thích với các đối tượng trước"
 
-#: elf32-cris.c:3310
+#: elf32-cris.c:3311
 msgid "%B contains non-CRIS-v32 code, incompatible with previous objects"
 msgstr "%B chứa mã khác CRIS v32, không tương thích với các đối tượng trước"
 
-#: elf32-frv.c:1523 elf32-frv.c:1672
+#: elf32-frv.c:1507 elf32-frv.c:1656
 msgid "relocation requires zero addend"
 msgstr "định vị lại cần thiết số hạng số không"
 
-#: elf32-frv.c:2906
+#: elf32-frv.c:2891
 msgid "%B(%A+0x%x): relocation to `%s+%x' may have caused the error above"
 msgstr "%B(%A+0x%x): định vị lại tới « %s+%x » có thể gây ra lỗi trên"
 
-#: elf32-frv.c:2995
+#: elf32-frv.c:2980
 msgid "R_FRV_GETTLSOFF not applied to a call instruction"
 msgstr "R_FRV_GETTLSOFF không áp dụng tới một chỉ dẫn call"
 
-#: elf32-frv.c:3037
+#: elf32-frv.c:3022
 msgid "R_FRV_GOTTLSDESC12 not applied to an lddi instruction"
 msgstr "R_FRV_GOTTLSDESC12 không áp dụng tới một chỉ dẫn lddi"
 
-#: elf32-frv.c:3108
+#: elf32-frv.c:3093
 msgid "R_FRV_GOTTLSDESCHI not applied to a sethi instruction"
 msgstr "R_FRV_GOTTLSDESCHI không áp dụng tới một chỉ dẫn sethi"
 
-#: elf32-frv.c:3145
+#: elf32-frv.c:3130
 msgid "R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction"
 msgstr "R_FRV_GOTTLSDESCLO không áp dụng tới một chỉ dẫn setlo hay setlos"
 
-#: elf32-frv.c:3193
+#: elf32-frv.c:3178
 msgid "R_FRV_TLSDESC_RELAX not applied to an ldd instruction"
 msgstr "R_FRV_TLSDESC_RELAX không áp dụng tới một chỉ dẫn ldd"
 
-#: elf32-frv.c:3277
+#: elf32-frv.c:3262
 msgid "R_FRV_GETTLSOFF_RELAX not applied to a calll instruction"
 msgstr "R_FRV_GETTLSOFF_RELAX không áp dụng tới một chỉ dẫn calll"
 
-#: elf32-frv.c:3332
+#: elf32-frv.c:3317
 msgid "R_FRV_GOTTLSOFF12 not applied to an ldi instruction"
 msgstr "R_FRV_GOTTLSOFF12 không áp dụng tới một chỉ dẫn ldi"
 
-#: elf32-frv.c:3362
+#: elf32-frv.c:3347
 msgid "R_FRV_GOTTLSOFFHI not applied to a sethi instruction"
 msgstr "R_FRV_GOTTLSOFFHI không áp dụng tới một chỉ dẫn sethi"
 
-#: elf32-frv.c:3391
+#: elf32-frv.c:3376
 msgid "R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction"
 msgstr "R_FRV_GOTTLSOFFLO không áp dụng tới một chỉ dẫn setlo hay setlos"
 
-#: elf32-frv.c:3422
+#: elf32-frv.c:3407
 msgid "R_FRV_TLSOFF_RELAX not applied to an ld instruction"
 msgstr "R_FRV_TLSOFF_RELAX không áp dụng tới một chỉ dẫn ld"
 
-#: elf32-frv.c:3467
+#: elf32-frv.c:3452
 msgid "R_FRV_TLSMOFFHI not applied to a sethi instruction"
 msgstr "R_FRV_TLSMOFFHI không áp dụng tới một chỉ dẫn sethi"
 
-#: elf32-frv.c:3494
+#: elf32-frv.c:3479
 msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction"
 msgstr "R_FRV_TLSMOFFLO không áp dụng tới một chỉ dẫn setlo hay setlos"
 
-#: elf32-frv.c:3615
+#: elf32-frv.c:3600
 msgid "R_FRV_FUNCDESC references dynamic symbol with nonzero addend"
 msgstr "R_FRV_FUNCDESC tham chiếu đến ký hiệu động với số hạng khác không"
 
-#: elf32-frv.c:3735
+#: elf32-frv.c:3720
 msgid "R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
 msgstr "R_FRV_FUNCDESC_VALUE tham chiếu đến ký hiệu động với số hạng khác không"
 
-#: elf32-frv.c:3992 elf32-frv.c:4148
+#: elf32-frv.c:3977 elf32-frv.c:4133
 msgid "%B(%A+0x%lx): reloc against `%s': %s"
 msgstr "%B(%A+0x%lx): định vị lại đối với « %s »: %s"
 
-#: elf32-frv.c:3994 elf32-frv.c:3998
+#: elf32-frv.c:3979 elf32-frv.c:3983
 msgid "relocation references a different segment"
 msgstr "định vị lại tham chiếu đến một đoạn khác"
 
-#: elf32-frv.c:6745
+#: elf32-frv.c:6726
 #, c-format
 msgid "%s: compiled with %s and linked with modules that use non-pic relocations"
 msgstr "%s: biên dịch với %s và liên kết với môđun sử dụng định vị lại khác pic"
 
-#: elf32-frv.c:6798 elf32-iq2000.c:808 elf32-m32c.c:819
+#: elf32-frv.c:6779 elf32-iq2000.c:852 elf32-m32c.c:814
 #, c-format
 msgid "%s: compiled with %s and linked with modules compiled with %s"
 msgstr "%s: biên dịch với %s và liên kết với môđun biên dịch với %s"
 
-#: elf32-frv.c:6810
+#: elf32-frv.c:6791
 #, c-format
 msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)"
 msgstr "%s: sử dụng trường e_flags không rõ (0x%lx) khác với mođun trước (0x%lx)"
 
-#: elf32-frv.c:6860 elf32-iq2000.c:845 elf32-m32c.c:855 elf32-mt.c:587
+#: elf32-frv.c:6841 elf32-iq2000.c:889 elf32-m32c.c:850 elf32-mt.c:583
 #, c-format
 msgid "private flags = 0x%lx:"
 msgstr "các cờ riêng = 0x%lx:"
@@ -1236,55 +1408,79 @@
 msgid "%B: Relocations in generic ELF (EM: %d)"
 msgstr "%B: Định vị lại trong ELF chung (EM: %d)"
 
-#: elf32-hppa.c:844 elf32-hppa.c:3577
+#: elf32-hppa.c:854 elf32-hppa.c:3600
 msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections"
 msgstr "%B(%A+0x%lx): không thể tới %s, hãy biên dịch lại với « -ffunction-sections »"
 
-#: elf32-hppa.c:1253
+#: elf32-hppa.c:1263
 msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC"
 msgstr "%B: không dùng được định vị lại %s khi tạo một đối tượng chia sẽ, hãy biên dịch lại với « -fPIC »"
 
-#: elf32-hppa.c:1506
+#: elf32-hppa.c:1518
 #, c-format
 msgid "Could not find relocation section for %s"
 msgstr "Không tìm thấy phần định vị lại cho %s"
 
-#: elf32-hppa.c:2795
+#: elf32-hppa.c:2810
 msgid "%B: duplicate export stub %s"
 msgstr "%B: mẩu xuất trùng %s"
 
-#: elf32-hppa.c:3413
+#: elf32-hppa.c:3436
 msgid "%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link"
 msgstr "%B(%A+0x%lx): %s sự sửa chữa cho chỉ dẫn 0x%x không được hỗ trợ trong một liên kết không chia sẻ"
 
-#: elf32-hppa.c:4267
+#: elf32-hppa.c:4290
 msgid "%B(%A+0x%lx): cannot handle %s for %s"
 msgstr "%B(%A+0x%lx): không thể xử lý %s cho %s"
 
-#: elf32-hppa.c:4574
+#: elf32-hppa.c:4597
 msgid ".got section not immediately after .plt section"
 msgstr "Phần .got không nằm ngay sau phần .pit"
 
-#: elf32-i386.c:364 elf32-ppc.c:1616 elf32-s390.c:379 elf64-ppc.c:2148
-#: elf64-s390.c:403 elf64-x86-64.c:221
+#: elf32-i386.c:362 elf32-ppc.c:1616 elf32-s390.c:379 elf64-ppc.c:2153
+#: elf64-s390.c:403 elf64-x86-64.c:222
 msgid "%B: invalid relocation type %d"
 msgstr "%B: kiểu định vị lại không hợp lệ %d"
 
-#: elf32-i386.c:1085 elf32-s390.c:1185 elf32-sh.c:5063 elf64-s390.c:1149
-#: elfxx-sparc.c:1243
+#: elf32-i386.c:1183 elf64-x86-64.c:964
+msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed"
+msgstr "%B: không thành công chuyển tiếp TLS từ %s sang %s đối với « %s » ở 0x%lx trong phần « %A »"
+
+#: elf32-i386.c:1364 elf32-s390.c:1188 elf32-sh.c:5098 elf32-xtensa.c:1162
+#: elf64-s390.c:1152 elfxx-sparc.c:1263
 msgid "%B: `%s' accessed both as normal and thread local symbol"
 msgstr "%B: đã truy cập « %s » theo ký hiệu cả hai kiểu bình thường và cục bộ cho mạch"
 
-#: elf32-i386.c:1200 elf32-s390.c:1294 elf64-ppc.c:4864 elf64-s390.c:1261
-#: elf64-x86-64.c:1051
+#: elf32-i386.c:1479 elf32-s390.c:1297 elf64-ppc.c:5046 elf64-s390.c:1264
+#: elf64-x86-64.c:1299
 msgid "%B: bad relocation section name `%s'"
 msgstr "%B: tên phần định vị lại sai « %s »"
 
-#: elf32-i386.c:2257
+#: elf32-i386.c:2598
 msgid "%B: unrecognized relocation (0x%x) in section `%A'"
 msgstr "%B: định vị lại không được nhận ra (0x%x) trong phần « %A »"
 
-#: elf32-i386.c:2479
+#: elf32-i386.c:2822 elf64-x86-64.c:2660
+msgid "hidden symbol"
+msgstr "ký hiệu bị ẩn"
+
+#: elf32-i386.c:2825 elf64-x86-64.c:2663
+msgid "internal symbol"
+msgstr "ký hiệu nội bộ"
+
+#: elf32-i386.c:2828 elf64-x86-64.c:2666
+msgid "protected symbol"
+msgstr "ký hiệu bị bảo vệ"
+
+#: elf32-i386.c:2831 elf64-x86-64.c:2669
+msgid "symbol"
+msgstr "ký hiệu"
+
+#: elf32-i386.c:2836
+msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object"
+msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối với %s chưa xác định « %s » khi tạo một đối tượng chia sẻ"
+
+#: elf32-i386.c:2846
 msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object"
 msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối với hàm số đã bảo vệ « %s » khi tạo một đối tượng chia sẻ"
 
@@ -1311,7 +1507,7 @@
 msgid "unsupported relocation between data/insn address spaces"
 msgstr "gặp định vị lại không được hỗ trợ giữa vùng địa chỉ kiểu dữ liệu và chỉ dẫn"
 
-#: elf32-iq2000.c:821 elf32-m32c.c:831
+#: elf32-iq2000.c:865 elf32-m32c.c:826
 #, c-format
 msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
 msgstr "%s: sử dụng trường e_flags (0x%lx) khác với mo-đun trước (0x%lx)"
@@ -1348,86 +1544,94 @@
 msgid ": m32r2 instructions"
 msgstr ": chỉ dẫn m32r2"
 
-#: elf32-m68hc1x.c:1045
+#: elf32-m68hc1x.c:1047
 #, c-format
 msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution"
 msgstr "Tham chiếu đến ký hiệu ở xa « %s » khi sử dụng một định vị lại sai thì có thể dẫn đến sự thực hiện sai"
 
-#: elf32-m68hc1x.c:1068
+#: elf32-m68hc1x.c:1070
 #, c-format
 msgid "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked address [%lx:%04lx] (%lx)"
 msgstr "địa chỉ đã đặt vào khối nhớ [%lx:%04lx] (%lx) không trong cùng khối nhớ với địa chỉ được đặt hiện thời vào khối nhớ [%lx:%04lx] (%lx)"
 
-#: elf32-m68hc1x.c:1087
+#: elf32-m68hc1x.c:1089
 #, c-format
 msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx"
 msgstr "tham chiếu đến một địa chỉ đã đặt vào khối nhớ [%lx:%04lx] trong vùng địa chỉ thông thường tại %04lx"
 
-#: elf32-m68hc1x.c:1220
+#: elf32-m68hc1x.c:1222
 msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers"
 msgstr "%B: đang liên kết các tập tin được biên dịch cho số nguyên 16 bit (-mshort) và các tập tin khác cho số nguyên 32 bit"
 
-#: elf32-m68hc1x.c:1227
+#: elf32-m68hc1x.c:1229
 msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double"
 msgstr "%B: đang liên kết các tập tin được biên dịch 32 bit đôi (-mshort) và các tập tin khác cho 64 bit đôi"
 
-#: elf32-m68hc1x.c:1236
+#: elf32-m68hc1x.c:1238
 msgid "%B: linking files compiled for HCS12 with others compiled for HC12"
 msgstr "%B: đang liên kết tập tin được biên dịch cho HCS12 với các tập tin khác biên dịch cho HC12"
 
-#: elf32-m68hc1x.c:1252 elf32-ppc.c:3734 elf64-sparc.c:697 elfxx-mips.c:11292
+#: elf32-m68hc1x.c:1254 elf32-ppc.c:4046 elf64-sparc.c:697 elfxx-mips.c:12561
 msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
 msgstr "%B: sử dụng trường e_flags (0x%lx) khác với mo-đun trước (0x%lx)"
 
-#: elf32-m68hc1x.c:1280
+#: elf32-m68hc1x.c:1282
 #, c-format
 msgid "[abi=32-bit int, "
 msgstr "[abi=số nguyên 32-bit, "
 
-#: elf32-m68hc1x.c:1282
+#: elf32-m68hc1x.c:1284
 #, c-format
 msgid "[abi=16-bit int, "
 msgstr "[abi=số nguyên 16-bit, "
 
-#: elf32-m68hc1x.c:1285
+#: elf32-m68hc1x.c:1287
 #, c-format
 msgid "64-bit double, "
 msgstr "64-bit đôi, "
 
-#: elf32-m68hc1x.c:1287
+#: elf32-m68hc1x.c:1289
 #, c-format
 msgid "32-bit double, "
 msgstr "32-bit đôi, "
 
-#: elf32-m68hc1x.c:1290
+#: elf32-m68hc1x.c:1292
 #, c-format
 msgid "cpu=HC11]"
 msgstr "cpu=HC11]"
 
-#: elf32-m68hc1x.c:1292
+#: elf32-m68hc1x.c:1294
 #, c-format
 msgid "cpu=HCS12]"
 msgstr "cpu=HCS12]"
 
-#: elf32-m68hc1x.c:1294
+#: elf32-m68hc1x.c:1296
 #, c-format
 msgid "cpu=HC12]"
 msgstr "cpu=HC12]"
 
-#: elf32-m68hc1x.c:1297
+#: elf32-m68hc1x.c:1299
 #, c-format
 msgid " [memory=bank-model]"
 msgstr " [bộ nhớ=chế độ khối]"
 
-#: elf32-m68hc1x.c:1299
+#: elf32-m68hc1x.c:1301
 #, c-format
 msgid " [memory=flat]"
 msgstr " [bộ nhớ=phẳng]"
 
-#: elf32-m68k.c:635 elf32-m68k.c:636
+#: elf32-m68k.c:789 elf32-m68k.c:790
 msgid "unknown"
 msgstr "không rõ"
 
+#: elf32-m68k.c:1216
+msgid "%B: GOT overflow: Number of R_68K_GOT8O relocations > %d"
+msgstr "%B: tràn GOT: số các bố trí lại kiểu R_68K_GOT8O > %d"
+
+#: elf32-m68k.c:1221
+msgid "%B: GOT overflow: Number of R_68K_GOT8O and R_68K_GOT16O relocations > %d"
+msgstr "%B: tràn GOT: số các bố trí lại kiểu R_68K_GOT8O và R_68K_GOT16O > %d"
+
 #: elf32-mcore.c:99 elf32-mcore.c:442
 msgid "%B: Relocation %s (%d) is not currently supported.\n"
 msgstr "%B: Định vị lại %s (%d) hiện thời không được hỗ trợ.\n"
@@ -1436,24 +1640,24 @@
 msgid "%B: Unknown relocation type %d\n"
 msgstr "%B: Kiểu định vị lại không rõ %d\n"
 
-#: elf32-mep.c:812
+#: elf32-mep.c:654
 msgid "%B and %B are for different cores"
 msgstr "%B và %B dành cho lõi khác nhau"
 
-#: elf32-mep.c:829
+#: elf32-mep.c:671
 msgid "%B and %B are for different configurations"
 msgstr "%B và %B dành cho cấu hình khác nhau"
 
-#: elf32-mep.c:867
+#: elf32-mep.c:709
 #, c-format
 msgid "private flags = 0x%lx"
 msgstr "các cờ riêng = 0x%lx"
 
-#: elf32-mips.c:989 elf64-mips.c:1976 elfn32-mips.c:1808
+#: elf32-mips.c:1045 elf64-mips.c:2056 elfn32-mips.c:1888
 msgid "literal relocation occurs for an external symbol"
 msgstr "định vị lại nghĩa chữ xảy ra cho một ký hiệu bên ngoài"
 
-#: elf32-mips.c:1029 elf32-score.c:484 elf64-mips.c:2019 elfn32-mips.c:1849
+#: elf32-mips.c:1085 elf32-score.c:484 elf64-mips.c:2099 elfn32-mips.c:1929
 msgid "32bits gp relative relocation occurs for an external symbol"
 msgstr "định vị lại tương đối 32-bit gp xảy ra cho một ký hiệu bên ngoài"
 
@@ -1462,162 +1666,143 @@
 msgid "generic linker can't handle %s"
 msgstr "trình liên kết chung không thể xử lý %s"
 
-#: elf32-ppc.c:2163
+#: elf32-ppc.c:2161
 msgid "corrupt or empty %s section in %B"
 msgstr "Gặp phần %s bị hỏng hoặc còn rỗng trong %B"
 
-#: elf32-ppc.c:2170
+#: elf32-ppc.c:2168
 msgid "unable to read in %s section from %B"
 msgstr "không thể đọc trong phần %s từ %B"
 
-#: elf32-ppc.c:2176
+#: elf32-ppc.c:2174
 msgid "corrupt %s section in %B"
 msgstr "phần %s bị hỏng trong %b"
 
-#: elf32-ppc.c:2219
+#: elf32-ppc.c:2217
 msgid "warning: unable to set size of %s section in %B"
 msgstr "cảnh báo : không thể đặt kích cỡ của phần %s trong %B"
 
-#: elf32-ppc.c:2267
+#: elf32-ppc.c:2265
 msgid "failed to allocate space for new APUinfo section."
 msgstr "lỗi cấp phát sức chứa cho phần thông tin APUinfo mới."
 
-#: elf32-ppc.c:2286
+#: elf32-ppc.c:2284
 msgid "failed to compute new APUinfo section."
 msgstr "lỗi tính phần thông tin APUinfo mới."
 
-#: elf32-ppc.c:2289
+#: elf32-ppc.c:2287
 msgid "failed to install new APUinfo section."
 msgstr "lỗi cài đặt phần thông tin APUinfo mới."
 
-#: elf32-ppc.c:3022
+#: elf32-ppc.c:3263
 msgid "%B: relocation %s cannot be used when making a shared object"
 msgstr "%B: không dùng được định vị lại %s khi tạo một đối tượng chia sẻ"
 
 #. It does not make sense to have a procedure linkage
 #. table entry for a local symbol.
-#: elf32-ppc.c:3292
+#: elf32-ppc.c:3534
 msgid "%B(%A+0x%lx): %s reloc against local symbol"
 msgstr "%B(%A+0x%lx): %s định vị lại đối với ký hiệu cục bộ"
 
-#: elf32-ppc.c:3633 elf32-ppc.c:3637 elfxx-mips.c:11036 elfxx-mips.c:11055
-#: elfxx-mips.c:11070
+#: elf32-ppc.c:3885 elf32-ppc.c:3900 elfxx-mips.c:12268 elfxx-mips.c:12294
+#: elfxx-mips.c:12316 elfxx-mips.c:12342
 msgid "Warning: %B uses hard float, %B uses soft float"
 msgstr "Cảnh báo : %B dùng trôi cứng, còn %B dùng trôi mềm"
 
-#: elf32-ppc.c:3640 elf32-ppc.c:3644 elfxx-mips.c:11017 elfxx-mips.c:11021
+#: elf32-ppc.c:3888 elf32-ppc.c:3892
+msgid "Warning: %B uses double-precision hard float, %B uses single-precision hard float"
+msgstr "Cảnh báo : %B dùng trôi cứng chính xác đôi, còn %B dùng trôi cứng chính xác đơn"
+
+#: elf32-ppc.c:3896
+msgid "Warning: %B uses soft float, %B uses single-precision hard float"
+msgstr "Cảnh báo : %B dùng trôi mềm, còn %B dùng trôi cứng chính xác đơn"
+
+#: elf32-ppc.c:3903 elf32-ppc.c:3907 elfxx-mips.c:12248 elfxx-mips.c:12252
 msgid "Warning: %B uses unknown floating point ABI %d"
 msgstr "Cảnh báo : %B dùng điểm trôi không rõ ABI %d"
 
-#: elf32-ppc.c:3699
+#: elf32-ppc.c:3949 elf32-ppc.c:3953
+msgid "Warning: %B uses unknown vector ABI %d"
+msgstr "Cảnh báo : %B dùng véc-tơ không nhận ra ABI %d"
+
+#: elf32-ppc.c:3957
+msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\""
+msgstr "Cảnh báo : %B dùng véc-tơ ABI « %s », còn %B dùng « %s »"
+
+#: elf32-ppc.c:4011
 msgid "%B: compiled with -mrelocatable and linked with modules compiled normally"
 msgstr "%B: đã biên dịch với « -mrelocatable » và đã liên kết với các môđun biên dịch bình thường"
 
-#: elf32-ppc.c:3707
+#: elf32-ppc.c:4019
 msgid "%B: compiled normally and linked with modules compiled with -mrelocatable"
 msgstr "%B: đã biên dịch bình thường và đã liên kết với các môđun biên dịch với « -mrelocatable »"
 
-#: elf32-ppc.c:3793
+#: elf32-ppc.c:4105
 msgid "Using bss-plt due to %B"
 msgstr "Đang dùng biss-pit do %B"
 
-#: elf32-ppc.c:6002 elf64-ppc.c:10490
+#: elf32-ppc.c:6418 elf64-ppc.c:10881
 msgid "%B: unknown relocation type %d for symbol %s"
 msgstr "%B: không rõ kiểu định vị lại %d cho ký hiệu %s"
 
-#: elf32-ppc.c:6252
+#: elf32-ppc.c:6668
 msgid "%B(%A+0x%lx): non-zero addend on %s reloc against `%s'"
 msgstr "%B(%A+0x%lx): số hạng khác không trên định vị lại %s đối với « %s »"
 
-#: elf32-ppc.c:6597 elf32-ppc.c:6623 elf32-ppc.c:6682
+#: elf32-ppc.c:7024 elf32-ppc.c:7050 elf32-ppc.c:7109
 msgid "%B: the target (%s) of a %s relocation is in the wrong output section (%s)"
 msgstr "%B: đích (%s) của một định vị lại %s nằm trong phần kết xuất không đúng (%s)"
 
-#: elf32-ppc.c:6737
+#: elf32-ppc.c:7164
 msgid "%B: relocation %s is not yet supported for symbol %s."
 msgstr "%B: định vị lại %s chưa được hỗ trợ cho ký hiệu %s."
 
-#: elf32-ppc.c:6845 elf64-ppc.c:11185
+#: elf32-ppc.c:7272 elf64-ppc.c:11575
 msgid "%B(%A+0x%lx): %s reloc against `%s': error %d"
 msgstr "%B(%A+0x%lx): %s định vị lại đối với « %s »: lỗi %d"
 
-#: elf32-s390.c:2238 elf64-s390.c:2212
+#: elf32-s390.c:2246 elf64-s390.c:2220
 msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s"
 msgstr "%B(%A+0x%lx): chỉ dẫn không hợp lệ cho định vị lại TLS %s"
 
-#: elf32-score.c:1418 elfxx-mips.c:2699
+#: elf32-score.c:1415 elfxx-mips.c:3273
 msgid "not enough GOT space for local GOT entries"
 msgstr "không đủ sức chứa GOT cho các mục nhập GOT cục bộ"
 
-#: elf32-score.c:2550
+#: elf32-score.c:2545
 #, c-format
 msgid "%s: Malformed reloc detected for section %s"
 msgstr "%s: định vị lại dạng sai được phát hiện cho phần %s"
 
-#: elf32-score.c:2601
+#: elf32-score.c:2596
 msgid "%B: CALL15 reloc at 0x%lx not against global symbol"
 msgstr "%B: CALL15 định vị lại tại 0x%lx không phải so với ký hiệu toàn cục"
 
-#: elf32-score.c:3756
+#: elf32-score.c:3753
 #, c-format
 msgid " [pic]"
 msgstr " [pic]"
 
-#: elf32-score.c:3760
+#: elf32-score.c:3757
 #, c-format
 msgid " [fix dep]"
 msgstr " [sửa quan hệ phụ thuộc]"
 
-#: elf32-score.c:3802 elfxx-mips.c:11201
+#: elf32-score.c:3799
 msgid "%B: warning: linking PIC files with non-PIC files"
 msgstr "%B: cảnh báo : đang liên kết tập tin PIC với tập tin khác PIC"
 
-#: elf32-sh64.c:222 elf64-sh64.c:2350
-#, c-format
-msgid "%s: compiled as 32-bit object and %s is 64-bit"
-msgstr "%s: biên dịch như một đối tượng 32-bit và %s là 64-bit"
+#: elf32-sh-symbian.c:130
+msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS"
+msgstr "%B: chỉ thị IMPORT AS (nhập dạng) cho %s cũng ẩn chỉ thị IMPORT AS trước"
 
-#: elf32-sh64.c:225 elf64-sh64.c:2353
-#, c-format
-msgid "%s: compiled as 64-bit object and %s is 32-bit"
-msgstr "%s: biên dịch như một đối tượng 64-bit và %s là 32-bit"
+#: elf32-sh-symbian.c:383
+msgid "%B: Unrecognised .directive command: %s"
+msgstr "%B: Không nhận ra câu lệnh .directive: %s"
 
-#: elf32-sh64.c:227 elf64-sh64.c:2355
-#, c-format
-msgid "%s: object size does not match that of target %s"
-msgstr "%s: kích cỡ đối tượng không tương ứng với kích cỡ của đích %s"
-
-#: elf32-sh64.c:450 elf64-sh64.c:2894
-#, c-format
-msgid "%s: encountered datalabel symbol in input"
-msgstr "%s: gặp ký hiệu nhãn dữ liệu trong dữ liệu nhập vào"
-
-#: elf32-sh64.c:527
-msgid "PTB mismatch: a SHmedia address (bit 0 == 1)"
-msgstr "Sai khớp PTB: một địa chỉ SHmedia (bit 0 == 1)"
-
-#: elf32-sh64.c:530
-msgid "PTA mismatch: a SHcompact address (bit 0 == 0)"
-msgstr "Sai khớp PTA: một địa chỉ SHcompact (bit 0 == 0)"
-
-#: elf32-sh64.c:548
-#, c-format
-msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16"
-msgstr "%s: Lỗi GAS: chỉ dẫn PTB bất thường với R_SH_PT_16"
-
-#: elf32-sh64.c:597
-msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n"
-msgstr "%B: lỗi: kiểu định vị lại chưa sắp hàng %d tại %08x định vị lại %p\n"
-
-#: elf32-sh64.c:673
-#, c-format
-msgid "%s: could not write out added .cranges entries"
-msgstr "%s: không thể ghi ra các mục nhập .cranges đã thêm"
-
-#: elf32-sh64.c:733
-#, c-format
-msgid "%s: could not write out sorted .cranges entries"
-msgstr "%s: không thể ghi ra các mục nhập .cranges đã sắp xếp"
+#: elf32-sh-symbian.c:504
+msgid "%B: Failed to add renamed symbol %s"
+msgstr "%B: Lỗi thêm ký hiệu đã đặt tên lại %s"
 
 #: elf32-sh.c:533
 msgid "%B: 0x%lx: warning: bad R_SH_USES offset"
@@ -1651,41 +1836,76 @@
 msgid "%B: 0x%lx: fatal: reloc overflow while relaxing"
 msgstr "%B: 0x%lx: lỗi nặng: tràn định vị lại trong khi giảm nhẹ"
 
-#: elf32-sh.c:3249 elf64-sh64.c:1526
+#: elf32-sh.c:3279 elf64-sh64.c:1526
 msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled"
 msgstr "Không xử lý được STO_SH5_ISA32 không mong đợi trên ký hiệu cục bộ"
 
-#: elf32-sh.c:3486
+#: elf32-sh.c:3516
 msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation"
 msgstr "%B: 0x%lx: lỗi nặng: có đích nhánh chưa sắp hàng cho định vị lại hỗ trợ giảm nhẹ"
 
-#: elf32-sh.c:3519 elf32-sh.c:3534
+#: elf32-sh.c:3549 elf32-sh.c:3564
 msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx"
 msgstr "%B: 0x%lx: lỗi nặng: định vị lại %s chưa sắp hàng 0x%lx"
 
-#: elf32-sh.c:3548
+#: elf32-sh.c:3578
 msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32"
 msgstr "%B: 0x%lx: lỗi nặng: R_SH_PSHA định vị lại %d không nằm trong phạm vi -32..32"
 
-#: elf32-sh.c:3562
+#: elf32-sh.c:3592
 msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32"
 msgstr "%B: 0x%lx: lỗi nặng: R_SH_PSHL định vị lại %d không nằm trong phạm vi -32..32"
 
-#: elf32-sh.c:5275 elf64-alpha.c:4533
+#: elf32-sh.c:5310 elf64-alpha.c:4552
 msgid "%B: TLS local exec code cannot be linked into shared objects"
 msgstr "%B: mã thực hiện cục bộ TLS không thể được liên kết vào đối tượng chia sẻ"
 
-#: elf32-sh-symbian.c:130
-msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS"
-msgstr "%B: chỉ thị IMPORT AS (nhập dạng) cho %s cũng ẩn chỉ thị IMPORT AS trước"
+#: elf32-sh64.c:222 elf64-sh64.c:2345
+#, c-format
+msgid "%s: compiled as 32-bit object and %s is 64-bit"
+msgstr "%s: biên dịch như một đối tượng 32-bit và %s là 64-bit"
 
-#: elf32-sh-symbian.c:383
-msgid "%B: Unrecognised .directive command: %s"
-msgstr "%B: Không nhận ra câu lệnh .directive: %s"
+#: elf32-sh64.c:225 elf64-sh64.c:2348
+#, c-format
+msgid "%s: compiled as 64-bit object and %s is 32-bit"
+msgstr "%s: biên dịch như một đối tượng 64-bit và %s là 32-bit"
 
-#: elf32-sh-symbian.c:504
-msgid "%B: Failed to add renamed symbol %s"
-msgstr "%B: Lỗi thêm ký hiệu đã đặt tên lại %s"
+#: elf32-sh64.c:227 elf64-sh64.c:2350
+#, c-format
+msgid "%s: object size does not match that of target %s"
+msgstr "%s: kích cỡ đối tượng không tương ứng với kích cỡ của đích %s"
+
+#: elf32-sh64.c:450 elf64-sh64.c:2888
+#, c-format
+msgid "%s: encountered datalabel symbol in input"
+msgstr "%s: gặp ký hiệu nhãn dữ liệu trong dữ liệu nhập vào"
+
+#: elf32-sh64.c:527
+msgid "PTB mismatch: a SHmedia address (bit 0 == 1)"
+msgstr "Sai khớp PTB: một địa chỉ SHmedia (bit 0 == 1)"
+
+#: elf32-sh64.c:530
+msgid "PTA mismatch: a SHcompact address (bit 0 == 0)"
+msgstr "Sai khớp PTA: một địa chỉ SHcompact (bit 0 == 0)"
+
+#: elf32-sh64.c:548
+#, c-format
+msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16"
+msgstr "%s: Lỗi GAS: chỉ dẫn PTB bất thường với R_SH_PT_16"
+
+#: elf32-sh64.c:597
+msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n"
+msgstr "%B: lỗi: kiểu định vị lại chưa sắp hàng %d tại %08x định vị lại %p\n"
+
+#: elf32-sh64.c:673
+#, c-format
+msgid "%s: could not write out added .cranges entries"
+msgstr "%s: không thể ghi ra các mục nhập .cranges đã thêm"
+
+#: elf32-sh64.c:733
+#, c-format
+msgid "%s: could not write out sorted .cranges entries"
+msgstr "%s: không thể ghi ra các mục nhập .cranges đã sắp xếp"
 
 #: elf32-sparc.c:89
 msgid "%B: compiled for a 64 bit system and target is 32 bit"
@@ -1695,69 +1915,103 @@
 msgid "%B: linking little endian files with big endian files"
 msgstr "%B: đang liên kết tập tin về cuối nhỏ với tập tin về cuối lớn"
 
-#: elf32-spu.c:995
+#: elf32-spu.c:607
+msgid "%X%P: overlay sections %A and %A do not start at the same address.\n"
+msgstr "%X%P: hai phần phủ %A và %A không bắt đầu ở cùng một địa chỉ.\n"
+
+#: elf32-spu.c:805
 msgid "warning: call to non-function symbol %s defined in %B"
 msgstr "cảnh báo : cuộc gọi ký hiệu khác hàm %s được xác định trong %B"
 
-#: elf32-spu.c:1315
+#: elf32-spu.c:1406
 msgid "%B is not allowed to define %s"
 msgstr "không cho phép %B xác định %s"
 
-#: elf32-spu.c:1352
+#: elf32-spu.c:1453
 #, c-format
 msgid "%s in overlay section"
 msgstr "%s trong phần phủ"
 
-#: elf32-spu.c:1363
+#: elf32-spu.c:1469
 msgid "overlay stub relocation overflow"
 msgstr "tràn định vị lại mẩu phủ"
 
-#: elf32-spu.c:1820
+#: elf32-spu.c:1478 elf64-ppc.c:10078
+msgid "stubs don't match calculated size"
+msgstr "các mẩu không tương ứng với kích cỡ đã tính"
+
+#: elf32-spu.c:1976
 #, c-format
 msgid "warning: %s overlaps %s\n"
 msgstr "cảnh báo : %s đè lên %s\n"
 
-#: elf32-spu.c:1836
+#: elf32-spu.c:1992
 #, c-format
 msgid "warning: %s exceeds section size\n"
 msgstr "cảnh báo : %s vượt quá kích cỡ phần\n"
 
-#: elf32-spu.c:1867
+#: elf32-spu.c:2023
 msgid "%A:0x%v not found in function table\n"
 msgstr "%A:0x%v không tìm thấy trong bảng hàm\n"
 
-#: elf32-spu.c:1958
-msgid "%B(%A+0x%v): call to non-code section %B(%A), stack analysis incomplete\n"
-msgstr "%B(%A+0x%v): cuộc gọi phần khác mã %B(%A), chưa phân tích xong đống\n"
+#: elf32-spu.c:2165
+msgid "%B(%A+0x%v): call to non-code section %B(%A), analysis incomplete\n"
+msgstr "%B(%A+0x%v): gọi phần khác mã %B(%A), chưa phân tích hoàn toàn\n"
 
-#: elf32-spu.c:2079
+#: elf32-spu.c:2339
 #, c-format
 msgid "%A link_order not found\n"
 msgstr "%A link_order không tìm thấy\n"
 
-#: elf32-spu.c:2358
+#: elf32-spu.c:2706
 #, c-format
 msgid "Stack analysis will ignore the call from %s to %s\n"
 msgstr "Tiến trình phân tích đống sẽ bỏ qua cuộc gọi từ %s cho %s\n"
 
-#: elf32-spu.c:2513
+#: elf32-spu.c:3348
+msgid "  %s: 0x%v\n"
+msgstr "  %s: 0x%v\n"
+
+#: elf32-spu.c:3349
 msgid "%s: 0x%v 0x%v\n"
 msgstr "%s: 0x%v 0x%v\n"
 
-#: elf32-spu.c:2517
+#: elf32-spu.c:3354
 msgid "  calls:\n"
 msgstr "  cuộc gọi:\n"
 
-#: elf32-spu.c:2524
+#: elf32-spu.c:3362
 #, c-format
 msgid "   %s%s %s\n"
 msgstr "   %s%s %s\n"
 
-#: elf32-spu.c:2585
+#: elf32-spu.c:3564
+#, c-format
+msgid "%s duplicated in %s\n"
+msgstr "%s bị nhân đôi trong %s\n"
+
+#: elf32-spu.c:3568
+#, c-format
+msgid "%s duplicated\n"
+msgstr "%s bị nhân đôi\n"
+
+#: elf32-spu.c:3575
+msgid "sorry, no support for duplicate object files in auto-overlay script\n"
+msgstr "tiếc là văn lệnh tự động phủ không hỗ trợ tập tin đối tượng tăng đôi\n"
+
+#: elf32-spu.c:3605
+msgid "non-overlay size of 0x%v plus maximum overlay size of 0x%v exceeds local store\n"
+msgstr "kích cỡ khác phủ 0x%v cộng với kích cỡ phủ tối đa 0x%v thì vượt quá kho cục bộ\n"
+
+#: elf32-spu.c:3741
+msgid "%B:%A%s exceeds overlay size\n"
+msgstr "%B:%A%s vượt quá kích cỡ phủ\n"
+
+#: elf32-spu.c:3862
 msgid "Stack size for call graph root nodes.\n"
 msgstr "Kích cỡ đống cho các nút thông tin gốc đồ thị cuộc gọi.\n"
 
-#: elf32-spu.c:2586
+#: elf32-spu.c:3863
 msgid ""
 "\n"
 "Stack size for functions.  Annotations: '*' max stack, 't' tail call\n"
@@ -1767,80 +2021,76 @@
 " *\tđống tối đa\n"
 " t\tcuộc gọi đuôi\n"
 
-#: elf32-spu.c:2615
-msgid "  %s: 0x%v\n"
-msgstr "  %s: 0x%v\n"
-
-#: elf32-spu.c:2625
+#: elf32-spu.c:3871
 msgid "Maximum stack required is 0x%v\n"
 msgstr "Đống tối đa cần thiết là 0x%v\n"
 
-#: elf32-spu.c:2751
+#: elf32-spu.c:4067
 msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'"
 msgstr "%B(%s+0x%lx): không thể giải quyết định vị lại %s so với ký hiệu « %s »"
 
-#: elf32-v850.c:163
+#: elf32-v850.c:165
 #, c-format
 msgid "Variable `%s' cannot occupy in multiple small data regions"
 msgstr "Biến « %s » không thể chiếm nhiều vùng dữ liệu nhỏ"
 
-#: elf32-v850.c:166
+#: elf32-v850.c:168
 #, c-format
 msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions"
 msgstr "Biến « %s » chỉ có thể nằm trong một của vùng dữ liệu kiểu nhỏ, số không và rất nhỏ"
 
-#: elf32-v850.c:169
+#: elf32-v850.c:171
 #, c-format
 msgid "Variable `%s' cannot be in both small and zero data regions simultaneously"
 msgstr "Biến « %s » không thể nằm đồng thời trong cả hai vùng dữ liệu kiểu nhỏ và số không"
 
-#: elf32-v850.c:172
+#: elf32-v850.c:174
 #, c-format
 msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously"
 msgstr "Biến « %s » không thể nằm đồng thời trong cả hai vùng dữ liệu kiểu nhỏ và rất nhỏ"
 
-#: elf32-v850.c:175
+#: elf32-v850.c:177
 #, c-format
 msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously"
 msgstr "Biến « %s » không thể nằm đồng thời trong cả hai vùng dữ liệu kiểu rất nhỏ và số không"
 
-#: elf32-v850.c:478
+#: elf32-v850.c:480
 #, c-format
 msgid "FAILED to find previous HI16 reloc\n"
 msgstr "LỖI tìm định vị lại HI16 trước\n"
 
-#: elf32-v850.c:1713
+#: elf32-v850.c:1715
 msgid "could not locate special linker symbol __gp"
 msgstr "không tìm thấy ký hiệu liên kết đặc biệt __gp"
 
-#: elf32-v850.c:1717
+#: elf32-v850.c:1719
 msgid "could not locate special linker symbol __ep"
 msgstr "không tìm thấy ký hiệu liên kết đặc biệt __ep"
 
-#: elf32-v850.c:1721
+#: elf32-v850.c:1723
 msgid "could not locate special linker symbol __ctbp"
 msgstr "không tìm thấy ký hiệu liên kết đặc biệt __ctbp"
 
-#: elf32-v850.c:1871
+#: elf32-v850.c:1873
 msgid "%B: Architecture mismatch with previous modules"
 msgstr "%B: sai khớp kiến trúc với mô-đun khác"
 
-#: elf32-v850.c:1890
+#: elf32-v850.c:1892
 #, c-format
 msgid "private flags = %lx: "
 msgstr "các cờ riêng — %lx: "
 
-#: elf32-v850.c:1895
+#: elf32-v850.c:1897
 #, c-format
 msgid "v850 architecture"
 msgstr "Kiến trúc v850"
 
-#: elf32-v850.c:1896
+#: elf32-v850.c:1898
 #, c-format
 msgid "v850e architecture"
 msgstr "Kiến trúc v850e"
 
-#: elf32-v850.c:1897
+#: elf32-v850.c:1899
 #, c-format
 msgid "v850e1 architecture"
 msgstr "Kiến trúc v850e1"
@@ -1865,114 +2115,118 @@
 msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld"
 msgstr "%s: cảnh báo : số hạng GOT của %ld cho « %s » không tương ứng với số hạng GOT trước của %ld"
 
-#: elf32-vax.c:1584
+#: elf32-vax.c:1589
 #, c-format
 msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored"
 msgstr "%s: cảnh báo : số hạng PLT của %d cho « %s » từ phần %s bị bỏ qua"
 
-#: elf32-vax.c:1721
+#: elf32-vax.c:1726
 #, c-format
 msgid "%s: warning: %s relocation against symbol `%s' from %s section"
 msgstr "%s: cảnh báo : định vị lại %s so với ký hiệu « %s » từ phần %s"
 
-#: elf32-vax.c:1727
+#: elf32-vax.c:1732
 #, c-format
 msgid "%s: warning: %s relocation to 0x%x from %s section"
 msgstr "%s: cảnh báo : định vị lại %s sang 0x%x từ phần %s"
 
-#: elf32-xstormy16.c:451 elf32-ia64.c:2962 elf64-ia64.c:2962
+#: elf32-xstormy16.c:451 elf32-ia64.c:2794 elf64-ia64.c:2794
 msgid "non-zero addend in @fptr reloc"
 msgstr "số hạng khác không trong định vị lại @fptr"
 
-#: elf32-xtensa.c:733
+#: elf32-xtensa.c:911
 msgid "%B(%A): invalid property table"
 msgstr "%B(%A): bảng thuộc tính sai"
 
-#: elf32-xtensa.c:2177
+#: elf32-xtensa.c:2734
 msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)"
 msgstr "%B(%A+0x%lx): khoảng bù định vị lại ở ngoại phạm vi (kích cỡ=0x%x)"
 
-#: elf32-xtensa.c:2234
+#: elf32-xtensa.c:2813 elf32-xtensa.c:2934
 msgid "dynamic relocation in read-only section"
 msgstr "định vị lại động trong vùng chỉ đọc"
 
-#: elf32-xtensa.c:2407
+#: elf32-xtensa.c:2910
+msgid "TLS relocation invalid without dynamic sections"
+msgstr "Định vị lại TLS không hợp lệ mà không có phần động"
+
+#: elf32-xtensa.c:3127
 msgid "internal inconsistency in size of .got.loc section"
 msgstr "sự mâu thuẫn nội bộ trong kích cỡ của phần .got.loc"
 
-#: elf32-xtensa.c:2714
+#: elf32-xtensa.c:3437
 msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x"
 msgstr "%B: kiểu máy không tương thích. Kết xuất là 0x%x. Dữ liệu nhập vào là 0x%x."
 
-#: elf32-xtensa.c:3920 elf32-xtensa.c:3928
+#: elf32-xtensa.c:4666 elf32-xtensa.c:4674
 msgid "Attempt to convert L32R/CALLX to CALL failed"
 msgstr "Lỗi thử chuyển đổi L32R/CALLX sang CALL"
 
-#: elf32-xtensa.c:5522 elf32-xtensa.c:5598 elf32-xtensa.c:6714
+#: elf32-xtensa.c:6276 elf32-xtensa.c:6352 elf32-xtensa.c:7468
 msgid "%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"
 msgstr "%B(%A+0x%lx): không thể giải mã chỉ dẫn; có thể sai khớp cấu hình"
 
-#: elf32-xtensa.c:6454
+#: elf32-xtensa.c:7208
 msgid "%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch"
 msgstr "%B(%A+0x%lx): không thể giải mã chỉ dẫn cho định vị lại XTENSA_ASM_SIMPLIFY; có thể sai khớp cấu hình"
 
-#: elf32-xtensa.c:8166
+#: elf32-xtensa.c:8969
 msgid "invalid relocation address"
 msgstr "địa chỉ định vị lại không hợp lệ"
 
-#: elf32-xtensa.c:8215
+#: elf32-xtensa.c:9018
 msgid "overflow after relaxation"
 msgstr "tràn sau khi giảm nhẹ"
 
-#: elf32-xtensa.c:9341
+#: elf32-xtensa.c:10154
 msgid "%B(%A+0x%lx): unexpected fix for %s relocation"
 msgstr "%B(%A+0x%lx): sửa chữa bất thường cho định vị lại %s"
 
-#: elf64-alpha.c:453
+#: elf64-alpha.c:452
 msgid "GPDISP relocation did not find ldah and lda instructions"
 msgstr "Định vị lại GPDISP không tìm thấy các chỉ dẫn ldah và lda"
 
-#: elf64-alpha.c:2404
+#: elf64-alpha.c:2416
 msgid "%B: .got subsegment exceeds 64K (size %d)"
 msgstr "%B: đoạn phụ .got vượt quá 64 K (kích cỡ %d)"
 
-#: elf64-alpha.c:4277 elf64-alpha.c:4289
+#: elf64-alpha.c:4296 elf64-alpha.c:4308
 msgid "%B: gp-relative relocation against dynamic symbol %s"
 msgstr "%B: định vị lại tương đối với gp (gp-relative) so với ký hiệu động %s"
 
-#: elf64-alpha.c:4315 elf64-alpha.c:4450
+#: elf64-alpha.c:4334 elf64-alpha.c:4469
 msgid "%B: pc-relative relocation against dynamic symbol %s"
 msgstr "%B: định vị lại tương đối với pc (pc-relative) so với ký hiệu động %s"
 
-#: elf64-alpha.c:4343
+#: elf64-alpha.c:4362
 msgid "%B: change in gp: BRSGP %s"
 msgstr "%B: thay đổi trong gp: BRSGP %s"
 
-#: elf64-alpha.c:4368
+#: elf64-alpha.c:4387
 msgid "<unknown>"
 msgstr "<không rõ>"
 
-#: elf64-alpha.c:4373
+#: elf64-alpha.c:4392
 msgid "%B: !samegp reloc against symbol without .prologue: %s"
 msgstr "%B: định vị lại !samegp so với ký hiệu không có .prologue: %s"
 
-#: elf64-alpha.c:4425
+#: elf64-alpha.c:4444
 msgid "%B: unhandled dynamic relocation against %s"
 msgstr "%B: không xử lý được định vị lại động so với %s"
 
-#: elf64-alpha.c:4457
+#: elf64-alpha.c:4476
 msgid "%B: pc-relative relocation against undefined weak symbol %s"
 msgstr "%B: định vị lại tương đối với pc (pc-relative) so với ký hiệu yếu chưa được xác định %s"
 
-#: elf64-alpha.c:4517
+#: elf64-alpha.c:4536
 msgid "%B: dtp-relative relocation against dynamic symbol %s"
 msgstr "%B: định vị lại tương đối với dtp (dtp-relative) so với ký hiệu động %s"
 
-#: elf64-alpha.c:4540
+#: elf64-alpha.c:4559
 msgid "%B: tp-relative relocation against dynamic symbol %s"
 msgstr "%B: định vị lại tương đối với tp (tp-relative) so với ký hiệu động %s"
 
-#: elf64-hppa.c:2040
+#: elf64-hppa.c:2071
 #, c-format
 msgid "stub entry for %s cannot load .plt, dp offset = %ld"
 msgstr "mục nhập mẩu cho %s không thể nạp .plt, khoảng bù dp = %ld"
@@ -2019,18 +2273,18 @@
 "%s: chỉ thị LOCAL (cục bộ): Thanh ghi $%ld không phải là một thanh ghi cục bộ.\n"
 "Thanh ghi toàn cục thứ nhất là $%ld."
 
-#: elf64-mmix.c:2202
+#: elf64-mmix.c:2201
 #, c-format
 msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n"
 msgstr ""
 "%s: Lỗi: định nghĩa nhiều lần « %s »; đầu của %s được đặt\n"
 "trong một tập tin đã liên kết sớm hơn\n"
 
-#: elf64-mmix.c:2260
+#: elf64-mmix.c:2259
 msgid "Register section has contents\n"
 msgstr "Phần thanh ghi có nội dung\n"
 
-#: elf64-mmix.c:2452
+#: elf64-mmix.c:2451
 #, c-format
 msgid ""
 "Internal inconsistency: remaining %u != max %u.\n"
@@ -2039,69 +2293,65 @@
 "Sự mâu thuẫn nội bộ : còn lại %u != tối đa %u.\n"
 "  Hãy thông báo lỗi này."
 
-#: elf64-ppc.c:2569 libbfd.c:950
+#: elf64-ppc.c:2561 libbfd.c:978
 msgid "%B: compiled for a big endian system and target is little endian"
 msgstr "%B: được biên dịch cho một hệ thống về cuối lớn, còn đích về cuối nhỏ"
 
-#: elf64-ppc.c:2572 libbfd.c:952
+#: elf64-ppc.c:2564 libbfd.c:980
 msgid "%B: compiled for a little endian system and target is big endian"
 msgstr "%B: được biên dịch cho một hệ thống về cuối nhỏ, còn đích về cuối lớn"
 
-#: elf64-ppc.c:5888
+#: elf64-ppc.c:6065
 #, c-format
 msgid "copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc"
 msgstr "định vị lại sao chép so với « %s » thì cần thiết chức năng liên kết plt uể oải; hãy tránh đặtLD_BIND_NOW=1, hoặc nân cấp GCC"
 
-#: elf64-ppc.c:6316
+#: elf64-ppc.c:6486
 msgid "dynreloc miscount for %B, section %A"
 msgstr "sai đếm định vị lại động cho %B, phần %A"
 
-#: elf64-ppc.c:6420
+#: elf64-ppc.c:6570
 msgid "%B: .opd is not a regular array of opd entries"
 msgstr "%B: .opd không phải là một mảng chính quy các mục nhập opd"
 
-#: elf64-ppc.c:6429
+#: elf64-ppc.c:6579
 msgid "%B: unexpected reloc type %u in .opd section"
 msgstr "%B: gặp kiểu định vị lại bất thường %u trong phần .opd"
 
-#: elf64-ppc.c:6450
+#: elf64-ppc.c:6600
 msgid "%B: undefined sym `%s' in .opd section"
 msgstr "%B: gặp sym (liên kết mềm?) chưa được xác định « %s » trong phần .opd"
 
-#: elf64-ppc.c:7157 elf64-ppc.c:7537
+#: elf64-ppc.c:7377 elf64-ppc.c:7754
 #, c-format
 msgid "%s defined in removed toc entry"
 msgstr "%s được xác định trong mục nhập toc bị gỡ bỏ"
 
-#: elf64-ppc.c:8272
+#: elf64-ppc.c:8581
 #, c-format
 msgid "long branch stub `%s' offset overflow"
 msgstr "mẩu nhánh dài « %s » tràn khoảng bù"
 
-#: elf64-ppc.c:8347
+#: elf64-ppc.c:8640
 #, c-format
 msgid "can't find branch stub `%s'"
 msgstr "không tìm thấy mẩu nhánh « %s »"
 
-#: elf64-ppc.c:8413 elf64-ppc.c:8489
+#: elf64-ppc.c:8702 elf64-ppc.c:8822
 #, c-format
 msgid "linkage table error against `%s'"
 msgstr "lỗi bảng liên kết so với « %s »"
 
-#: elf64-ppc.c:8618
+#: elf64-ppc.c:8978
 #, c-format
 msgid "can't build branch stub `%s'"
 msgstr "không thể xây dựng mẩu nhánh « %s »"
 
-#: elf64-ppc.c:9070
+#: elf64-ppc.c:9451
 msgid "%B section %A exceeds stub group size"
 msgstr "%B phần %A vượt quá kích cỡ nhóm mẩu"
 
-#: elf64-ppc.c:9682
-msgid "stubs don't match calculated size"
-msgstr "các mẩu không tương ứng với kích cỡ đã tính"
-
-#: elf64-ppc.c:9694
+#: elf64-ppc.c:10090
 #, c-format
 msgid ""
 "linker stubs in %u group%s\n"
@@ -2118,19 +2368,19 @@
 "  điều chỉnh toc dài\t\t%lu\n"
 "  cuộc gọi pit\t\t\t%lu"
 
-#: elf64-ppc.c:10378
+#: elf64-ppc.c:10769
 msgid "%B(%A+0x%lx): automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc"
 msgstr "%B(%A+0x%lx): tự động tạo nhiều TOC không được hỗ trợ khi dùng các tập tin CRT của bạn; hãy biên dịch lại với « -mminimal-toc », hoặc nâng cấp GCC"
 
-#: elf64-ppc.c:10386
+#: elf64-ppc.c:10777
 msgid "%B(%A+0x%lx): sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern"
 msgstr "%B(%A+0x%lx): tối ưu hoá cuộc gọi cùng chỗ cho « %s » không cho phép tự động tạo nhiều TOC; hãy biên dịch lại với « -mminimal-toc » hoặc « -fno-optimize-sibling-calls », hoặc làm cho « %s » là bên ngoài"
 
-#: elf64-ppc.c:11037
+#: elf64-ppc.c:11427
 msgid "%B: relocation %s is not supported for symbol %s."
 msgstr "%B: không hỗ trợ định vị lại %s cho ký hiệu %s."
 
-#: elf64-ppc.c:11119
+#: elf64-ppc.c:11509
 msgid "%B: error: relocation %s not a multiple of %d"
 msgstr "%B: lỗi: định vị lại %s không phải là bội số cho %d"
 
@@ -2159,194 +2409,48 @@
 msgid "%B: linking UltraSPARC specific with HAL specific code"
 msgstr "%B: đang liên kết UltraSPARC dứt khoát với mã đặc trưng cho HAL"
 
-#: elf64-x86-64.c:799 elf64-x86-64.c:959 elf64-x86-64.c:2360
+#: elf64-x86-64.c:1047 elf64-x86-64.c:1207 elfxx-mips.c:7834
 msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC"
 msgstr "%B: định vị lại %s so với « %s » không thể được dùng khi tạo một đối tượng chia sẻ; hãy biên dịch lại với « -fPIC »"
 
-#: elf64-x86-64.c:890
-msgid "%B: %s' accessed both as normal and thread local symbol"
-msgstr "%B; « %s » được truy cập như là ký hiệu cả hai kiểu bình thường và cục bộ cho mạch"
+#: elf64-x86-64.c:1138
+msgid "%B: '%s' accessed both as normal and thread local symbol"
+msgstr "%B; « %s » được truy cập như là ký hiệu cả hai kiểu bình thường và mạch cục bộ"
 
-#: elf64-x86-64.c:2272
+#: elf64-x86-64.c:2559
 msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object"
 msgstr "%B: định vị lại R_X86_64_GOTOFF64 so với hàm đã bảo vệ « %s » thì không thể được dùng khi tạo một đối tượng chia sẻ"
 
-#: elf64-x86-64.c:2356
-msgid "%B: relocation R_X86_64_PC32 against protected function `%s' can not be used when making a shared object"
-msgstr "%B: định vị lại R_X86_64_PC32 so với hàm đã bảo vệ « %s » thì không thể được dùng khi tạo một đối tượng chia sẻ"
+#: elf64-x86-64.c:2670
+msgid "; recompile with -fPIC"
+msgstr "; biên dịch lại với « -fPIC »"
 
-#: elf-attrs.c:582
-msgid "ERROR: %B: Must be processed by '%s' toolchain"
-msgstr "LỖI: %B: Phải được dãy công cụ « %s » xử lý"
+#: elf64-x86-64.c:2675
+msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s"
+msgstr "%B: không dùng được định vị lại %s đối với %s « %s » khi tạo một đối tượng chia sẻ %s"
 
-#: elf-attrs.c:602 elf-attrs.c:621
-msgid "ERROR: %B: Incompatible object tag '%s':%d"
-msgstr "LỖI: %B: Thẻ đối tượng không tương thích « %s »:%s"
+#: elf64-x86-64.c:2677
+msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s"
+msgstr "%B: không dùng được định vị lại %s đối với %s chưa xác định « %s » khi tạo một đối tượng chia sẻ %s"
 
-#: elf.c:312
-msgid "%B: invalid string offset %u >= %lu for section `%s'"
-msgstr "%B: khoảng bù chuỗi không hợp lệ %u≥%lu cho phần « %s »"
-
-#: elf.c:414
-msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section"
-msgstr "%B số thứ tự ký hiệu %lu tham chiếu đến phần SHT_SYMTAB_SHNDX không tồn tại"
-
-#: elf.c:567
-msgid "%B: Corrupt size field in group section header: 0x%lx"
-msgstr "%B: Trường kích cỡ bị hỏng trong phần đầu của phần nhóm: 0x%lx"
-
-#: elf.c:603
-msgid "%B: invalid SHT_GROUP entry"
-msgstr "%B: mục nhập SHT_GROUP không hợp lệ"
-
-#: elf.c:673
-msgid "%B: no group info for section %A"
-msgstr "%B: không có thông tin nhóm về phần %A"
-
-#: elf.c:703 elf.c:2886 elflink.c:9858
-msgid "%B: warning: sh_link not set for section `%A'"
-msgstr "%B: cảnh báo : « sh_link » chưa được đặt cho phần « %A »"
-
-#: elf.c:719
-msgid "%B: sh_link [%d] in section `%A' is incorrect"
-msgstr "%B: sh_link [%d] không đúng trong phần « %A »"
-
-#: elf.c:754
-msgid "%B: unknown [%d] section `%s' in group [%s]"
-msgstr "%B: không rõ [%d] phần « %s » trong nhóm [%s]"
-
-#: elf.c:1108
-#, c-format
-msgid ""
-"\n"
-"Program Header:\n"
-msgstr ""
-"\n"
-"Phần đầu chương trình:\n"
-
-#: elf.c:1150
-#, c-format
-msgid ""
-"\n"
-"Dynamic Section:\n"
-msgstr ""
-"\n"
-"Phần động:\n"
-
-#: elf.c:1276
-#, c-format
-msgid ""
-"\n"
-"Version definitions:\n"
-msgstr ""
-"\n"
-"Phần định nghĩa phiên bản:\n"
-
-#: elf.c:1301
-#, c-format
-msgid ""
-"\n"
-"Version References:\n"
-msgstr ""
-"\n"
-"Tham chiếu phiên bản:\n"
-
-#: elf.c:1306
-#, c-format
-msgid "  required from %s:\n"
-msgstr "  cần thiết từ %s:\n"
-
-#: elf.c:1690
-msgid "%B: invalid link %lu for reloc section %s (index %u)"
-msgstr "%B: liên kết không hợp lệ %lu cho phần định vị lại %s (chỉ mục %u)"
-
-#: elf.c:1858
-msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]"
-msgstr "%B: không biết cách xử lý phần đã cấp phát mà đặc trưng cho ứng dụng « %s » [0x%8x]"
-
-#: elf.c:1870
-msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]"
-msgstr "%B: không biết cách xử lý phần đặc trưng cho bộ xử lý « %s » [0x%8x]"
-
-#: elf.c:1881
-msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]"
-msgstr "%B: không biết cách xử lý phần đặc trưng cho HĐH « %s » [0x%8x]"
-
-#: elf.c:1891
-msgid "%B: don't know how to handle section `%s' [0x%8x]"
-msgstr "%B: không biết cách xử lý phần « %s » [0x%8x]"
-
-#: elf.c:2843
-msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'"
-msgstr "%B: sh_link của phần « %A » chỉ tới phần bị hủy « %A » của « %B »"
-
-#: elf.c:2866
-msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'"
-msgstr "%B: sh_link của phần « %A » chỉ tới phần bị gỡ bỏ « %A » của « %B »"
-
-#: elf.c:4142
-msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section"
-msgstr "%B: Phần thứ nhất trong đoạn PT_DYNAMIC không phải là phần .dynamic"
-
-#: elf.c:4165
-msgid "%B: Not enough room for program headers, try linking with -N"
-msgstr "%B: Không đủ sức chứa cho các phần đầu của chương trình: hãy thử liên kết với « -N »"
-
-#: elf.c:4243
-msgid "%B: section %A lma 0x%lx overlaps previous sections"
-msgstr "%B: phần %A lma 0x%lx đè lên phần trước"
-
-#: elf.c:4341
-msgid "%B: section `%A' can't be allocated in segment %d"
-msgstr "%B: phần « %A » không thể được cấp phát trong đoạn %d"
-
-#: elf.c:4390
-msgid "%B: warning: allocated section `%s' not in segment"
-msgstr "%B: cảnh báo : phần đã cấp phát « %s » không nằm trong đoạn"
-
-#: elf.c:4886
-msgid "%B: symbol `%s' required but not present"
-msgstr "%B: ký hiệu « %s » cần thiết mà không có"
-
-#: elf.c:5199
-msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n"
-msgstr "%B: cảnh báo : Phát hiện một đoạn rỗng có thể nạp được: trường hợp này có ý định trước không?\n"
-
-#: elf.c:6105
-#, c-format
-msgid "Unable to find equivalent output section for symbol '%s' from section '%s'"
-msgstr "Không tìm thấy phần kết xuất tương đương cho ký hiệu « %s » từ phần « %s »"
-
-#: elf.c:7079
-msgid "%B: unsupported relocation type %s"
-msgstr "%B: kiểu định vị lại không được hỗ trợ %s"
-
-#: elfcode.h:813
+#: elfcode.h:795
 #, c-format
 msgid "warning: %s has a corrupt string table index - ignoring"
 msgstr "cảnh báo : %s có một chỉ mục bảng chuỗi bị hỏng: nên bỏ qua"
 
-#: elfcode.h:1226
+#: elfcode.h:1201
 #, c-format
 msgid "%s: version count (%ld) does not match symbol count (%ld)"
 msgstr "%s: số đếm phiên bản (%ld) không tương ứng với số đếm ký hiệu (%ld)"
 
-#: elfcode.h:1459
+#: elfcode.h:1435
 #, c-format
 msgid "%s(%s): relocation %d has invalid symbol index %ld"
 msgstr "%s(%s): định vị lại %d có chỉ mục ký hiệu không hợp lệ %ld"
 
-#: elf-eh-frame.c:823
-msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n"
-msgstr "%P: biên mã fde trong %B(%A) thì ngăn cản tạo bảng .eh_frame_hdr.\n"
-
-#: elf-eh-frame.c:974
-msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"
-msgstr "%P: gặp lỗi trong %B(%A); sẽ không tạo bảng .eh_frame_hdr nào.\n"
-
-#: elf-hppa.h:2219 elf-hppa.h:2233
-msgid "%B(%A): warning: unresolvable relocation against symbol `%s'"
-msgstr "%B(%A): cảnh báo : định vị lại không thể giải quyết được so với ký hiệu « %s »"
+#: elfcore.h:251
+msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu."
+msgstr "Cảnh báo : %B bị cắt ngắn: kích cỡ tập tin lõi mong đợi ≥%lu còn tìm %lu."
 
 #: elflink.c:1028
 msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A"
@@ -2368,282 +2472,295 @@
 msgid "%B: unexpected redefinition of indirect versioned symbol `%s'"
 msgstr "%B: gặp lời định nghĩa lại bất thường của ký hiệu gián tiếp đặt phiên bản « %s »"
 
-#: elflink.c:1974
+#: elflink.c:1982
 msgid "%B: version node not found for symbol %s"
 msgstr "%B: không tìm thấy nút thông tin phiên bản cho ký hiệu %s"
 
-#: elflink.c:2122
+#: elflink.c:2130
 msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'"
 msgstr "%B: chỉ mục ký hiệu định vị lại sai (0x%lx ≥ 0x%lx) cho khoảng bù 0x%lx trong phần « %A »"
 
-#: elflink.c:2314
+#: elflink.c:2327
 msgid "%B: relocation size mismatch in %B section %A"
 msgstr "%B: sai khớp kích cỡ định vị lại trong %B phần %A"
 
-#: elflink.c:2616
+#: elflink.c:2629
 #, c-format
 msgid "warning: type and size of dynamic symbol `%s' are not defined"
 msgstr "cảnh báo : chưa xác định kiểu và kích cỡ của ký hiệu động « %s »"
 
-#: elflink.c:3910
+#: elflink.c:3953
 msgid "%B: %s: invalid version %u (max %d)"
 msgstr "%B: %s: phiên bản không hợp lệ %u (tối đa %d)"
 
-#: elflink.c:3946
+#: elflink.c:3989
 msgid "%B: %s: invalid needed version %d"
 msgstr "%B: %s: phiên bản cần thiết mà không hợp lệ %d"
 
-#: elflink.c:4129
+#: elflink.c:4172
 msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A"
 msgstr "Cảnh báo : vị trí sắp hàng %u của ký hiệu dùng chung « %s » trong %B là lớn hơn vị trí sắp hàng (%u) của phần %A của nó"
 
-#: elflink.c:4135
+#: elflink.c:4178
 msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B"
 msgstr "Cảnh báo : vị trí sắp hàng %u của ký hiệu « %s » trong %B là nhỏ hơn %u trong %B"
 
-#: elflink.c:4150
+#: elflink.c:4193
 msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B"
 msgstr "Cảnh báo : kích cỡ của ký hiệu « %s » đã thay đổi từ %lu trong %B thành %lu trong %B"
 
-#: elflink.c:4326
+#: elflink.c:4371
 #, c-format
 msgid "%s: invalid DSO for symbol `%s' definition"
 msgstr "%s: DSO không hợp lệ cho lời định nghĩa ký hiệu « %s »"
 
-#: elflink.c:5552
+#: elflink.c:5621
 #, c-format
 msgid "%s: undefined version: %s"
 msgstr "%s: phiên bản chưa được xác định: %s"
 
-#: elflink.c:5620
+#: elflink.c:5689
 msgid "%B: .preinit_array section is not allowed in DSO"
 msgstr "%B: không cho phép phần « .preinit_array » trong DSO"
 
-#: elflink.c:7359
+#: elflink.c:7414
 #, c-format
 msgid "undefined %s reference in complex symbol: %s"
 msgstr "gặp tham chiếu %s chưa được xác định trong ký hiệu phức tạp %s"
 
-#: elflink.c:7514
+#: elflink.c:7568
 #, c-format
 msgid "unknown operator '%c' in complex symbol"
 msgstr "không rõ toán tử « %c » trong ký hiệu phức tạp"
 
-#: elflink.c:8053 elflink.c:8070 elflink.c:8107 elflink.c:8124
+#: elflink.c:7904 elflink.c:7921 elflink.c:7958 elflink.c:7975
 msgid "%B: Unable to sort relocs - they are in more than one size"
 msgstr "%B: Không thể sắp xếp các sự định vị lại: chúng có kích cỡ khác nhau"
 
-#: elflink.c:8084 elflink.c:8138
+#: elflink.c:7935 elflink.c:7989
 msgid "%B: Unable to sort relocs - they are of an unknown size"
 msgstr "%B: Không thể sắp xếp các sự định vị lại: chúng có kích cỡ không rõ"
 
-#: elflink.c:8187
+#: elflink.c:8038
 msgid "Not enough memory to sort relocations"
 msgstr "Không đủ bộ nhớ để sắp xếp các sự định vị lại"
 
-#: elflink.c:8374
+#: elflink.c:8227
 msgid "%B: Too many sections: %d (>= %d)"
 msgstr "%B: Quá nhiều phần: %d (≥ %d)"
 
-#: elflink.c:8608
+#: elflink.c:8461
 msgid "%B: %s symbol `%s' in %B is referenced by DSO"
 msgstr "%B: %s ký hiệu « %s » trong %B được DSO tham chiếu"
 
-#: elflink.c:8691
+#: elflink.c:8544
 msgid "%B: could not find output section %A for input section %A"
 msgstr "%B: không thể tìm thấy phần kết xuất %A cho phần dữ liệu nhập vào %A"
 
-#: elflink.c:8788
+#: elflink.c:8655
 msgid "%B: %s symbol `%s' isn't defined"
 msgstr "%B: %s: chưa xác định ký hiệu « %s »"
 
-#: elflink.c:9284
+#: elflink.c:9141
 msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol"
 msgstr "lỗi: %B chứa một định vị lại (0x%s) cho phần %A mà tham chiếu đến một ký hiệu toàn cục không tồn tại"
 
-#: elflink.c:9318
+#: elflink.c:9205
 msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n"
 msgstr "%X« %s » được tham chiếu trong phần « %A » của %B: được định nghĩa trong phần bị hủy « %A » của %B\n"
 
-#: elflink.c:9936
+#: elflink.c:9825
 msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections"
 msgstr "%A có phần cả hai được sắp xếp [« %A » trong %B] và chưa sắp xếp [« %A » trong %B]"
 
-#: elflink.c:9941
+#: elflink.c:9830
 #, c-format
 msgid "%A has both ordered and unordered sections"
 msgstr "%A có phần cả hai được sắp xếp và chưa sắp xếp"
 
-#: elflink.c:10828 elflink.c:10872
+#: elflink.c:10715 elflink.c:10759
 msgid "%B: could not find output section %s"
 msgstr "%B: không tìm thấy phần kết xuất %s"
 
-#: elflink.c:10833
+#: elflink.c:10720
 #, c-format
 msgid "warning: %s section has zero size"
 msgstr "cảnh báo : phần %s có kích cỡ số không"
 
-#: elflink.c:10937
+#: elflink.c:10824
 msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n"
 msgstr "%P: cảnh báo : đang tạo một DT_TEXTREL trong một đối tượng chia sẻ.\n"
 
-#: elflink.c:11305
-msgid "Removing unused section '%s' in file '%B'"
-msgstr "Đang gỡ bỏ phần không dùng « %s » trong tập tin « %B »"
-
-#: elflink.c:11496
-msgid "Warning: gc-sections option ignored"
-msgstr "Cảnh báo : tùy chọn gc-sections bị bỏ qua"
-
-#: elflink.c:11987
+#: elflink.c:11006
 msgid "%P%X: can not read symbols: %E\n"
 msgstr "%P%X: không thể đọc các ký hiệu : %E\n"
 
-#: elflink.c:12129
+#: elflink.c:11313
+msgid "Removing unused section '%s' in file '%B'"
+msgstr "Đang gỡ bỏ phần không dùng « %s » trong tập tin « %B »"
+
+#: elflink.c:11525
+msgid "Warning: gc-sections option ignored"
+msgstr "Cảnh báo : tùy chọn gc-sections bị bỏ qua"
+
+#: elflink.c:12056
 msgid "%B: ignoring duplicate section `%A'"
 msgstr "%B: đang bỏ qua phần trùng « %A »"
 
-#: elflink.c:12136 elflink.c:12143
+#: elflink.c:12063 elflink.c:12070
 msgid "%B: duplicate section `%A' has different size"
 msgstr "%B: phần trùng « %A » có kích cỡ khác"
 
-#: elflink.c:12151 elflink.c:12156
+#: elflink.c:12078 elflink.c:12083
 msgid "%B: warning: could not read contents of section `%A'"
 msgstr "%B: cảnh báo : không thể đọc nội dung của phần « %A »"
 
-#: elflink.c:12160
+#: elflink.c:12087
 msgid "%B: warning: duplicate section `%A' has different contents"
 msgstr "%B: cảnh báo : phần trùng « %A » có nội dung khác"
 
-#: elflink.c:12239 linker.c:3081
+#: elflink.c:12166 linker.c:3080
 msgid "%F%P: already_linked_table: %E"
 msgstr "%F%P: already_linked_table: %E"
 
-#: elf-m10300.c:1532
-msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)"
-msgstr "lỗi: kiểu định vị lại không thích hợp cho thư viện chia sẻ (bạn đã quên đặt -fpic không?)"
-
-#: elf-m10300.c:1535
-msgid "internal error: suspicious relocation type used in shared library"
-msgstr "lỗi nội bộ: kiểu định vị lại đáng ngờ được dùng trong thư viện chia sẻ"
-
-#: elfxx-mips.c:990
+#: elfxx-mips.c:1197
 msgid "static procedure (no name)"
 msgstr "thủ tục tĩnh (không có tên)"
 
-#: elfxx-mips.c:4663
+#: elfxx-mips.c:5562
 msgid "%B: %A+0x%lx: jump to stub routine which is not jal"
 msgstr "%B: %A+0x%lx: nhảy tới hàm mẩu mà không phải jal"
 
-#: elfxx-mips.c:5326 elfxx-mips.c:5546
+#: elfxx-mips.c:6206 elfxx-mips.c:6427
 msgid "%B: Warning: bad `%s' option size %u smaller than its header"
 msgstr "%B: Cảnh báo : kích cỡ tùy chọn « %s » sai: nhỏ hơn phần đầu của nó"
 
-#: elfxx-mips.c:6405
+#: elfxx-mips.c:7174 elfxx-mips.c:7299
+msgid "%B: Warning: cannot determine the target function for stub section `%s'"
+msgstr "%B: cảnh báo : không thể quyết định hàm đích cho phần mẩu « %s »"
+
+#: elfxx-mips.c:7428
 msgid "%B: Malformed reloc detected for section %s"
 msgstr "%B: Phát hiện sự định vị lại dạng sai cho phần %s"
 
-#: elfxx-mips.c:6447
+#: elfxx-mips.c:7468
 msgid "%B: GOT reloc at 0x%lx not expected in executables"
 msgstr "%B: định vị lại GOT ở 0x%lx không mong đợi trong tập tin có khả năng thực hiện"
 
-#: elfxx-mips.c:6517
+#: elfxx-mips.c:7566
 msgid "%B: CALL16 reloc at 0x%lx not against global symbol"
 msgstr "%B: định vị lại CALL16 ở 0x%lx không phải so với ký hiệu toàn cục"
 
-#: elfxx-mips.c:7880
+#: elfxx-mips.c:8244
+#, c-format
+msgid "non-dynamic relocations refer to dynamic symbol %s"
+msgstr "định vị lại khác động cũng tham chiếu đến ký hiệu động %s"
+
+#: elfxx-mips.c:8947
 msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'"
 msgstr "%B: Không tìm thấy định vị lại LO16 tương ứng so với « %s » cho %s ở 0x%lx trong phần « %A »"
 
-#: elfxx-mips.c:8046
+#: elfxx-mips.c:9086
 msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
 msgstr "Phần small-data (dữ liệu nhỏ) vượt quá 64 KB; hãy giảm giới hạn dữ liệu nhỏ (xem tùy chọn « -G »)"
 
-#: elfxx-mips.c:10661
+#: elfxx-mips.c:11887
 #, c-format
 msgid "%s: illegal section name `%s'"
 msgstr "%s: tên phần cấm « %s »"
 
-#: elfxx-mips.c:11031 elfxx-mips.c:11050
+#: elfxx-mips.c:12262 elfxx-mips.c:12288
 msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float"
 msgstr "Cảnh báo : %B dùng « -msingle-float », còn %B dùng « -mdouble-float »"
 
-#: elfxx-mips.c:11106
+#: elfxx-mips.c:12274 elfxx-mips.c:12330
+msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64"
+msgstr "Cảnh báo : %B dùng « -msingle-float », còn %B dùng « -mips32r2 -mfp64 »"
+
+#: elfxx-mips.c:12300 elfxx-mips.c:12336
+msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64"
+msgstr "Cảnh báo : %B dùng « -mdouble-float », còn %B dùng « -mips32r2 -mfp64 »"
+
+#: elfxx-mips.c:12378
 msgid "%B: endianness incompatible with that of the selected emulation"
 msgstr "%B: tình trạng về cuối không tương thích với cái của bản mô phỏng đã chọn"
 
-#: elfxx-mips.c:11118
+#: elfxx-mips.c:12389
 msgid "%B: ABI is incompatible with that of the selected emulation"
 msgstr "%B: ABI không tương thích với cái của bản mô phỏng đã chọn"
 
-#: elfxx-mips.c:11218
+#: elfxx-mips.c:12470
+msgid "%B: warning: linking abicalls files with non-abicalls files"
+msgstr "%B: cảnh báo : đang liên kết tập tin abicalls với tập tin khác abicalls"
+
+#: elfxx-mips.c:12487
 msgid "%B: linking 32-bit code with 64-bit code"
 msgstr "%B: đang liên kết mã 32-bit với mã 64-bit"
 
-#: elfxx-mips.c:11246
+#: elfxx-mips.c:12515
 msgid "%B: linking %s module with previous %s modules"
 msgstr "%B: đang liên kết mô-đun %s với các mô-đun %s trước"
 
-#: elfxx-mips.c:11269
+#: elfxx-mips.c:12538
 msgid "%B: ABI mismatch: linking %s module with previous %s modules"
 msgstr "%B: sai khớp ABI: đang liên kết mô-đun %s với các mô-đun %s trước"
 
-#: elfxx-mips.c:11334
+#: elfxx-mips.c:12702
 #, c-format
 msgid " [abi=O32]"
 msgstr " [abi=O32]"
 
-#: elfxx-mips.c:11336
+#: elfxx-mips.c:12704
 #, c-format
 msgid " [abi=O64]"
 msgstr " [abi=O64]"
 
-#: elfxx-mips.c:11338
+#: elfxx-mips.c:12706
 #, c-format
 msgid " [abi=EABI32]"
 msgstr " [abi=EABI32]"
 
-#: elfxx-mips.c:11340
+#: elfxx-mips.c:12708
 #, c-format
 msgid " [abi=EABI64]"
 msgstr " [abi=EABI64]"
 
-#: elfxx-mips.c:11342
+#: elfxx-mips.c:12710
 #, c-format
 msgid " [abi unknown]"
 msgstr " [abi không rõ]"
 
-#: elfxx-mips.c:11344
+#: elfxx-mips.c:12712
 #, c-format
 msgid " [abi=N32]"
 msgstr " [abi=N32]"
 
-#: elfxx-mips.c:11346
+#: elfxx-mips.c:12714
 #, c-format
 msgid " [abi=64]"
 msgstr " [abi=64]"
 
-#: elfxx-mips.c:11348
+#: elfxx-mips.c:12716
 #, c-format
 msgid " [no abi set]"
 msgstr " [chưa đặt abi]"
 
-#: elfxx-mips.c:11369
+#: elfxx-mips.c:12737
 #, c-format
 msgid " [unknown ISA]"
 msgstr " [không rõ ISA]"
 
-#: elfxx-mips.c:11380
+#: elfxx-mips.c:12748
 #, c-format
 msgid " [not 32bitmode]"
 msgstr " [không phải 32bitmode]"
 
-#: elfxx-sparc.c:430
+#: elfxx-sparc.c:440
 #, c-format
 msgid "invalid relocation type %d"
 msgstr "kiểu định vị lại không hợp lệ %d"
 
-#: elfxx-sparc.c:2901
+#: elfxx-sparc.c:2976
 msgid "%B: probably compiled without -fPIC?"
 msgstr "%B: rất có thể được biên dịch không có « -fPIC » ?"
 
@@ -2730,34 +2847,34 @@
 msgid "%s: address 0x%s out of range for Intel Hex file"
 msgstr "%s: địa chỉ 0x%s ở ngoại phạm vi đối với tập tin thập lục Intel"
 
-#: libbfd.c:980
+#: libbfd.c:1008
 #, c-format
 msgid "Deprecated %s called at %s line %d in %s\n"
 msgstr "%s bị phản đối được gọi tại dòng %s %d trong %s\n"
 
-#: libbfd.c:983
+#: libbfd.c:1011
 #, c-format
 msgid "Deprecated %s called\n"
 msgstr "%s bị phản đối được gọi\n"
 
-#: linker.c:1875
+#: linker.c:1874
 msgid "%B: indirect symbol `%s' to `%s' is a loop"
 msgstr "%B: ký hiệu gián tiếp « %s » tới « %s » thì tạo một vòng lặp"
 
-#: linker.c:2741
+#: linker.c:2740
 #, c-format
 msgid "Attempt to do relocatable link with %s input and %s output"
 msgstr "Thử làm liên kết có khả năng định vị lại với đầu vào %s và đầu ra %s"
 
-#: linker.c:3048
+#: linker.c:3047
 msgid "%B: warning: ignoring duplicate section `%A'\n"
 msgstr "%B: cảnh báo : đang bỏ qua phần trùng « %A »\n"
 
-#: linker.c:3062
+#: linker.c:3061
 msgid "%B: warning: duplicate section `%A' has different size\n"
 msgstr "%B: cảnh báo : phần trùng « %A » có kích cỡ khác\n"
 
-#: merge.c:820
+#: merge.c:828
 #, c-format
 msgid "%s: access beyond end of merged section (%ld)"
 msgstr "%s: truy cập vượt quá kết thúc của phần đã gộp lại (%ld)"
@@ -2897,6 +3014,26 @@
 msgid "Unhandled OSF/1 core file section type %d\n"
 msgstr "Kiểu phần tập tin lõi OSF/1 không được quản lý %d\n"
 
+#: pe-mips.c:607
+msgid "%B: `ld -r' not supported with PE MIPS objects\n"
+msgstr "%B: « ld -r » không được hỗ trợ với đối tượng MIPS PE\n"
+
+#. OK, at this point the following variables are set up:
+#. src = VMA of the memory we're fixing up
+#. mem = pointer to memory we're fixing up
+#. val = VMA of what we need to refer to.
+#: pe-mips.c:723
+msgid "%B: unimplemented %s\n"
+msgstr "%B: %s chưa được thực hiện\n"
+
+#: pe-mips.c:749
+msgid "%B: jump too far away\n"
+msgstr "%B: bước nhảy quá xa\n"
+
+#: pe-mips.c:775
+msgid "%B: bad pair/reflo after refhi\n"
+msgstr "%B: pair/reflo sai đằng sau refhi\n"
+
 #. XXX code yet to be written.
 #: peicode.h:759
 msgid "%B: Unhandled import type; %x"
@@ -2926,26 +3063,6 @@
 msgid "%B: string not null terminated in ILF object file."
 msgstr "%B: chuỗi không phải kết thúc vô hiệu lực trong tập tin đối tượng ILF. "
 
-#: pe-mips.c:606
-msgid "%B: `ld -r' not supported with PE MIPS objects\n"
-msgstr "%B: « ld -r » không được hỗ trợ với đối tượng MIPS PE\n"
-
-#. OK, at this point the following variables are set up:
-#. src = VMA of the memory we're fixing up
-#. mem = pointer to memory we're fixing up
-#. val = VMA of what we need to refer to.
-#: pe-mips.c:722
-msgid "%B: unimplemented %s\n"
-msgstr "%B: %s chưa được thực hiện\n"
-
-#: pe-mips.c:748
-msgid "%B: jump too far away\n"
-msgstr "%B: bước nhảy quá xa\n"
-
-#: pe-mips.c:774
-msgid "%B: bad pair/reflo after refhi\n"
-msgstr "%B: pair/reflo sai đằng sau refhi\n"
-
 #: ppcboot.c:414
 #, c-format
 msgid ""
@@ -2960,22 +3077,22 @@
 msgid "Entry offset        = 0x%.8lx (%ld)\n"
 msgstr "Khoảng bù vào        = 0x%.8lx (%ld)\n"
 
-#: ppcboot.c:416
+#: ppcboot.c:417
 #, c-format
 msgid "Length              = 0x%.8lx (%ld)\n"
 msgstr "Dài              = 0x%.8lx (%ld)\n"
 
-#: ppcboot.c:419
+#: ppcboot.c:421
 #, c-format
 msgid "Flag field          = 0x%.2x\n"
 msgstr "Trường cờ          = 0x%.2x\n"
 
-#: ppcboot.c:425
+#: ppcboot.c:427
 #, c-format
 msgid "Partition name      = \"%s\"\n"
 msgstr "Tên phân vùng      = \"%s\"\n"
 
-#: ppcboot.c:444
+#: ppcboot.c:446
 #, c-format
 msgid ""
 "\n"
@@ -2984,22 +3101,22 @@
 "\n"
 "Phân vùng[%d] đầu  = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
 
-#: ppcboot.c:450
+#: ppcboot.c:452
 #, c-format
 msgid "Partition[%d] end    = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
 msgstr "Phân vùng[%d] cuối    = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
 
-#: ppcboot.c:456
+#: ppcboot.c:458
 #, c-format
 msgid "Partition[%d] sector = 0x%.8lx (%ld)\n"
 msgstr "Phân vùng[%d] rãnh ghi = 0x%.8lx (%ld)\n"
 
-#: ppcboot.c:457
+#: ppcboot.c:460
 #, c-format
 msgid "Partition[%d] length = 0x%.8lx (%ld)\n"
 msgstr "Phân vùng[%d] dài = 0x%.8lx (%ld)\n"
 
-#: som.c:5088
+#: som.c:5137
 #, c-format
 msgid ""
 "\n"
@@ -3008,7 +3125,7 @@
 "\n"
 "Phần đầu phụ thực hiện\n"
 
-#: som.c:5349
+#: som.c:5440
 msgid "som_sizeof_headers unimplemented"
 msgstr "som_sizeof_headers chưa được thực hiện"
 
@@ -3016,11 +3133,15 @@
 msgid "%B:%d: Unexpected character `%s' in S-record file\n"
 msgstr "%B:%d Gặp ký tự bất thường « %s » trong tập tin S-record\n"
 
+#: srec.c:567 srec.c:600
+msgid "%B:%d: Bad checksum in S-record file\n"
+msgstr "%B:%d: sai tổng kiểm trong tập tin S-record\n"
+
 #: stabs.c:279
 msgid "%B(%A+0x%lx): Stabs entry has invalid string index."
 msgstr "%B(%A+0x%lx): Mục nhập Stabs có chỉ mục chuỗi không hợp lệ."
 
-#: syms.c:1057
+#: syms.c:1067
 msgid "Unsupported .stab relocation"
 msgstr "Định vị lại .stab không được hỗ trợ"
 
@@ -3057,20 +3178,20 @@
 msgid "Stack underflow in _bfd_vms_pop"
 msgstr "Trán ngược đống trong _bfd_vms_pop"
 
-#: vms-misc.c:803
+#: vms-misc.c:808
 msgid "_bfd_vms_output_counted called with zero bytes"
 msgstr "_bfd_vms_output_counted được gọi với số không byte"
 
-#: vms-misc.c:808
+#: vms-misc.c:813
 msgid "_bfd_vms_output_counted called with too many bytes"
 msgstr "_bfd_vms_output_counted được gọi với quá nhiều byte"
 
-#: vms-misc.c:926
+#: vms-misc.c:931
 #, c-format
 msgid "Symbol %s replaced by %s\n"
 msgstr "Ký hiệu %s đã bị thay thế bằng %s\n"
 
-#: vms-misc.c:985
+#: vms-misc.c:990
 #, c-format
 msgid "failed to enter %s"
 msgstr "lỗi vào %s"
@@ -3266,73 +3387,77 @@
 msgid "%s: `%s' in loader reloc but not loader sym"
 msgstr "%s: « %s » trong định vị lại bộ nạp nhưng không phải liên kết mềm đến bộ nạp"
 
-#: elf32-ia64.c:1169 elf64-ia64.c:1169
+#: elf32-ia64.c:1037 elf64-ia64.c:1037
 msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch."
 msgstr "%B: Không thể giảm nhẹ br ở 0x%lx trong phần « %A ». Hãy dùng brl hoặc nhánh gián tiếp."
 
-#: elf32-ia64.c:2910 elf64-ia64.c:2910
+#: elf32-ia64.c:2742 elf64-ia64.c:2742
 msgid "@pltoff reloc against local symbol"
 msgstr "định vị lại @pltoff so với ký hiệu cục bộ"
 
-#: elf32-ia64.c:4523 elf64-ia64.c:4523
+#: elf32-ia64.c:4317 elf64-ia64.c:4317
 #, c-format
 msgid "%s: short data segment overflowed (0x%lx >= 0x400000)"
 msgstr "%s: tràn đoạn dữ liệu ngắn (0x%lx ≥ 0x400000)"
 
-#: elf32-ia64.c:4534 elf64-ia64.c:4534
+#: elf32-ia64.c:4328 elf64-ia64.c:4328
 #, c-format
 msgid "%s: __gp does not cover short data segment"
 msgstr "%s: __gp không trải ra đoạn dữ liệu ngắn"
 
-#: elf32-ia64.c:4808 elf64-ia64.c:4808
+#: elf32-ia64.c:4598 elf64-ia64.c:4598
 msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'"
 msgstr "%B: mã khác pic với định vị lại imm so với ký hiệu động « %s »"
 
-#: elf32-ia64.c:4875 elf64-ia64.c:4875
+#: elf32-ia64.c:4665 elf64-ia64.c:4665
 msgid "%B: @gprel relocation against dynamic symbol %s"
 msgstr "%B: định vị lại @gprel so với ký hiệu động « %s »"
 
-#: elf32-ia64.c:4938 elf64-ia64.c:4938
+#: elf32-ia64.c:4728 elf64-ia64.c:4728
 msgid "%B: linking non-pic code in a position independent executable"
 msgstr "%B: đang liên kết mã khác pin trong một tập tin có khả năng thực hiện mà không phụ thuộc vào vị trí"
 
-#: elf32-ia64.c:5075 elf64-ia64.c:5075
+#: elf32-ia64.c:4865 elf64-ia64.c:4865
 msgid "%B: @internal branch to dynamic symbol %s"
 msgstr "%B: nhánh @internal (nội bộ) tới ký hiệu động %s"
 
-#: elf32-ia64.c:5077 elf64-ia64.c:5077
+#: elf32-ia64.c:4867 elf64-ia64.c:4867
 msgid "%B: speculation fixup to dynamic symbol %s"
 msgstr "%B: sự sửa chữa suy đoán so với ký hiệu động %s"
 
-#: elf32-ia64.c:5079 elf64-ia64.c:5079
+#: elf32-ia64.c:4869 elf64-ia64.c:4869
 msgid "%B: @pcrel relocation against dynamic symbol %s"
 msgstr "%B: định vị lại @pcrel so với ký hiệu động %s"
 
-#: elf32-ia64.c:5279 elf64-ia64.c:5279
+#: elf32-ia64.c:5066 elf64-ia64.c:5066
 msgid "unsupported reloc"
 msgstr "định vị lại không được hỗ trợ"
 
-#: elf32-ia64.c:5312 elf64-ia64.c:5312
+#: elf32-ia64.c:5104 elf64-ia64.c:5104
+msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'."
+msgstr "%B: thiếu phần TLS để định vị lại %s đối với « %s » ở 0x%lx trong phần « %A »."
+
+#: elf32-ia64.c:5119 elf64-ia64.c:5119
 msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)."
 msgstr "%B: Không thể giảm nhẹ br (%s) tới « %s » tại 0x%lx trong phần « %A » với kích cỡ 0x%lx (> 0x1000000)."
 
-#: elf32-ia64.c:5573 elf64-ia64.c:5573
+#: elf32-ia64.c:5375 elf64-ia64.c:5375
 msgid "%B: linking trap-on-NULL-dereference with non-trapping files"
 msgstr "%B: đang liên kết trap-on-NULL-dereference với tập tin không đặt bẫy"
 
-#: elf32-ia64.c:5582 elf64-ia64.c:5582
+#: elf32-ia64.c:5384 elf64-ia64.c:5384
 msgid "%B: linking big-endian files with little-endian files"
 msgstr "%B: đang liên kết tập tin về cuối lớn với tập tin về cuối nhỏ"
 
-#: elf32-ia64.c:5591 elf64-ia64.c:5591
+#: elf32-ia64.c:5393 elf64-ia64.c:5393
 msgid "%B: linking 64-bit files with 32-bit files"
 msgstr "%B: đang liên kết tập tin 64-bit với tập tin 32-bit"
 
-#: elf32-ia64.c:5600 elf64-ia64.c:5600
+#: elf32-ia64.c:5402 elf64-ia64.c:5402
 msgid "%B: linking constant-gp files with non-constant-gp files"
 msgstr "%B: đang liên kết tập tin constant-gp với tập tin non-constant-gp"
 
-#: elf32-ia64.c:5610 elf64-ia64.c:5610
+#: elf32-ia64.c:5412 elf64-ia64.c:5412
 msgid "%B: linking auto-pic files with non-auto-pic files"
 msgstr "%B: đang liên kết tập tin auto-pic với tập tin non-auto-pic"
 
@@ -3610,12 +3735,14 @@
 "\n"
 "Bảng [Cái chỉ Thứ tự/Tên]\n"
 
-#: peigen.c:1610 pepigen.c:1610 pex64igen.c:1610
+#: peigen.c:1617 peigen.c:1796 pepigen.c:1617 pepigen.c:1796 pex64igen.c:1617
+#: pex64igen.c:1796
 #, c-format
 msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n"
 msgstr "Cảnh báo : kích cỡ phần .pdata (%ld) không phải là bội số cho %d\n"
 
-#: peigen.c:1614 pepigen.c:1614 pex64igen.c:1614
+#: peigen.c:1621 peigen.c:1800 pepigen.c:1621 pepigen.c:1800 pex64igen.c:1621
+#: pex64igen.c:1800
 #, c-format
 msgid ""
 "\n"
@@ -3624,12 +3751,12 @@
 "\n"
 "Bảng Hàm (phiên dịch nội dung phần .pdata)\n"
 
-#: peigen.c:1617 pepigen.c:1617 pex64igen.c:1617
+#: peigen.c:1624 pepigen.c:1624 pex64igen.c:1624
 #, c-format
 msgid " vma:\t\t\tBegin Address    End Address      Unwind Info\n"
 msgstr " vma:\t\t\tĐịa chi đầu    Địa chỉ cuối     Thông tin tháo ra\n"
 
-#: peigen.c:1619 pepigen.c:1619 pex64igen.c:1619
+#: peigen.c:1626 pepigen.c:1626 pex64igen.c:1626
 #, c-format
 msgid ""
 " vma:\t\tBegin    End      EH       EH       PrologEnd  Exception\n"
@@ -3638,22 +3765,31 @@
 " vma:\t\tĐầu    Cuối      EH       EH       PrologEnd  Ngoại lệ\n"
 "     \t\tĐịa chỉ  Địa chỉ  Bộ quản lý  Dữ liệu     Địa chỉ    Mặt nạ\n"
 
-#: peigen.c:1689 pepigen.c:1689 pex64igen.c:1689
+#: peigen.c:1696 pepigen.c:1696 pex64igen.c:1696
 #, c-format
 msgid " Register save millicode"
 msgstr " Mili-mã lưu thanh ghi"
 
-#: peigen.c:1692 pepigen.c:1692 pex64igen.c:1692
+#: peigen.c:1699 pepigen.c:1699 pex64igen.c:1699
 #, c-format
 msgid " Register restore millicode"
 msgstr " Mili-mã phục hồi thanh ghi"
 
-#: peigen.c:1695 pepigen.c:1695 pex64igen.c:1695
+#: peigen.c:1702 pepigen.c:1702 pex64igen.c:1702
 #, c-format
 msgid " Glue code sequence"
 msgstr " Dãy mã nối lại"
 
-#: peigen.c:1745 pepigen.c:1745 pex64igen.c:1745
+#: peigen.c:1802 pepigen.c:1802 pex64igen.c:1802
+#, c-format
+msgid ""
+" vma:\t\tBegin    Prolog   Function Flags    Exception EH\n"
+"     \t\tAddress  Length   Length   32b exc  Handler   Data\n"
+msgstr ""
+" vma:\t\tĐầu    Prolog   Cờ hàm    Ngoại lệ EH\n"
+"     \t\tĐịa chỉ  Dài   Dài   32b exc  Quản lý   Dữ liệu\n"
+
+#: peigen.c:1933 pepigen.c:1933 pex64igen.c:1933
 #, c-format
 msgid ""
 "\n"
@@ -3664,7 +3800,7 @@
 "\n"
 "Định vị lại cơ bản tập tin PE (phiên dịch nội dung phần .reloc)\n"
 
-#: peigen.c:1775 pepigen.c:1775 pex64igen.c:1775
+#: peigen.c:1963 pepigen.c:1963 pex64igen.c:1963
 #, c-format
 msgid ""
 "\n"
@@ -3673,7 +3809,7 @@
 "\n"
 "Địa chỉ ảo: %08lx Kích cỡ khúc %ld (0x%lx) Số sự sửa chữa %ld\n"
 
-#: peigen.c:1788 pepigen.c:1788 pex64igen.c:1788
+#: peigen.c:1976 pepigen.c:1976 pex64igen.c:1976
 #, c-format
 msgid "\treloc %4d offset %4x [%4lx] %s"
 msgstr "\tđịnh vị lại %4d bù %4x [%4lx] %s"
@@ -3681,7 +3817,7 @@
 #. The MS dumpbin program reportedly ands with 0xff0f before
 #. printing the characteristics field.  Not sure why.  No reason to
 #. emulate it here.
-#: peigen.c:1827 pepigen.c:1827 pex64igen.c:1827
+#: peigen.c:2015 pepigen.c:2015 pex64igen.c:2015
 #, c-format
 msgid ""
 "\n"
@@ -3690,22 +3826,22 @@
 "\n"
 "Đặc tính 0x%x\n"
 
-#: peigen.c:2088 pepigen.c:2088 pex64igen.c:2088
+#: peigen.c:2289 pepigen.c:2289 pex64igen.c:2289
 msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing"
 msgstr "%B: không thể điền vào DataDictionary[1] vì .idata$2 còn thiếu"
 
-#: peigen.c:2106 pepigen.c:2106 pex64igen.c:2106
+#: peigen.c:2307 pepigen.c:2307 pex64igen.c:2307
 msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing"
 msgstr "%B: không thể điền vào DataDictionary[1] vì .idata$4 còn thiếu"
 
-#: peigen.c:2125 pepigen.c:2125 pex64igen.c:2125
+#: peigen.c:2326 pepigen.c:2326 pex64igen.c:2326
 msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing"
 msgstr "%B: không thể điền vào DataDictionary[12] vì .idata$5 còn thiếu"
 
-#: peigen.c:2143 pepigen.c:2143 pex64igen.c:2143
+#: peigen.c:2344 pepigen.c:2344 pex64igen.c:2344
 msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing"
 msgstr "%B: không thể điền vào DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] vì .idata$6 còn thiếu"
 
-#: peigen.c:2163 pepigen.c:2163 pex64igen.c:2163
+#: peigen.c:2364 pepigen.c:2364 pex64igen.c:2364
 msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing"
 msgstr "%B: không thể điền vào DataDictionary[9] vì __tls_used còn thiếu"
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 9d993af..99d0094 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -4719,6 +4719,31 @@
   32-bit offset to symbol with PLT entry, relative to this relocation.
 
 ENUM
+  BFD_RELOC_CRIS_32_GOT_GD
+ENUMX
+  BFD_RELOC_CRIS_16_GOT_GD
+ENUMX
+  BFD_RELOC_CRIS_32_GD
+ENUMX
+  BFD_RELOC_CRIS_DTP
+ENUMX
+  BFD_RELOC_CRIS_32_DTPREL
+ENUMX
+  BFD_RELOC_CRIS_16_DTPREL
+ENUMX
+  BFD_RELOC_CRIS_32_GOT_TPREL
+ENUMX
+  BFD_RELOC_CRIS_16_GOT_TPREL
+ENUMX
+  BFD_RELOC_CRIS_32_TPREL
+ENUMX
+  BFD_RELOC_CRIS_16_TPREL
+ENUMX
+  BFD_RELOC_CRIS_DTPMOD
+ENUMDOC
+  Relocs used in TLS code for CRIS.
+
+ENUM
   BFD_RELOC_860_COPY
 ENUMX
   BFD_RELOC_860_GLOB_DAT
diff --git a/bfd/version.h b/bfd/version.h
index dc2a3a3..7a44985 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20080908
+#define BFD_VERSION_DATE 20081103
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff --git a/binutils/BRANCHES b/binutils/BRANCHES
index 303f0dc..f38fc91 100644
--- a/binutils/BRANCHES
+++ b/binutils/BRANCHES
@@ -33,3 +33,5 @@
 binutils-2_15-branch
 binutils-2_16-branch
 binutils-2_17-branch
+binutils-2_18-branch
+binutils-2_19-branch
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 2bb396d..0960fff 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,105 @@
+2008-10-31  Alan Modra  <amodra@bigpond.net.au>
+
+	* po/id.po: New file.
+	* configure.in (ALL_LINGUAS): Add id.
+	* configure: Regenerate.
+
+2008-10-21  Alan Modra  <amodra@bigpond.net.au>
+
+	* windmc.c (res_alloc): Remove unnecessary cast.
+	* windres.c (res_alloc, reswr_alloc): Likewise.
+
+2008-10-20  Nick Clifton  <nickc@redhat.com>
+
+	* readelf.c: Tidy up code formatting.
+
+2008-10-10  Nathan Froyd  <froydnj@codesourcery.com>
+
+	* readelf.c (display_power_gnu_attribute): Decode
+	Tag_GNU_Power_ABI_Struct_Return.
+
+2008-10-10  Alan Modra  <amodra@bigpond.net.au>
+
+	* embedspu.sh: Pass -Wa,-noexecstack to $CC.
+
+2008-10-09  Kai Tietz  <kai.tietz@onevision.com>
+
+	* dlltool.c (PAGE_SIZE): Make sure it has bfd_vma type.
+	(PAGE_MASK): Likewise.
+	(sfunc): Change to address size of bfd_vma for base-file.
+	(flush_page): Likewise.
+	(gen_exp_file): Likewise.
+
+2008-10-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* readelf.c (process_section_headers): Do not cut the section names and
+	types if running with --wide.
+
+2008-10-06  Tom Tromey  <tromey@redhat.com>
+
+	* dwarf.c (display_debug_frames): Change text for uniformity.
+	(process_debug_info): Likewise.
+	(display_debug_aranges): Likewise.  Indent address output.
+	(display_debug_pubnames): Print offset in hex.
+
+2008-10-02  Andrew Paprocki  <andrew@ishiboo.com>
+
+	PR 6934
+	* stabs.c (parse_stab_string): Parse and ignore =Y<name> strings
+	generated by the SUNPro C++ compiler.
+
+2008-09-30  Andrew Paprocki  <andrew@ishiboo.com>
+
+	PR 6922
+	* stabs.c (parse_stab_sun_builtin_type): Parse, but ignore SUN's
+	'b' and 'v' extensions.
+
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+	    Steve Ellcey  <sje@cup.hp.com>
+
+	* configure: Regenerate for new libtool.
+	* aclocal.m4: Ditto.
+	* Makefile.in: Ditto.
+	* doc/Makefile.in: Ditto.
+
+2008-09-28  Alan Modra  <amodra@bigpond.net.au>
+
+	* objcopy.c (setup_section): Set elf_group_id.
+
+2008-09-24  Richard Henderson  <rth@redhat.com>
+
+	* dwarf.c (size_of_encoded_value, get_encoded_value): Move up.
+	(decode_location_expression): Add section parameter.  Handle
+	DW_OP_GNU_encoded_addr.
+	(read_and_display_attr_value): Update decode_location_expression call.
+	(display_debug_loc, display_debug_frames): Likewise.
+
+2008-09-25  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6913
+	* dwarf.c (print_dwarf_vma): Don't call printf without format string.
+
+2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	Suppress warnings on NONE relocations to discarded sections.
+	* readelf.c (is_none_reloc): New function.
+	(debug_apply_relocations): Ignore is_none_reloc() relocations.
+
+2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	Fix loading large elf64 binaries on 32bit hosts.
+	* configure.in: Call AC_SYS_LARGEFILE.
+	* config.in: Regenerate.
+	* configure: Regenerate.
+
+2008-09-11  Alan Modra  <amodra@bigpond.net.au>
+
+	* po/sv.po: Update.
+
+2008-09-08  Tristan Gingold  <gingold@adacore.com>
+
+	* BRANCHES: Add 2.18 and 2.19 release branches.
+
 2008-09-08  Tristan Gingold  <gingold@adacore.com>
 
 	* NEWS: Add a marker for the 2.19 features.
diff --git a/binutils/Makefile.in b/binutils/Makefile.in
index 74e20fc..2dfcd69 100644
--- a/binutils/Makefile.in
+++ b/binutils/Makefile.in
@@ -74,7 +74,7 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -242,6 +242,7 @@
 DEMANGLER_NAME = @DEMANGLER_NAME@
 DEPDIR = @DEPDIR@
 DLLTOOL_DEFS = @DLLTOOL_DEFS@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -275,6 +276,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
@@ -287,9 +289,13 @@
 MSGMERGE = @MSGMERGE@
 NLMCONV_DEFS = @NLMCONV_DEFS@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJDUMP_DEFS = @OBJDUMP_DEFS@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -310,7 +316,13 @@
 YACC = `if [ -f ../bison/bison ]; then echo ../bison/bison -y -L$(srcdir)/../bison/; else echo @YACC@; fi`
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@@ -535,15 +547,15 @@
 	@for dep in $?; do \
 	  case '$(am__configure_deps)' in \
 	    *$$dep*) \
-	      echo ' cd $(srcdir) && $(AUTOMAKE) --cygnus '; \
-	      cd $(srcdir) && $(AUTOMAKE) --cygnus  \
+	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
+	      cd $(srcdir) && $(AUTOMAKE) --foreign  \
 		&& exit 0; \
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --cygnus  Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --cygnus  Makefile
+	  $(AUTOMAKE) --foreign  Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
diff --git a/binutils/aclocal.m4 b/binutils/aclocal.m4
index cf88058..39857e5 100644
--- a/binutils/aclocal.m4
+++ b/binutils/aclocal.m4
@@ -896,3 +896,4 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
diff --git a/binutils/config.in b/binutils/config.in
index cd74fab..7632613 100644
--- a/binutils/config.in
+++ b/binutils/config.in
@@ -203,6 +203,9 @@
    `char[]'. */
 #undef YYTEXT_POINTER
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
@@ -211,6 +214,9 @@
 /* Enable LFS */
 #undef _LARGEFILE64_SOURCE
 
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to 1 if on MINIX. */
 #undef _MINIX
 
diff --git a/binutils/configure b/binutils/configure
index e3121d1..ff131e3 100755
--- a/binutils/configure
+++ b/binutils/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO WARN_CFLAGS NO_WERROR YACC LEX LEXLIB LEX_OUTPUT_ROOT USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE HDEFINES CC_FOR_BUILD EXEEXT_FOR_BUILD DEMANGLER_NAME ALLOCA LIBICONV LTLIBICONV NLMCONV_DEFS BUILD_NLMCONV BUILD_SRCONV BUILD_DLLTOOL DLLTOOL_DEFS BUILD_WINDRES BUILD_WINDMC BUILD_DLLWRAP BUILD_MISC BUILD_INSTALL_MISC OBJDUMP_DEFS EMULATION EMULATION_VECTOR datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 WARN_CFLAGS NO_WERROR YACC LEX LEXLIB LEX_OUTPUT_ROOT USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE HDEFINES CC_FOR_BUILD EXEEXT_FOR_BUILD DEMANGLER_NAME ALLOCA LIBICONV LTLIBICONV NLMCONV_DEFS BUILD_NLMCONV BUILD_SRCONV BUILD_DLLTOOL DLLTOOL_DEFS BUILD_WINDRES BUILD_WINDMC BUILD_DLLWRAP BUILD_MISC BUILD_INSTALL_MISC OBJDUMP_DEFS EMULATION EMULATION_VECTOR datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -1002,6 +1002,7 @@
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
+  --disable-largefile     omit support for large files
   --enable-shared[=PKGS]
                           build shared libraries [default=yes]
   --enable-static[=PKGS]
@@ -4735,10 +4736,381 @@
 _ACEOF
 
 
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -4753,124 +5125,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi;
-
-
-
-
-
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5091,7 +5345,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5253,13 +5506,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5256: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5509: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5259: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5512: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5262: output\"" >&5)
+  (eval echo "\"\$as_me:5515: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5305,7 +5558,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5366,8 +5619,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5414,7 +5667,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5425,7 +5677,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5505,6 +5759,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5559,6 +5902,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -5981,7 +6330,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6061,7 +6410,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6105,6 +6454,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6244,7 +6594,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6283,6 +6633,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6314,7 +6669,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6317 "configure"' > conftest.$ac_ext
+  echo '#line 6672 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6489,7 +6844,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6501,6 +6860,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6563,6 +7475,128 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+            # Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_shared=yes ;;
+    no) enable_shared=no ;;
+    *)
+      enable_shared=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_shared=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_shared=yes
+fi;
+
+
+
+
+
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -6909,7 +7943,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -6941,11 +7975,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:6944: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7978: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:6948: \$? = $ac_status" >&5
+   echo "$as_me:7982: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -6995,19 +8029,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7022,10 +8062,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7074,18 +8115,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7115,11 +8146,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7132,6 +8177,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7247,10 +8298,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7263,27 +8314,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7266: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8317: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7270: \$? = $ac_status" >&5
+   echo "$as_me:8321: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7306,10 +8357,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7322,20 +8373,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7368,11 +8419,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7371: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8422: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7375: \$? = $ac_status" >&5
+   echo "$as_me:8426: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7423,11 +8474,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7426: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8477: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7430: \$? = $ac_status" >&5
+   echo "$as_me:8481: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7517,16 +8568,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7588,19 +8640,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7614,7 +8665,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7665,6 +8716,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7679,6 +8731,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7687,8 +8745,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7698,6 +8754,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -7893,6 +8965,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8045,20 +9118,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8080,73 +9158,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8228,7 +9263,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8346,25 +9381,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -8803,8 +9842,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -8930,13 +9969,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -8959,14 +10003,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -8989,7 +10033,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9255,7 +10299,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9276,7 +10320,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9460,7 +10504,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9486,6 +10530,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9630,7 +10681,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -9877,7 +10928,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10171,7 +11222,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10220,7 +11271,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10223 "configure"
+#line 11274 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10261,10 +11312,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10280,7 +11327,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10320,7 +11367,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10323 "configure"
+#line 11370 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10361,10 +11408,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10380,7 +11423,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10971,7 +12014,7 @@
   LEX=${am_missing_run}flex
 fi
 
-ALL_LINGUAS="fr tr ja es sv da zh_CN ru ro rw zh_TW fi vi uk sk"
+ALL_LINGUAS="da es fi fr id ja ro ru rw sk sv tr uk vi zh_CN zh_TW"
 # If we haven't got the data from the intl directory,
 # assume NLS is disabled.
 USE_NLS=no
@@ -15829,6 +16872,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -15845,6 +16889,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -15855,6 +16900,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -15928,6 +16978,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -15940,6 +16991,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -15948,6 +17000,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -16203,11 +17260,23 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@AR@,$AR,;t t
 s,@ac_ct_AR@,$ac_ct_AR,;t t
 s,@RANLIB@,$RANLIB,;t t
 s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@WARN_CFLAGS@,$WARN_CFLAGS,;t t
 s,@NO_WERROR@,$NO_WERROR,;t t
 s,@YACC@,$YACC,;t t
@@ -16957,36 +18026,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -17063,6 +18132,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -17096,6 +18168,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -17111,6 +18186,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -17351,6 +18441,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -17368,6 +18459,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -17397,10 +18509,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -17421,6 +18554,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -17453,6 +18587,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -17477,6 +18631,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/binutils/configure.in b/binutils/configure.in
index d634465..b4d4dcd 100644
--- a/binutils/configure.in
+++ b/binutils/configure.in
@@ -15,6 +15,7 @@
 AC_PROG_CC
 AC_GNU_SOURCE
 AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
 LT_INIT
 
 AC_ARG_ENABLE(targets,
@@ -47,7 +48,7 @@
 AC_PROG_YACC
 AM_PROG_LEX
 
-ALL_LINGUAS="fr tr ja es sv da zh_CN ru ro rw zh_TW fi vi uk sk"
+ALL_LINGUAS="da es fi fr id ja ro ru rw sk sv tr uk vi zh_CN zh_TW"
 ZW_GNU_GETTEXT_SISTER_DIR
 AM_PO_SUBDIRS
 
diff --git a/binutils/dlltool.c b/binutils/dlltool.c
index 505402b..1e2f1f9 100644
--- a/binutils/dlltool.c
+++ b/binutils/dlltool.c
@@ -241,8 +241,8 @@
 
 #define show_allnames 0
 
-#define PAGE_SIZE 4096
-#define PAGE_MASK (-PAGE_SIZE)
+#define PAGE_SIZE ((bfd_vma) 4096)
+#define PAGE_MASK ((bfd_vma) (-4096))
 #include "sysdep.h"
 #include "bfd.h"
 #include "libiberty.h"
@@ -712,7 +712,7 @@
 static void scan_obj_file (const char *);
 static void dump_def_info (FILE *);
 static int sfunc (const void *, const void *);
-static void flush_page (FILE *, long *, int, int);
+static void flush_page (FILE *, bfd_vma *, bfd_vma, int);
 static void gen_def_file (void);
 static void generate_idata_ofile (FILE *);
 static void assemble_file (const char *, const char *);
@@ -1584,18 +1584,21 @@
 static int
 sfunc (const void *a, const void *b)
 {
-  return *(const long *) a - *(const long *) b;
+  if (*(const bfd_vma *) a == *(const bfd_vma *) b)
+    return 0;
+
+  return ((*(const bfd_vma *) a > *(const bfd_vma *) b) ? 1 : -1);
 }
 
 static void
-flush_page (FILE *f, long *need, int page_addr, int on_page)
+flush_page (FILE *f, bfd_vma *need, bfd_vma page_addr, int on_page)
 {
   int i;
 
   /* Flush this page.  */
   fprintf (f, "\t%s\t0x%08x\t%s Starting RVA for chunk\n",
 	   ASM_LONG,
-	   page_addr,
+	   (int) page_addr,
 	   ASM_C);
   fprintf (f, "\t%s\t0x%x\t%s Size of block\n",
 	   ASM_LONG,
@@ -1604,12 +1607,20 @@
 
   for (i = 0; i < on_page; i++)
     {
-      unsigned long needed = need[i];
+      bfd_vma needed = need[i];
 
       if (needed)
-	needed = ((needed - page_addr) | 0x3000) & 0xffff;
+        {
+#ifndef DLLTOOL_MX86_64
+	  /* Relocation via HIGHLOW.  */
+          needed = ((needed - page_addr) | 0x3000) & 0xffff;
+#else
+	  /* Relocation via DIR64.  */
+	  needed = ((needed - page_addr) | 0xa000) & 0xffff;
+#endif
+	}
 
-      fprintf (f, "\t%s\t0x%lx\n", ASM_SHORT, needed);
+      fprintf (f, "\t%s\t0x%lx\n", ASM_SHORT, (long) needed);
     }
 
   /* And padding */
@@ -1977,12 +1988,12 @@
   /* Dump the reloc section if a base file is provided.  */
   if (base_file)
     {
-      int addr;
-      long need[PAGE_SIZE];
-      long page_addr;
+      bfd_vma addr;
+      bfd_vma need[PAGE_SIZE];
+      bfd_vma page_addr;
       int numbytes;
       int num_entries;
-      long *copy;
+      bfd_vma *copy;
       int j;
       int on_page;
       fprintf (f, "\t.section\t.init\n");
@@ -1993,7 +2004,7 @@
       fseek (base_file, 0, SEEK_SET);
       copy = xmalloc (numbytes);
       fread (copy, 1, numbytes, base_file);
-      num_entries = numbytes / sizeof (long);
+      num_entries = numbytes / sizeof (bfd_vma);
 
 
       fprintf (f, "\t.section\t.reloc\n");
@@ -2001,8 +2012,8 @@
 	{
 	  int src;
 	  int dst = 0;
-	  int last = -1;
-	  qsort (copy, num_entries, sizeof (long), sfunc);
+	  bfd_vma last = (bfd_vma) -1;
+	  qsort (copy, num_entries, sizeof (bfd_vma), sfunc);
 	  /* Delete duplicates */
 	  for (src = 0; src < num_entries; src++)
 	    {
diff --git a/binutils/doc/Makefile.in b/binutils/doc/Makefile.in
index ec23db7..7f7303d 100644
--- a/binutils/doc/Makefile.in
+++ b/binutils/doc/Makefile.in
@@ -56,7 +56,7 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
@@ -113,6 +113,7 @@
 DEMANGLER_NAME = @DEMANGLER_NAME@
 DEPDIR = @DEPDIR@
 DLLTOOL_DEFS = @DLLTOOL_DEFS@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -146,6 +147,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
@@ -158,9 +160,13 @@
 MSGMERGE = @MSGMERGE@
 NLMCONV_DEFS = @NLMCONV_DEFS@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJDUMP_DEFS = @OBJDUMP_DEFS@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -181,7 +187,13 @@
 YACC = @YACC@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@@ -286,9 +298,9 @@
 	      exit 1;; \
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --cygnus  doc/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  doc/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --cygnus  doc/Makefile
+	  $(AUTOMAKE) --foreign  doc/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	@case '$?' in \
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index 3a5ef0f..f6a5a53 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -164,6 +164,30 @@
     }
 }
 
+static int
+size_of_encoded_value (int encoding)
+{
+  switch (encoding & 0x7)
+    {
+    default:	/* ??? */
+    case 0:	return eh_addr_size;
+    case 2:	return 2;
+    case 3:	return 4;
+    case 4:	return 8;
+    }
+}
+
+static dwarf_vma
+get_encoded_value (unsigned char *data, int encoding)
+{
+  int size = size_of_encoded_value (encoding);
+
+  if (encoding & DW_EH_PE_signed)
+    return byte_get_signed (data, size);
+  else
+    return byte_get (data, size);
+}
+
 /* Print a dwarf_vma value (typically an address, offset or length) in
    hexadecimal format, followed by a space.  The length of the value (and
    hence the precision displayed) is determined by the byte_size parameter.  */
@@ -186,7 +210,7 @@
   snprintf (buff, sizeof (buff), "%16.16lx ", val);
 #endif
 
-  printf (buff + (byte_size == 4 ? 8 : 0));
+  fputs (buff + (byte_size == 4 ? 8 : 0), stdout);
 }
 
 static unsigned long int
@@ -651,7 +675,8 @@
 decode_location_expression (unsigned char * data,
 			    unsigned int pointer_size,
 			    unsigned long length,
-			    unsigned long cu_offset)
+			    unsigned long cu_offset,
+			    struct dwarf_section * section)
 {
   unsigned op;
   unsigned int bytes_read;
@@ -989,6 +1014,21 @@
 	  printf ("DW_OP_GNU_uninit");
 	  /* FIXME: Is there data associated with this OP ?  */
 	  break;
+	case DW_OP_GNU_encoded_addr:
+	  {
+	    int encoding;
+	    dwarf_vma addr;
+	
+	    encoding = *data++;
+	    addr = get_encoded_value (data, encoding);
+	    if ((encoding & 0x70) == DW_EH_PE_pcrel)
+	      addr += section->address + (data - section->start);
+	    data += size_of_encoded_value (encoding);
+
+	    printf ("DW_OP_GNU_encoded_addr: fmt:%02x addr:", encoding);
+	    print_dwarf_vma (addr, pointer_size);
+	  }
+	  break;
 
 	  /* HP extensions.  */
 	case DW_OP_HP_is_value:
@@ -1508,7 +1548,7 @@
 	  need_frame_base = decode_location_expression (block_start,
 							pointer_size,
 							uvalue,
-							cu_offset);
+							cu_offset, section);
 	  printf (")");
 	  if (need_frame_base && !have_frame_base)
 	    printf (_(" [without DW_AT_frame_base]"));
@@ -1799,7 +1839,7 @@
 
   if (!do_loc)
     {
-      printf (_("The section %s contains:\n\n"), section->name);
+      printf (_("Contents of the %s section:\n\n"), section->name);
 
       load_debug_section (str, file);
     }
@@ -2864,7 +2904,7 @@
 	  if (offset != 0)
 	    {
 	      data += offset_size;
-	      printf ("    %-6ld\t\t%s\n", offset, data);
+	      printf ("    %-6lx\t%s\n", offset, data);
 	      data += strlen ((char *) data) + 1;
 	    }
 	}
@@ -3186,7 +3226,7 @@
 	      need_frame_base = decode_location_expression (start,
 							    pointer_size,
 							    length,
-							    cu_offset);
+							    cu_offset, section);
 	      putchar (')');
 
 	      if (need_frame_base && !has_frame_base)
@@ -3282,7 +3322,7 @@
   unsigned char *start = section->start;
   unsigned char *end = start + section->size;
 
-  printf (_("The section %s contains:\n\n"), section->name);
+  printf (_("Contents of the %s section:\n\n"), section->name);
 
   /* It does not matter if this load fails,
      we test for that later on.  */
@@ -3383,6 +3423,7 @@
 
 	  ranges += address_size;
 
+	  printf ("    ");
 	  print_dwarf_vma (address, address_size);
 	  print_dwarf_vma (length, address_size);
 	  putchar ('\n');
@@ -3756,30 +3797,6 @@
   printf ("\n");
 }
 
-static int
-size_of_encoded_value (int encoding)
-{
-  switch (encoding & 0x7)
-    {
-    default:	/* ??? */
-    case 0:	return eh_addr_size;
-    case 2:	return 2;
-    case 3:	return 4;
-    case 4:	return 8;
-    }
-}
-
-static dwarf_vma
-get_encoded_value (unsigned char *data, int encoding)
-{
-  int size = size_of_encoded_value (encoding);
-
-  if (encoding & DW_EH_PE_signed)
-    return byte_get_signed (data, size);
-  else
-    return byte_get (data, size);
-}
-
 #define GET(N)	byte_get (start, N); start += N
 #define LEB()	read_leb128 (start, & length_return, 0); start += length_return
 #define SLEB()	read_leb128 (start, & length_return, 1); start += length_return
@@ -3798,7 +3815,7 @@
   unsigned int length_return;
   int max_regs = 0;
 
-  printf (_("The section %s contains:\n"), section->name);
+  printf (_("Contents of the %s section:\n"), section->name);
 
   while (start < end)
     {
@@ -4379,7 +4396,8 @@
 	      if (! do_debug_frames_interp)
 		{
 		  printf ("  DW_CFA_def_cfa_expression (");
-		  decode_location_expression (start, eh_addr_size, ul, 0);
+		  decode_location_expression (start, eh_addr_size, ul, 0,
+					      section);
 		  printf (")\n");
 		}
 	      fc->cfa_exp = 1;
@@ -4394,7 +4412,7 @@
 		  printf ("  DW_CFA_expression: %s (",
 			  regname (reg, 0));
 		  decode_location_expression (start, eh_addr_size,
-					      ul, 0);
+					      ul, 0, section);
 		  printf (")\n");
 		}
 	      fc->col_type[reg] = DW_CFA_expression;
@@ -4408,7 +4426,8 @@
 		{
 		  printf ("  DW_CFA_val_expression: %s (",
 			  regname (reg, 0));
-		  decode_location_expression (start, eh_addr_size, ul, 0);
+		  decode_location_expression (start, eh_addr_size, ul, 0,
+					      section);
 		  printf (")\n");
 		}
 	      fc->col_type[reg] = DW_CFA_val_expression;
diff --git a/binutils/embedspu.sh b/binutils/embedspu.sh
index 5f9d20c..8b19e76 100644
--- a/binutils/embedspu.sh
+++ b/binutils/embedspu.sh
@@ -146,7 +146,7 @@
   # 4. Write a struct spe_program_handle to .data.
   # 5. Write a table of _SPUEAR_ symbols.
   ${CC} ${FLAGS} -x assembler-with-cpp -nostartfiles -nostdlib \
-	-Wa,-mbig -Wl,-r -Wl,-x -o ${OUTFILE} - <<EOF
+	-Wa,-mbig -Wa,-noexecstack -Wl,-r -Wl,-x -o ${OUTFILE} - <<EOF
  .section .data.spetoe,"aw",@progbits
  .p2align 7
 __spetoe__:
diff --git a/binutils/objcopy.c b/binutils/objcopy.c
index deff169..f8c1732 100644
--- a/binutils/objcopy.c
+++ b/binutils/objcopy.c
@@ -2344,6 +2344,18 @@
   if (extract_symbol)
     return;
 
+  if ((isection->flags & SEC_GROUP) != 0)
+    {
+      asymbol *gsym = group_signature (isection);
+
+      if (gsym != NULL)
+	{
+	  gsym->flags |= BSF_KEEP;
+	  if (ibfd->xvec->flavour == bfd_target_elf_flavour)
+	    elf_group_id (isection) = gsym;
+	}
+    }
+
   /* Allow the BFD backend to copy any private data it understands
      from the input section to the output section.  */
   if (!bfd_copy_private_section_data (ibfd, isection, obfd, osection))
@@ -2351,13 +2363,6 @@
       err = _("failed to copy private data");
       goto loser;
     }
-  else if ((isection->flags & SEC_GROUP) != 0)
-    {
-      asymbol *gsym = group_signature (isection);
-
-      if (gsym != NULL)
-	gsym->flags |= BSF_KEEP;
-    }
 
   /* All went well.  */
   return;
diff --git a/binutils/po/id.po b/binutils/po/id.po
new file mode 100644
index 0000000..439e267
--- /dev/null
+++ b/binutils/po/id.po
@@ -0,0 +1,6248 @@
+# Pesan Bahasa Indonesia untuk binutils
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: binutils 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-10-21 17:45+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: addr2line.c:76
+#, c-format
+msgid "Usage: %s [option(s)] [addr(s)]\n"
+msgstr "Penggunaan: %s [opsi] [alamat]\n"
+
+#: addr2line.c:77
+#, c-format
+msgid " Convert addresses into line number/file name pairs.\n"
+msgstr " Mengubah alamat kedalam pasangan nomor baris / nama berkas.\n"
+
+#: addr2line.c:78
+#, c-format
+msgid " If no addresses are specified on the command line, they will be read from stdin\n"
+msgstr " Jika tidak ada alamat yang dispesifikasikan dalam baris perintah, mereka akan dibaca dari stdin\n"
+
+#: addr2line.c:79
+#, c-format
+msgid ""
+" The options are:\n"
+"  @<file>                Read options from <file>\n"
+"  -b --target=<bfdname>  Set the binary file format\n"
+"  -e --exe=<executable>  Set the input file name (default is a.out)\n"
+"  -i --inlines           Unwind inlined functions\n"
+"  -j --section=<name>    Read section-relative offsets instead of addresses\n"
+"  -s --basenames         Strip directory names\n"
+"  -f --functions         Show function names\n"
+"  -C --demangle[=style]  Demangle function names\n"
+"  -h --help              Display this information\n"
+"  -v --version           Display the program's version\n"
+"\n"
+msgstr ""
+" Opsi adalah:\n"
+"  @<berkas>              Baca opsi dari <berkas>\n"
+"  -b --target=<bfdname>  Set format berkas binary\n"
+"  -e --exe=executable>   Set nama berkas masukan (baku a.out)\n"
+"  -i --inlines           Buka fungsi inline\n"
+"  -j --section=<nama>    Baca section-relative ofset daripada alamat\n"
+"  -s --basenames         Strip nama direktori\n"
+"  -f --functions         Tampilkan nama fungsi\n"
+"  -C --demangle[=style]  Demangle nama fungsi\n"
+"  -h --help              Tampilkan informasi ini\n"
+"  -v --version           Tampilkan versi aplikasi\n"
+"\n"
+
+#: addr2line.c:94 ar.c:274 coffdump.c:469 dlltool.c:3173 dllwrap.c:510
+#: nlmconv.c:1113 objcopy.c:513 objcopy.c:548 readelf.c:2868 size.c:99
+#: srconv.c:1741 strings.c:664 sysdump.c:654 windmc.c:233 windres.c:698
+#, c-format
+msgid "Report bugs to %s\n"
+msgstr "Laporkan bugs ke %s\n"
+
+#: addr2line.c:281
+#, c-format
+msgid "%s: cannot get addresses from archive"
+msgstr "%s: tidak dapat memperoleh alamat dari archive"
+
+#: addr2line.c:298
+#, c-format
+msgid "%s: cannot find section %s"
+msgstr "%s: tidak dapat menemukan daerah %s"
+
+#: addr2line.c:364 nm.c:1542 objdump.c:3223
+#, c-format
+msgid "unknown demangling style `%s'"
+msgstr "gaya demangling `%s' tidak diketahui"
+
+#: ar.c:212
+#, c-format
+msgid "no entry %s in archive\n"
+msgstr "tidak ada masukan %s dalam archive\n"
+
+#: ar.c:228
+#, c-format
+msgid "Usage: %s [emulation options] [-]{dmpqrstx}[abcfilNoPsSuvV] [member-name] [count] archive-file file...\n"
+msgstr "Penggunaan: %s [opsi emulasi] [-]{dmpqrstx}[abcfilNoPsSuvV] [nama-anggota] [jumlah] berkas-archive berkas...\n"
+
+#: ar.c:231
+#, c-format
+msgid "       %s -M [<mri-script]\n"
+msgstr "       %s -M [<mri-scrip]\n"
+
+#: ar.c:232
+#, c-format
+msgid " commands:\n"
+msgstr " perintah:\n"
+
+#: ar.c:233
+#, c-format
+msgid "  d            - delete file(s) from the archive\n"
+msgstr "  d            - hapus berkas dari archive\n"
+
+#: ar.c:234
+#, c-format
+msgid "  m[ab]        - move file(s) in the archive\n"
+msgstr "  m[ab]        - pindahkan berkas dalam archive\n"
+
+#: ar.c:235
+#, c-format
+msgid "  p            - print file(s) found in the archive\n"
+msgstr "  p            - tampilkan berkas ditemukan dalam archive\n"
+
+#: ar.c:236
+#, c-format
+msgid "  q[f]         - quick append file(s) to the archive\n"
+msgstr "  q[f]         - tambahkan berkas cepat kedalam archive\n"
+
+#: ar.c:237
+#, c-format
+msgid "  r[ab][f][u]  - replace existing or insert new file(s) into the archive\n"
+msgstr "  r[ab][f][u]  - gantikan telah ada atau masukan berkas baru kedalam archive\n"
+
+#: ar.c:238
+#, c-format
+msgid "  t            - display contents of archive\n"
+msgstr "  t            - tampilkan isi dari archive\n"
+
+#: ar.c:239
+#, c-format
+msgid "  x[o]         - extract file(s) from the archive\n"
+msgstr "  x[o]         - ekstrak berkas dari archive\n"
+
+#: ar.c:240
+#, c-format
+msgid " command specific modifiers:\n"
+msgstr " modifikasi spesifik perintah:\n"
+
+#: ar.c:241
+#, c-format
+msgid "  [a]          - put file(s) after [member-name]\n"
+msgstr "  [a]          - tempatkan berkas setelah [nama-anggota]\n"
+
+#: ar.c:242
+#, c-format
+msgid "  [b]          - put file(s) before [member-name] (same as [i])\n"
+msgstr "  [b]          - tempatkan berkas sebelum [nama-anggota] (sama seperti [i])\n"
+
+#: ar.c:243
+#, c-format
+msgid "  [N]          - use instance [count] of name\n"
+msgstr "  [N]          - gunakan instance [jumlah] dari nama\n"
+
+#: ar.c:244
+#, c-format
+msgid "  [f]          - truncate inserted file names\n"
+msgstr "  [f]          - potong masukan nama berkas\n"
+
+#: ar.c:245
+#, c-format
+msgid "  [P]          - use full path names when matching\n"
+msgstr "  [P]          - gunakan nama jalur lengkap ketika mencocokan\n"
+
+#: ar.c:246
+#, c-format
+msgid "  [o]          - preserve original dates\n"
+msgstr "  [o]          - jaga tanggal asli\n"
+
+#: ar.c:247
+#, c-format
+msgid "  [u]          - only replace files that are newer than current archive contents\n"
+msgstr "  [u]          - hanya gantikan berkas yang lebih baru dari isi archive sekarang\n"
+
+#: ar.c:248
+#, c-format
+msgid " generic modifiers:\n"
+msgstr " pemodifikasi umum:\n"
+
+#: ar.c:249
+#, c-format
+msgid "  [c]          - do not warn if the library had to be created\n"
+msgstr "  [c]          - jangan peringatkan jika perpustakaan harus dibuat\n"
+
+#: ar.c:250
+#, c-format
+msgid "  [s]          - create an archive index (cf. ranlib)\n"
+msgstr "  [s]          - buat sebuah indeks archive (cf. ranlib)\n"
+
+#: ar.c:251
+#, c-format
+msgid "  [S]          - do not build a symbol table\n"
+msgstr "  [S]          - jangan buah sebuah tabel simbol\n"
+
+#: ar.c:252
+#, c-format
+msgid "  [T]          - make a thin archive\n"
+msgstr "  [T]          - buat sebuah archive tipis\n"
+
+#: ar.c:253
+#, c-format
+msgid "  [v]          - be verbose\n"
+msgstr "  [v]          - verbose\n"
+
+#: ar.c:254
+#, c-format
+msgid "  [V]          - display the version number\n"
+msgstr "  [V]          - tampilkan nomor versi\n"
+
+#: ar.c:255
+#, c-format
+msgid "  @<file>      - read options from <file>\n"
+msgstr "  @<berkas>    - baca opsi dari <berkas>\n"
+
+#: ar.c:262
+#, c-format
+msgid "Usage: %s [options] archive\n"
+msgstr "Penggunaan: %s [opsi] archive\n"
+
+#: ar.c:263
+#, c-format
+msgid " Generate an index to speed access to archives\n"
+msgstr " Buat sebuah indeks untuk mempercepat akses ke archive\n"
+
+#: ar.c:264
+#, c-format
+msgid ""
+" The options are:\n"
+"  @<file>                      Read options from <file>\n"
+"  -t                           Update the archive's symbol map timestamp\n"
+"  -h --help                    Print this help message\n"
+"  -v --version                 Print version information\n"
+msgstr ""
+" Opsi adalah:\n"
+"  @<berkas>                    Baca opsi dari <berkas>\n"
+"  -t                           Update archive peta simbol tanda-waktu\n"
+"  -h --help                    Tampilkan pesan bantuan ini\n"
+"  -v --version                 Tampilkan informasi versi\n"
+
+#: ar.c:499
+msgid "two different operation options specified"
+msgstr "dua opsi operasi berbeda dispesifikasikan"
+
+#: ar.c:577
+#, c-format
+msgid "illegal option -- %c"
+msgstr "opsi tidak legal -- %c"
+
+#: ar.c:620
+msgid "no operation specified"
+msgstr "tidak ada operasi yang dispesifikasikan"
+
+#: ar.c:623
+msgid "`u' is only meaningful with the `r' option."
+msgstr "`u' hanya berarti dengan opsi `r'."
+
+#: ar.c:631
+msgid "`N' is only meaningful with the `x' and `d' options."
+msgstr "`N' hanya berarti dengan opsi `x' dan `d'."
+
+#: ar.c:634
+msgid "Value for `N' must be positive."
+msgstr "Nilai untuk `N' harus positif."
+
+#: ar.c:646
+msgid "`x' cannot be used on thin archives."
+msgstr "`x' tidak dapat digunakan dalam archive tipis."
+
+#: ar.c:687
+#, c-format
+msgid "internal error -- this option not implemented"
+msgstr "internal error -- opsi ini tidak terimplementasi"
+
+#: ar.c:756
+#, c-format
+msgid "creating %s"
+msgstr "membuat %s"
+
+#: ar.c:805 ar.c:860 ar.c:1185 objcopy.c:1912
+#, c-format
+msgid "internal stat error on %s"
+msgstr "internal stat error di %s"
+
+#: ar.c:809
+#, c-format
+msgid ""
+"\n"
+"<%s>\n"
+"\n"
+msgstr ""
+"\n"
+"<%s>\n"
+"\n"
+
+#: ar.c:825 ar.c:893
+#, c-format
+msgid "%s is not a valid archive"
+msgstr "%s bukan sebuah archive valid"
+
+#: ar.c:1090
+#, c-format
+msgid "No member named `%s'\n"
+msgstr "Tidak ada anggota bernama `%s'\n"
+
+#: ar.c:1140
+#, c-format
+msgid "no entry %s in archive %s!"
+msgstr "tidak ada masukan %s dalam archive %s!"
+
+#: ar.c:1279
+#, c-format
+msgid "%s: no archive map to update"
+msgstr "%s: tidak ada peta archive untuk update"
+
+#: arsup.c:89
+#, c-format
+msgid "No entry %s in archive.\n"
+msgstr "Tidak ada masukan %s dalam archive.\n"
+
+#: arsup.c:114
+#, c-format
+msgid "Can't open file %s\n"
+msgstr "Tidak dapat membuka berkas %s\n"
+
+#: arsup.c:164
+#, c-format
+msgid "%s: Can't open output archive %s\n"
+msgstr "%s: Tidak dapat membuat keluaran archive %s\n"
+
+#: arsup.c:181
+#, c-format
+msgid "%s: Can't open input archive %s\n"
+msgstr "%s: Tidak dapat membuak masukan archive %s\n"
+
+#: arsup.c:190
+#, c-format
+msgid "%s: file %s is not an archive\n"
+msgstr "%s: berkas %s bukan sebuah archive\n"
+
+#: arsup.c:230
+#, c-format
+msgid "%s: no output archive specified yet\n"
+msgstr "%s: belum ada keluaran archive yang dispesifikasikan\n"
+
+#: arsup.c:250 arsup.c:288 arsup.c:330 arsup.c:350 arsup.c:416
+#, c-format
+msgid "%s: no open output archive\n"
+msgstr "%s: tidak ada keluaran archive\n"
+
+#: arsup.c:261 arsup.c:371 arsup.c:397
+#, c-format
+msgid "%s: can't open file %s\n"
+msgstr "%s: tidak dapat membuka berkas %s\n"
+
+#: arsup.c:315 arsup.c:393 arsup.c:474
+#, c-format
+msgid "%s: can't find module file %s\n"
+msgstr "%s: tidak dapat menemukan berkas module %s\n"
+
+#: arsup.c:425
+#, c-format
+msgid "Current open archive is %s\n"
+msgstr "Open archive sekarang adalah %s\n"
+
+#: arsup.c:449
+#, c-format
+msgid "%s: no open archive\n"
+msgstr "%s: tidak ada open archive\n"
+
+#: bin2c.c:59
+#, c-format
+msgid "Usage: %s < input_file > output_file\n"
+msgstr "Penggunaan: %s < input_file > output_file\n"
+
+#: bin2c.c:60
+#, c-format
+msgid "Prints bytes from stdin in hex format.\n"
+msgstr "Tampilkan bytes dari stdin dalam format hex.\n"
+
+#: binemul.c:38
+#, c-format
+msgid "  No emulation specific options\n"
+msgstr "  Tidak ada opsi spesifik emulasi\n"
+
+#. Macros for common output.
+#: binemul.h:43
+#, c-format
+msgid " emulation options: \n"
+msgstr " opsi emulasi: \n"
+
+#: bucomm.c:157
+#, c-format
+msgid "can't set BFD default target to `%s': %s"
+msgstr "tidak dapat menset default target BFD ke `%s': %s"
+
+#: bucomm.c:168
+#, c-format
+msgid "%s: Matching formats:"
+msgstr "%s: Format yang cocok:"
+
+#: bucomm.c:183
+#, c-format
+msgid "Supported targets:"
+msgstr "Target yang didukung:"
+
+#: bucomm.c:185
+#, c-format
+msgid "%s: supported targets:"
+msgstr "%s: target yang didukung:"
+
+#: bucomm.c:202
+#, c-format
+msgid "Supported architectures:"
+msgstr "Arsitektur yang didukung:"
+
+#: bucomm.c:204
+#, c-format
+msgid "%s: supported architectures:"
+msgstr "%s: arsitektur yang didukung:"
+
+#: bucomm.c:398
+#, c-format
+msgid "BFD header file version %s\n"
+msgstr "versi berkas header BFD %s\n"
+
+#: bucomm.c:547
+#, c-format
+msgid "%s: bad number: %s"
+msgstr "%s: nomor buruk: %s"
+
+#: bucomm.c:564 strings.c:410
+#, c-format
+msgid "'%s': No such file"
+msgstr "'%s': Tidak ada berkas seperti itu"
+
+#: bucomm.c:566 strings.c:412
+#, c-format
+msgid "Warning: could not locate '%s'.  reason: %s"
+msgstr "Peringatan: Tidak dapat menemukan '%s'. alasan: %s"
+
+#: bucomm.c:570
+#, c-format
+msgid "Warning: '%s' is not an ordinary file"
+msgstr "Peringatan: '%s' bukan sebuah berkas biasa"
+
+#: coffdump.c:106
+#, c-format
+msgid "#lines %d "
+msgstr "#baris %d "
+
+#: coffdump.c:460 sysdump.c:647
+#, c-format
+msgid "Usage: %s [option(s)] in-file\n"
+msgstr "Penggunaan: %s [opsi[ in-berkas\n"
+
+#: coffdump.c:461
+#, c-format
+msgid " Print a human readable interpretation of a SYSROFF object file\n"
+msgstr " Tampilkan dalam interpretasi yang mudah dipahami dari sebuah berkas objek SYSROFF\n"
+
+#: coffdump.c:462
+#, c-format
+msgid ""
+" The options are:\n"
+"  @<file>                Read options from <file>\n"
+"  -h --help              Display this information\n"
+"  -v --version           Display the program's version\n"
+"\n"
+msgstr ""
+" Opsi adalah:\n"
+"  @<berkas>              Baca opsi dari <berkas>\n"
+"  -h --help              Tampilkan informasi ini\n"
+"  -v --version           Tampilkan versi aplikasi\n"
+"\n"
+
+#: coffdump.c:531 srconv.c:1831 sysdump.c:711
+msgid "no input file specified"
+msgstr "tidak ada berkas masukan yang dispesifikasikan"
+
+#: cxxfilt.c:119 nm.c:256 objdump.c:241
+#, c-format
+msgid "Report bugs to %s.\n"
+msgstr "Laporkan bugs ke %s.\n"
+
+#: debug.c:647
+msgid "debug_add_to_current_namespace: no current file"
+msgstr "debug_add_to_current_namespace: tidak ada berkas sekarang"
+
+#: debug.c:726
+msgid "debug_start_source: no debug_set_filename call"
+msgstr "debug_start_source: tidak ada debug_set_filename call"
+
+#: debug.c:782
+msgid "debug_record_function: no debug_set_filename call"
+msgstr "debug_record_function: tidak ada debug_set_filename call"
+
+#: debug.c:834
+msgid "debug_record_parameter: no current function"
+msgstr "debug_record_parameter: tidak ada fungsi sekarang"
+
+#: debug.c:866
+msgid "debug_end_function: no current function"
+msgstr "debug_end_function: tidak ada fungsi sekarang"
+
+#: debug.c:872
+msgid "debug_end_function: some blocks were not closed"
+msgstr "debug_end_function: beberapa blok tidak ditutup"
+
+#: debug.c:900
+msgid "debug_start_block: no current block"
+msgstr "debug_start_block: tidak ada blok sekarang"
+
+#: debug.c:936
+msgid "debug_end_block: no current block"
+msgstr "debug_end_block: tidak ada block sekarang"
+
+#: debug.c:943
+msgid "debug_end_block: attempt to close top level block"
+msgstr "debug_end_block: mencoba menutup tingkat teratas blok"
+
+#: debug.c:966
+msgid "debug_record_line: no current unit"
+msgstr "debug_record_line: tidak ada satuan sekarang"
+
+#. FIXME
+#: debug.c:1019
+msgid "debug_start_common_block: not implemented"
+msgstr "debug_start_common_block: tidak terimplementasi"
+
+#. FIXME
+#: debug.c:1030
+msgid "debug_end_common_block: not implemented"
+msgstr "debug_end_common_block: tidak terimplementasi"
+
+#. FIXME.
+#: debug.c:1114
+msgid "debug_record_label: not implemented"
+msgstr "debug_record_label: tidak terimplementasi"
+
+#: debug.c:1136
+msgid "debug_record_variable: no current file"
+msgstr "debug_record_variabel: tidak ada berkas sekarang"
+
+#: debug.c:1664
+msgid "debug_make_undefined_type: unsupported kind"
+msgstr "debug_make_undefined_type: kind tidak didukung"
+
+#: debug.c:1841
+msgid "debug_name_type: no current file"
+msgstr "debug_name_type: tidak ada berkas sekarang"
+
+#: debug.c:1886
+msgid "debug_tag_type: no current file"
+msgstr "debug_tag_type: tidak ada berkas sekarang"
+
+#: debug.c:1894
+msgid "debug_tag_type: extra tag attempted"
+msgstr "debug_tag_type: ekstra tag dicoba"
+
+#: debug.c:1931
+#, c-format
+msgid "Warning: changing type size from %d to %d\n"
+msgstr "Peringatan: mengubah ukuran tipe dari %d ke %d\n"
+
+#: debug.c:1953
+msgid "debug_find_named_type: no current compilation unit"
+msgstr "debug_find_named_type:: tidak ada satuan kompilasi sekarang"
+
+#: debug.c:2056
+#, c-format
+msgid "debug_get_real_type: circular debug information for %s\n"
+msgstr "debug_get_real_type: circular informasi debug untuk %s\n"
+
+#: debug.c:2483
+msgid "debug_write_type: illegal type encountered"
+msgstr "debug_write_type: tipe tidak legal ditemui"
+
+#: dlltool.c:797 dlltool.c:823 dlltool.c:854
+#, c-format
+msgid "Internal error: Unknown machine type: %d"
+msgstr "Internal error: tipe mesin tidak diketahui: %d"
+
+#: dlltool.c:890
+#, c-format
+msgid "Can't open def file: %s"
+msgstr "Tidak dapat membuka berkas def: %s"
+
+#: dlltool.c:895
+#, c-format
+msgid "Processing def file: %s"
+msgstr "Memproses berkas def: %s"
+
+#: dlltool.c:899
+msgid "Processed def file"
+msgstr "Berkas def telah diproses"
+
+#: dlltool.c:923
+#, c-format
+msgid "Syntax error in def file %s:%d"
+msgstr "Sintaks error dalam berkas def %s: %d"
+
+#: dlltool.c:958
+#, c-format
+msgid "%s: Path components stripped from image name, '%s'."
+msgstr "%s: Path komponen stripped dari nama gambar, '%s'."
+
+#: dlltool.c:967
+#, c-format
+msgid "NAME: %s base: %x"
+msgstr "NAMA: %s dasar: %x"
+
+#: dlltool.c:970 dlltool.c:986
+msgid "Can't have LIBRARY and NAME"
+msgstr "Tida dapat memiliki PERPUSTAKAAN dan NAMA"
+
+#: dlltool.c:983
+#, c-format
+msgid "LIBRARY: %s base: %x"
+msgstr "PERPUSTAKAAN: %s dasar: %x"
+
+#: dlltool.c:1219 resrc.c:293
+#, c-format
+msgid "wait: %s"
+msgstr "tunggu: %s"
+
+#: dlltool.c:1224 dllwrap.c:410 resrc.c:298
+#, c-format
+msgid "subprocess got fatal signal %d"
+msgstr "subproses mendapat sinyal fatal %d"
+
+#: dlltool.c:1230 dllwrap.c:417 resrc.c:305
+#, c-format
+msgid "%s exited with status %d"
+msgstr "%s keluar dengan status %d"
+
+#: dlltool.c:1261
+#, c-format
+msgid "Sucking in info from %s section in %s"
+msgstr "Suckin dalam info dari %s daerah dalam %s"
+
+#: dlltool.c:1386
+#, c-format
+msgid "Excluding symbol: %s"
+msgstr "Mengabaikan simbol: %s"
+
+#: dlltool.c:1475 dlltool.c:1486 nm.c:992 nm.c:1003
+#, c-format
+msgid "%s: no symbols"
+msgstr "%s: tidak ada simbol"
+
+#. FIXME: we ought to read in and block out the base relocations.
+#: dlltool.c:1512
+#, c-format
+msgid "Done reading %s"
+msgstr "Selesai membaca %s"
+
+#: dlltool.c:1522
+#, c-format
+msgid "Unable to open object file: %s"
+msgstr "Tidak dapat membuka berkas objek: %s"
+
+#: dlltool.c:1525
+#, c-format
+msgid "Scanning object file %s"
+msgstr "Menskan berkas objek %s"
+
+#: dlltool.c:1540
+#, c-format
+msgid "Cannot produce mcore-elf dll from archive file: %s"
+msgstr "Tidak dapat menghasilkan mcore-elf dll dari berkas archive: %s"
+
+#: dlltool.c:1626
+msgid "Adding exports to output file"
+msgstr "Menambahkan ekspor ke berkas keluaran"
+
+#: dlltool.c:1674
+msgid "Added exports to output file"
+msgstr "Menambahkan ekspor ke berkas keluaran"
+
+#: dlltool.c:1813
+#, c-format
+msgid "Generating export file: %s"
+msgstr "Menghasilkan berkas ekspor: %s"
+
+#: dlltool.c:1818
+#, c-format
+msgid "Unable to open temporary assembler file: %s"
+msgstr "Tidak dapat membuka berkas perakit sementara: %s"
+
+#: dlltool.c:1821
+#, c-format
+msgid "Opened temporary file: %s"
+msgstr "Berkas sementara terbuka: %s"
+
+#: dlltool.c:2043
+msgid "Generated exports file"
+msgstr "Menghasilkan berkas ekspor"
+
+#: dlltool.c:2251
+#, c-format
+msgid "bfd_open failed open stub file: %s"
+msgstr "bfd_open gagal membuka berkas stub: %s"
+
+#: dlltool.c:2254
+#, c-format
+msgid "Creating stub file: %s"
+msgstr "Membuat berkas stub: %s"
+
+#: dlltool.c:2672
+#, c-format
+msgid "failed to open temporary head file: %s"
+msgstr "gagal membuka berkas sementara head: %s"
+
+#: dlltool.c:2734
+#, c-format
+msgid "failed to open temporary tail file: %s"
+msgstr "gagal membuka berkas sementara tail: %s"
+
+#: dlltool.c:2809
+#, c-format
+msgid "Can't open .lib file: %s"
+msgstr "Tidak dapat membuka berkas .lib: %s"
+
+#: dlltool.c:2812
+#, c-format
+msgid "Creating library file: %s"
+msgstr "Membuat berkas perpustakaan: %s"
+
+#: dlltool.c:2896 dlltool.c:2902
+#, c-format
+msgid "cannot delete %s: %s"
+msgstr "tidak dapat menghapus %s: %s"
+
+#: dlltool.c:2907
+msgid "Created lib file"
+msgstr "Membuat berkas lib"
+
+#: dlltool.c:2986
+#, c-format
+msgid "Warning, ignoring duplicate EXPORT %s %d,%d"
+msgstr "Peringatan, mengabaikan duplikasi EXPORT %s %d,%d"
+
+#: dlltool.c:2992
+#, c-format
+msgid "Error, duplicate EXPORT with ordinals: %s"
+msgstr "Error, duplikasi EXPORT dengan ordinals: %s"
+
+#: dlltool.c:3097
+msgid "Processing definitions"
+msgstr "Memproses definisi"
+
+#: dlltool.c:3129
+msgid "Processed definitions"
+msgstr "Definisi telah terproses"
+
+#. xgetext:c-format
+#: dlltool.c:3136 dllwrap.c:471
+#, c-format
+msgid "Usage %s <option(s)> <object-file(s)>\n"
+msgstr "Penggunaan %s <opsi> <berkas-objek>\n"
+
+#. xgetext:c-format
+#: dlltool.c:3138
+#, c-format
+msgid "   -m --machine <machine>    Create as DLL for <machine>.  [default: %s]\n"
+msgstr "   -m --machine <mesin>      Buat sebagai DLL untuk <mesin>. [baku: %s]\n"
+
+#: dlltool.c:3139
+#, c-format
+msgid "        possible <machine>: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"
+msgstr "        <mesin> mungkin: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"
+
+#: dlltool.c:3140
+#, c-format
+msgid "   -e --output-exp <outname> Generate an export file.\n"
+msgstr "   -e --output-expt <outname> Hasilkan sebuah berkas ekspor.\n"
+
+#: dlltool.c:3141
+#, c-format
+msgid "   -l --output-lib <outname> Generate an interface library.\n"
+msgstr "   -l --output-lib <outname> Hasilkan sebuah perpustakaan antar-muka.\n"
+
+#: dlltool.c:3142
+#, c-format
+msgid "   -a --add-indirect         Add dll indirects to export file.\n"
+msgstr "   -a --add-indirect         Tambahkan dll tidak langsung ke berkas ekspor.\n"
+
+#: dlltool.c:3143
+#, c-format
+msgid "   -D --dllname <name>       Name of input dll to put into interface lib.\n"
+msgstr "   -D --dllname <nama>       Nama dari masukan dll ke put dalam antar-muka lib.\n"
+
+#: dlltool.c:3144
+#, c-format
+msgid "   -d --input-def <deffile>  Name of .def file to be read in.\n"
+msgstr "   -d --input-def <deffile>  Nama dari berkas .def yang akan dibaca.\n"
+
+#: dlltool.c:3145
+#, c-format
+msgid "   -z --output-def <deffile> Name of .def file to be created.\n"
+msgstr "   -z --output-def <deffile> Nama dari berkas .def yang akan dibuat.\n"
+
+#: dlltool.c:3146
+#, c-format
+msgid "      --export-all-symbols   Export all symbols to .def\n"
+msgstr "      --export-all-symbols   Ekspor seluruh simbol ke .def\n"
+
+#: dlltool.c:3147
+#, c-format
+msgid "      --no-export-all-symbols  Only export listed symbols\n"
+msgstr "      --no-export-all-symbols  Hanya ekspor simbol yang terdaftar\n"
+
+#: dlltool.c:3148
+#, c-format
+msgid "      --exclude-symbols <list> Don't export <list>\n"
+msgstr "      --exclude-symbols <list> Jangan ekspor <daftar>\n"
+
+#: dlltool.c:3149
+#, c-format
+msgid "      --no-default-excludes  Clear default exclude symbols\n"
+msgstr "      --no-default-excludes  Hapus default exclude symbols\n"
+
+#: dlltool.c:3150
+#, c-format
+msgid "   -b --base-file <basefile> Read linker generated base file.\n"
+msgstr "   -b --base-file <basefile> Baca berkas dasar yang dihasilkan linker.\n"
+
+#: dlltool.c:3151
+#, c-format
+msgid "   -x --no-idata4            Don't generate idata$4 section.\n"
+msgstr "   -x --no-idata4            Jangan hasilkan daerah idata$4.\n"
+
+#: dlltool.c:3152
+#, c-format
+msgid "   -c --no-idata5            Don't generate idata$5 section.\n"
+msgstr "   -c --no-idata5             Jangan hasilkan daerah idata$5.\n"
+
+#: dlltool.c:3153
+#, c-format
+msgid "   -U --add-underscore       Add underscores to all symbols in interface library.\n"
+msgstr "   -U --add-underscore       Tambahkan garis-bawah ke semua simbol dalam antar-muka perpustakaan.\n"
+
+#: dlltool.c:3154
+#, c-format
+msgid "      --add-stdcall-underscore Add underscores to stdcall symbols in interface library.\n"
+msgstr "      --add-stdcall-underscore Tambahkan garis-bawah ke stdcall simbol dalam antar-muka perpustakaan.\n"
+
+#: dlltool.c:3155
+#, c-format
+msgid "   -k --kill-at              Kill @<n> from exported names.\n"
+msgstr "   -k --kill-at              Matikan @<n> dari nama terekspor.\n"
+
+#: dlltool.c:3156
+#, c-format
+msgid "   -A --add-stdcall-alias    Add aliases without @<n>.\n"
+msgstr "   -A --add-stdcall-alias    Tambahkan alias tanpa @<n>.\n"
+
+#: dlltool.c:3157
+#, c-format
+msgid "   -p --ext-prefix-alias <prefix> Add aliases with <prefix>.\n"
+msgstr "   -p --ext-prefix-alias <prefix> Tambahkan alias dengan <prefix>.\n"
+
+#: dlltool.c:3158
+#, c-format
+msgid "   -S --as <name>            Use <name> for assembler.\n"
+msgstr "   -S --as <nama>            Gunakan <nama> untuk perakit.\n"
+
+#: dlltool.c:3159
+#, c-format
+msgid "   -f --as-flags <flags>     Pass <flags> to the assembler.\n"
+msgstr "   -f --as-flags <flags>     Lewatkan <flags> ke perakit.\n"
+
+#: dlltool.c:3160
+#, c-format
+msgid "   -C --compat-implib        Create backward compatible import library.\n"
+msgstr "   -C --compat-implib        Buat kompabilitaas kebelakang impor perpustakaan.\n"
+
+#: dlltool.c:3161
+#, c-format
+msgid "   -n --no-delete            Keep temp files (repeat for extra preservation).\n"
+msgstr "   -n --no-delete            Simpan berkas sementara (ulang untuk ekstra preservation).\n"
+
+#: dlltool.c:3162
+#, c-format
+msgid "   -t --temp-prefix <prefix> Use <prefix> to construct temp file names.\n"
+msgstr "   -t --temp-prefix <prefix> Gunakan <prefix untuk mengkonstruksi nama berkas sementara.\n"
+
+#: dlltool.c:3163
+#, c-format
+msgid "   -v --verbose              Be verbose.\n"
+msgstr "   -v --verbose              Verbose.\n"
+
+#: dlltool.c:3164
+#, c-format
+msgid "   -V --version              Display the program version.\n"
+msgstr "   -V --version              Tampilkan versi dari aplikasi.\n"
+
+#: dlltool.c:3165
+#, c-format
+msgid "   -h --help                 Display this information.\n"
+msgstr "   -h --help                 Tampilkan informasi ini.\n"
+
+#: dlltool.c:3166
+#, c-format
+msgid "   @<file>                   Read options from <file>.\n"
+msgstr "   @<berkas>                 Baca opsi dari <berkas>.\n"
+
+#: dlltool.c:3168
+#, c-format
+msgid "   -M --mcore-elf <outname>  Process mcore-elf object files into <outname>.\n"
+msgstr "   -M --mcore-elf <outname>  Proses mcore-elf berkas objek kedalam <outname>.\n"
+
+#: dlltool.c:3169
+#, c-format
+msgid "   -L --linker <name>        Use <name> as the linker.\n"
+msgstr "   -L --linker <nama>        Gunakan <nama> sebagai linker.\n"
+
+#: dlltool.c:3170
+#, c-format
+msgid "   -F --linker-flags <flags> Pass <flags> to the linker.\n"
+msgstr "   -F --linker-flags <flags> Lewatkan <flags> ke linker.\n"
+
+#: dlltool.c:3293
+#, c-format
+msgid "Path components stripped from dllname, '%s'."
+msgstr "Jalur komponen dihapus dari dllname, '%s'."
+
+#: dlltool.c:3338
+#, c-format
+msgid "Unable to open base-file: %s"
+msgstr "Tidak dapat membuka berkas-dasar: %s"
+
+#: dlltool.c:3370
+#, c-format
+msgid "Machine '%s' not supported"
+msgstr "Mesin '%s' tidak didukung"
+
+#: dlltool.c:3474 dllwrap.c:201
+#, c-format
+msgid "Tried file: %s"
+msgstr "Berkas yang dicoba: %s"
+
+#: dlltool.c:3481 dllwrap.c:208
+#, c-format
+msgid "Using file: %s"
+msgstr "Menggunakan berkas: %s"
+
+#: dllwrap.c:291
+#, c-format
+msgid "Keeping temporary base file %s"
+msgstr "Menjaga berkas dasaar sementara %s"
+
+#: dllwrap.c:293
+#, c-format
+msgid "Deleting temporary base file %s"
+msgstr "Menghapus berkas dasar sementara %s"
+
+#: dllwrap.c:307
+#, c-format
+msgid "Keeping temporary exp file %s"
+msgstr "Menjaga berkas eks sementara %s"
+
+#: dllwrap.c:309
+#, c-format
+msgid "Deleting temporary exp file %s"
+msgstr "Menghapus berkas eksp sementara %s"
+
+#: dllwrap.c:322
+#, c-format
+msgid "Keeping temporary def file %s"
+msgstr "Menjaga berkas def sementara %s"
+
+#: dllwrap.c:324
+#, c-format
+msgid "Deleting temporary def file %s"
+msgstr "Menghapus berkas de sementara %s"
+
+#: dllwrap.c:472
+#, c-format
+msgid "  Generic options:\n"
+msgstr "  Opsi umum:\n"
+
+#: dllwrap.c:473
+#, c-format
+msgid "   @<file>                Read options from <file>\n"
+msgstr "   @<berkas>              Baca opsi dari <berkas>\n"
+
+#: dllwrap.c:474
+#, c-format
+msgid "   --quiet, -q            Work quietly\n"
+msgstr "   --quiet, -q            Kerja secara tenang\n"
+
+#: dllwrap.c:475
+#, c-format
+msgid "   --verbose, -v          Verbose\n"
+msgstr "   --verbose, -v          Verbose\n"
+
+#: dllwrap.c:476
+#, c-format
+msgid "   --version              Print dllwrap version\n"
+msgstr "   --version              Tampilkan versi dllwrap\n"
+
+#: dllwrap.c:477
+#, c-format
+msgid "   --implib <outname>     Synonym for --output-lib\n"
+msgstr "   --implib <outname>     Sinonim untuk --output-lib\n"
+
+#: dllwrap.c:478
+#, c-format
+msgid "  Options for %s:\n"
+msgstr "  Opsi untuk %s:\n"
+
+#: dllwrap.c:479
+#, c-format
+msgid "   --driver-name <driver> Defaults to \"gcc\"\n"
+msgstr "   --driver-name <driver> Baku ke \"gcc\"\n"
+
+#: dllwrap.c:480
+#, c-format
+msgid "   --driver-flags <flags> Override default ld flags\n"
+msgstr "   --driver-flags <flags> Override baku Id flags\n"
+
+#: dllwrap.c:481
+#, c-format
+msgid "   --dlltool-name <dlltool> Defaults to \"dlltool\"\n"
+msgstr "   --dlltool-name <dlltool> Baku ku \"dlltool\"\n"
+
+#: dllwrap.c:482
+#, c-format
+msgid "   --entry <entry>        Specify alternate DLL entry point\n"
+msgstr "   --entry <masukan>      Spesifikasikan alternatif titik masukan DLL\n"
+
+#: dllwrap.c:483
+#, c-format
+msgid "   --image-base <base>    Specify image base address\n"
+msgstr "   --image-base <base>    Spesifikasikan alamat dasar image\n"
+
+#: dllwrap.c:484
+#, c-format
+msgid "   --target <machine>     i386-cygwin32 or i386-mingw32\n"
+msgstr "   --target <mesin>       i386-cygwin32 atau i386-mingw32\n"
+
+#: dllwrap.c:485
+#, c-format
+msgid "   --dry-run              Show what needs to be run\n"
+msgstr "   --dry-run              Tampilkan apa yang dibutuhkan untuk berjalan\n"
+
+#: dllwrap.c:486
+#, c-format
+msgid "   --mno-cygwin           Create Mingw DLL\n"
+msgstr "   --mno-cygwin           Buat Mingw DLL\n"
+
+#: dllwrap.c:487
+#, c-format
+msgid "  Options passed to DLLTOOL:\n"
+msgstr "  Opsi dilewatkan ke DLLTOOL:\n"
+
+#: dllwrap.c:488
+#, c-format
+msgid "   --machine <machine>\n"
+msgstr "   --machine <mesin>\n"
+
+#: dllwrap.c:489
+#, c-format
+msgid "   --output-exp <outname> Generate export file.\n"
+msgstr "   --output-exp <outname> Hasilkan berkas ekspor.\n"
+
+#: dllwrap.c:490
+#, c-format
+msgid "   --output-lib <outname> Generate input library.\n"
+msgstr "   --output-lib <outname> Hasilkan perpustakaan masukan.\n"
+
+#: dllwrap.c:491
+#, c-format
+msgid "   --add-indirect         Add dll indirects to export file.\n"
+msgstr "   --add-indirect         Tambahkan dll tidak langsung ke berkas ekspor.\n"
+
+#: dllwrap.c:492
+#, c-format
+msgid "   --dllname <name>       Name of input dll to put into output lib.\n"
+msgstr "   --dllname <nama>       Nama dari masukan dll ke put dalam lib keluaran.\n"
+
+#: dllwrap.c:493
+#, c-format
+msgid "   --def <deffile>        Name input .def file\n"
+msgstr "   --def <deffile>        Nama berkas masukan .def\n"
+
+#: dllwrap.c:494
+#, c-format
+msgid "   --output-def <deffile> Name output .def file\n"
+msgstr "   --output-def <deffile> Nama berkas keluaran .def\n"
+
+#: dllwrap.c:495
+#, c-format
+msgid "   --export-all-symbols     Export all symbols to .def\n"
+msgstr "   --export-all-symbols     Ekspor seluruh simbol ke .def\n"
+
+#: dllwrap.c:496
+#, c-format
+msgid "   --no-export-all-symbols  Only export .drectve symbols\n"
+msgstr "   --no-export-all-symbols  Hanya ekspor .drectve simbols\n"
+
+#: dllwrap.c:497
+#, c-format
+msgid "   --exclude-symbols <list> Exclude <list> from .def\n"
+msgstr "   --exclude-symbols <list> Exclude <list> dari .def\n"
+
+#: dllwrap.c:498
+#, c-format
+msgid "   --no-default-excludes    Zap default exclude symbols\n"
+msgstr "   --no-default-excludes    Zap default exclude simbol\n"
+
+#: dllwrap.c:499
+#, c-format
+msgid "   --base-file <basefile> Read linker generated base file\n"
+msgstr "   --base-file <basefile> Baca linker yang dihasilkan berkas dasar\n"
+
+#: dllwrap.c:500
+#, c-format
+msgid "   --no-idata4           Don't generate idata$4 section\n"
+msgstr "   --no-idata4           Jangan hasilkan daerah idata$4\n"
+
+#: dllwrap.c:501
+#, c-format
+msgid "   --no-idata5           Don't generate idata$5 section\n"
+msgstr "   --no-idata5           Jangan hasilkan daerah idata$4\n"
+
+#: dllwrap.c:502
+#, c-format
+msgid "   -U                     Add underscores to .lib\n"
+msgstr "   -U                     Tambahkan garis-bawah ke .lib\n"
+
+#: dllwrap.c:503
+#, c-format
+msgid "   -k                     Kill @<n> from exported names\n"
+msgstr "   -k                     Non-aktifkan @<n> dari nama terekspor\n"
+
+#: dllwrap.c:504
+#, c-format
+msgid "   --add-stdcall-alias    Add aliases without @<n>\n"
+msgstr "   --add-stdcall-alias    Tambahkan alias tanpa @<n>\n"
+
+#: dllwrap.c:505
+#, c-format
+msgid "   --as <name>            Use <name> for assembler\n"
+msgstr "   --as <nama>            Gunakan <nama> untuk perakit\n"
+
+#: dllwrap.c:506
+#, c-format
+msgid "   --nodelete             Keep temp files.\n"
+msgstr "   --nodelete             Simpan berkas sementara.\n"
+
+#: dllwrap.c:507
+#, c-format
+msgid "  Rest are passed unmodified to the language driver\n"
+msgstr "  Sisanya dilewatkan tidak termodifikasi ke driver bahasa\n"
+
+#: dllwrap.c:781
+msgid "Must provide at least one of -o or --dllname options"
+msgstr "Harus menyediakan paling tidak satu dari opsi -o atau --dllname"
+
+#: dllwrap.c:810
+msgid ""
+"no export definition file provided.\n"
+"Creating one, but that may not be what you want"
+msgstr ""
+"tidak ada berkas definisi ekspor yang diberikan.\n"
+"Membuat satu, tetapi itu mungkin bukan apa yang anda inginkan"
+
+#: dllwrap.c:969
+#, c-format
+msgid "DLLTOOL name    : %s\n"
+msgstr "nama DLLTOOL    : %s\n"
+
+#: dllwrap.c:970
+#, c-format
+msgid "DLLTOOL options : %s\n"
+msgstr "opsi DLLTOOL    : %s\n"
+
+#: dllwrap.c:971
+#, c-format
+msgid "DRIVER name     : %s\n"
+msgstr "nama DRIVER     : %s\n"
+
+#: dllwrap.c:972
+#, c-format
+msgid "DRIVER options  : %s\n"
+msgstr "opsi DRIVER     : %s\n"
+
+#: dwarf.c:98 dwarf.c:142 readelf.c:370 readelf.c:526
+#, c-format
+msgid "Unhandled data length: %d\n"
+msgstr "Panjang data tidak tertangani: %d\n"
+
+#: dwarf.c:267 dwarf.c:2563
+msgid "badly formed extended line op encountered!\n"
+msgstr "baris eksten terbentuk buruk op ditemui!\n"
+
+#: dwarf.c:274
+#, c-format
+msgid "  Extended opcode %d: "
+msgstr "  Eksten opkode %d: "
+
+#: dwarf.c:279
+#, c-format
+msgid ""
+"End of Sequence\n"
+"\n"
+msgstr ""
+"Akhir dari Urutan\n"
+"\n"
+
+#: dwarf.c:285
+#, c-format
+msgid "set Address to 0x%lx\n"
+msgstr "set Alamat ke 0x%lx\n"
+
+#: dwarf.c:290
+#, c-format
+msgid "  define new File Table entry\n"
+msgstr "  definisikan masukan Berkas Tabel baru\n"
+
+#: dwarf.c:291 dwarf.c:2178
+#, c-format
+msgid "  Entry\tDir\tTime\tSize\tName\n"
+msgstr "  Masukan\tDir\tWaktu\tUkuran\tNama\n"
+
+#: dwarf.c:293
+#, c-format
+msgid "   %d\t"
+msgstr "   %d\t"
+
+#: dwarf.c:296 dwarf.c:298 dwarf.c:300 dwarf.c:2190 dwarf.c:2192 dwarf.c:2194
+#, c-format
+msgid "%lu\t"
+msgstr "%lu\t"
+
+#: dwarf.c:301
+#, c-format
+msgid ""
+"%s\n"
+"\n"
+msgstr ""
+"%s\n"
+"\n"
+
+#. The test against DW_LNW_hi_user is redundant due to
+#. the limited range of the unsigned char data type used
+#. for op_code.
+#. && op_code <= DW_LNE_hi_user
+#: dwarf.c:342
+#, c-format
+msgid "user defined: length %d\n"
+msgstr "terdefinisi oleh pengguna: panjang %d\n"
+
+#: dwarf.c:344 dwarf.c:2594
+#, c-format
+msgid "UNKNOWN: length %d\n"
+msgstr "TIDAK DIKETAHUI: panjang %d\n"
+
+#: dwarf.c:357
+msgid "<no .debug_str section>"
+msgstr "<tidak ada daerah .debug_str>"
+
+#: dwarf.c:363
+#, c-format
+msgid "DW_FORM_strp offset too big: %lx\n"
+msgstr "DW_FORM_strp ofset terlalu besar: %lx\n"
+
+#: dwarf.c:364
+msgid "<offset is too big>"
+msgstr "<ofset terlalu besar>"
+
+#: dwarf.c:597
+#, c-format
+msgid "Unknown TAG value: %lx"
+msgstr "Nilai TAG tidak diketahui: %lx"
+
+#: dwarf.c:633
+#, c-format
+msgid "Unknown FORM value: %lx"
+msgstr "Nilai FORM tidak diketahui: %lx"
+
+#: dwarf.c:642
+#, c-format
+msgid " %lu byte block: "
+msgstr " %lu byte blok: "
+
+#: dwarf.c:1031
+#, c-format
+msgid "(User defined location op)"
+msgstr "(Lokasi definisi oleh pengguna op)"
+
+#: dwarf.c:1033
+#, c-format
+msgid "(Unknown location op)"
+msgstr "(Lokasi op tidak diketahui)"
+
+#: dwarf.c:1081
+msgid "Internal error: DWARF version is not 2 or 3.\n"
+msgstr "Internal error: versi DWARF bukan 2 atau 3.\n"
+
+#: dwarf.c:1180
+msgid "DW_FORM_data8 is unsupported when sizeof (unsigned long) != 8\n"
+msgstr "DW_FORM_data8 tidak didukung ketika sizeof (unsigned long) != 8\n"
+
+#: dwarf.c:1229
+#, c-format
+msgid " (indirect string, offset: 0x%lx): %s"
+msgstr " (indirect string, ofset: 0x%lx): %s"
+
+#: dwarf.c:1238
+#, c-format
+msgid "Unrecognized form: %lu\n"
+msgstr "Bentuk tidak dikenali: %lu\n"
+
+#: dwarf.c:1322
+#, c-format
+msgid "(not inlined)"
+msgstr "(tidak inline)"
+
+#: dwarf.c:1325
+#, c-format
+msgid "(inlined)"
+msgstr "(inline)"
+
+#: dwarf.c:1328
+#, c-format
+msgid "(declared as inline but ignored)"
+msgstr "(terdeklarasi sebagai inline tetapi diabaikan)"
+
+#: dwarf.c:1331
+#, c-format
+msgid "(declared as inline and inlined)"
+msgstr "(terdeklarasi sebagai inline dan diinline)"
+
+#: dwarf.c:1334
+#, c-format
+msgid "  (Unknown inline attribute value: %lx)"
+msgstr "  (Nilai atribut inline tidak diketahui: %lx)"
+
+#: dwarf.c:1495
+#, c-format
+msgid "(location list)"
+msgstr "(daftar lokasi)"
+
+#: dwarf.c:1514 dwarf.c:3193
+#, c-format
+msgid " [without DW_AT_frame_base]"
+msgstr " [tanpa DW_AT_frame_base]"
+
+#: dwarf.c:1526
+#, c-format
+msgid "Offset %lx used as value for DW_AT_import attribute of DIE at offset %lx is too big.\n"
+msgstr "Ofset %lx yang digunakan sebagai nilai untuk DW_AT_import atribut dari DIE di ofset %lx terlalu besar.\n"
+
+#: dwarf.c:1700
+#, c-format
+msgid "Unknown AT value: %lx"
+msgstr "Nilai AT tidak diketahui: %lx"
+
+#: dwarf.c:1767
+#, c-format
+msgid "Reserved length value (%lx) found in section %s\n"
+msgstr "Nilai panjang terpesan (%lx) ditemukan di daerah %s\n"
+
+#: dwarf.c:1778
+#, c-format
+msgid "Corrupt unit length (%lx) found in section %s\n"
+msgstr "Panjang satuan terkorupsi (%lx) ditemukan di daerah %s\n"
+
+#: dwarf.c:1785
+#, c-format
+msgid "No comp units in %s section ?"
+msgstr "Tidak ada satuan comp dalam daerah %s?"
+
+#: dwarf.c:1794
+#, c-format
+msgid "Not enough memory for a debug info array of %u entries"
+msgstr "Tidak cukup memori untuk informasi debug dari masukan %u"
+
+#: dwarf.c:1802 dwarf.c:3285
+#, c-format
+msgid ""
+"The section %s contains:\n"
+"\n"
+msgstr ""
+"Daerah %s berisi:\n"
+"\n"
+
+#: dwarf.c:1810
+#, c-format
+msgid "Unable to locate %s section!\n"
+msgstr "Tidak dapat mengalokasikan daerah %s!\n"
+
+#: dwarf.c:1873
+#, c-format
+msgid "  Compilation Unit @ offset 0x%lx:\n"
+msgstr "  Kompilasi dari Unit @ ofset 0x%lx:\n"
+
+#: dwarf.c:1874
+#, c-format
+msgid "   Length:        0x%lx (%s)\n"
+msgstr "   Panjang:       0x%lx (%s)\n"
+
+#: dwarf.c:1876
+#, c-format
+msgid "   Version:       %d\n"
+msgstr "   Versi:         %d\n"
+
+#: dwarf.c:1877
+#, c-format
+msgid "   Abbrev Offset: %ld\n"
+msgstr "   Ofset Kependekan: %ld\n"
+
+#: dwarf.c:1878
+#, c-format
+msgid "   Pointer Size:  %d\n"
+msgstr "   Ukuran Pointer: %d\n"
+
+#: dwarf.c:1884
+#, c-format
+msgid "Debug info is corrupted, length of CU at %lx extends beyond end of section (length = %lx)\n"
+msgstr "Informasi debug terkorupsi, panjang dari CU di %lx eksten diluar akhir dari daerah (panjang = %lx)\n"
+
+#: dwarf.c:1893
+#, c-format
+msgid "CU at offset %lx contains corrupt or unsupported version number: %d.\n"
+msgstr "CU di ofset %lx berisi nomor versi yang terkorupsi atau tidak didukung:  %d.\n"
+
+#: dwarf.c:1903
+#, c-format
+msgid "Debug info is corrupted, abbrev offset (%lx) is larger than abbrev section size (%lx)\n"
+msgstr "Informasi debug terkorupsi, ofset kependekan (%lx) lebih besar  dari daerah kependekan ukuran (%lx)\n"
+
+#: dwarf.c:1937
+#, c-format
+msgid "Bogus end-of-siblings marker detected at offset %lx in .debug_info section\n"
+msgstr "Palsu penanda akhir-dari-siblings terdeteksi di ofset %lx dalam daerah .debug_info\n"
+
+#: dwarf.c:1941
+msgid "Further warnings about bogus end-of-sibling markers suppressed\n"
+msgstr "Tidak ada peringatan lebih lanjut mengenai penanda palsu akhir-dari-sibling ditekan\n"
+
+#: dwarf.c:1948
+#, c-format
+msgid " <%d><%lx>: Abbrev Number: %lu"
+msgstr " <%d><%lx>: Nomor Kependekan: %lu"
+
+#: dwarf.c:1965
+#, c-format
+msgid "DIE at offset %lx refers to abbreviation number %lu which does not exist\n"
+msgstr "DIE di ofset %lx mereferensikan nomor kependekan %lu dimana itu tidak ada\n"
+
+#: dwarf.c:1971
+#, c-format
+msgid " (%s)\n"
+msgstr " (%s)\n"
+
+#: dwarf.c:2062
+#, c-format
+msgid ""
+"Raw dump of debug contents of section %s:\n"
+"\n"
+msgstr ""
+"Isi mentah dari isi debug dari daerah %s:\n"
+"\n"
+
+#: dwarf.c:2100 dwarf.c:2387
+msgid "The line info appears to be corrupt - the section is too small\n"
+msgstr "Baris infor sepertinya terkorupsi - daerah terlalu kecil\n"
+
+#: dwarf.c:2109 dwarf.c:2397
+msgid "Only DWARF version 2 and 3 line info is currently supported.\n"
+msgstr "Hanya DWARF versi 2 dan 3 baris info yang saat ini didukung.\n"
+
+#: dwarf.c:2130
+#, c-format
+msgid "  Offset:                      0x%lx\n"
+msgstr "  Ofset:                       0x%lx\n"
+
+#: dwarf.c:2131
+#, c-format
+msgid "  Length:                      %ld\n"
+msgstr "  Panjang:                     %ld\n"
+
+#: dwarf.c:2132
+#, c-format
+msgid "  DWARF Version:               %d\n"
+msgstr "  Versi DWARF:                 %d\n"
+
+#: dwarf.c:2133
+#, c-format
+msgid "  Prologue Length:             %d\n"
+msgstr "  Panjang Prologue:            %d\n"
+
+#: dwarf.c:2134
+#, c-format
+msgid "  Minimum Instruction Length:  %d\n"
+msgstr "  Panjang Instruksi Minimal:   %d\n"
+
+#: dwarf.c:2135
+#, c-format
+msgid "  Initial value of 'is_stmt':  %d\n"
+msgstr "  Nilai inisial dari 'is_stmt': %d\n"
+
+#: dwarf.c:2136
+#, c-format
+msgid "  Line Base:                   %d\n"
+msgstr "  Dasar Baris:                 %d\n"
+
+#: dwarf.c:2137
+#, c-format
+msgid "  Line Range:                  %d\n"
+msgstr "  Jangkauan Baris:             %d\n"
+
+#: dwarf.c:2138
+#, c-format
+msgid "  Opcode Base:                 %d\n"
+msgstr "  Dasar Opkode:                %d\n"
+
+#: dwarf.c:2147
+#, c-format
+msgid ""
+"\n"
+" Opcodes:\n"
+msgstr ""
+"\n"
+" Opkode:\n"
+
+#: dwarf.c:2150
+#, c-format
+msgid "  Opcode %d has %d args\n"
+msgstr "  Opkode %d memiliki %d args\n"
+
+#: dwarf.c:2156
+#, c-format
+msgid ""
+"\n"
+" The Directory Table is empty.\n"
+msgstr ""
+"\n"
+" Tabel Direktori kosong.\n"
+
+#: dwarf.c:2159
+#, c-format
+msgid ""
+"\n"
+" The Directory Table:\n"
+msgstr ""
+"\n"
+" Tabel Direktori:\n"
+
+#: dwarf.c:2163
+#, c-format
+msgid "  %s\n"
+msgstr "  %s\n"
+
+#: dwarf.c:2174
+#, c-format
+msgid ""
+"\n"
+" The File Name Table is empty.\n"
+msgstr ""
+"\n"
+" Tabel Nama Berkas kosong.\n"
+
+#: dwarf.c:2177
+#, c-format
+msgid ""
+"\n"
+" The File Name Table:\n"
+msgstr ""
+"\n"
+" Tabel Nama Berkas:\n"
+
+#: dwarf.c:2185
+#, c-format
+msgid "  %d\t"
+msgstr "  %d\t"
+
+#: dwarf.c:2196
+#, c-format
+msgid "%s\n"
+msgstr "%s\n"
+
+#. Now display the statements.
+#: dwarf.c:2204
+#, c-format
+msgid ""
+"\n"
+" Line Number Statements:\n"
+msgstr ""
+"\n"
+" Pernyataan Nomor Baris:\n"
+
+#: dwarf.c:2220
+#, c-format
+msgid "  Special opcode %d: advance Address by %lu to 0x%lx"
+msgstr "  Opkode spesial %d: advance Alamat dengan %lu ke 0x%lx"
+
+#: dwarf.c:2224
+#, c-format
+msgid " and Line by %d to %d\n"
+msgstr " dan Baris dengan %d ke %d\n"
+
+#: dwarf.c:2234
+#, c-format
+msgid "  Copy\n"
+msgstr "  Salin\n"
+
+#: dwarf.c:2242
+#, c-format
+msgid "  Advance PC by %lu to 0x%lx\n"
+msgstr "  Lanjut PC dengan %lu ke 0x%lx\n"
+
+#: dwarf.c:2250
+#, c-format
+msgid "  Advance Line by %d to %d\n"
+msgstr "  Lanjut Baris dengan %d ke %d\n"
+
+#: dwarf.c:2257
+#, c-format
+msgid "  Set File Name to entry %d in the File Name Table\n"
+msgstr "  Set Nama Berkas ke masukan %d dalam Tabel Nama Berkas\n"
+
+#: dwarf.c:2265
+#, c-format
+msgid "  Set column to %lu\n"
+msgstr "  Set kolom ke %lu\n"
+
+#: dwarf.c:2272
+#, c-format
+msgid "  Set is_stmt to %d\n"
+msgstr "  Set is_stmt ke %d\n"
+
+#: dwarf.c:2277
+#, c-format
+msgid "  Set basic block\n"
+msgstr "  Set basik blok\n"
+
+#: dwarf.c:2285
+#, c-format
+msgid "  Advance PC by constant %lu to 0x%lx\n"
+msgstr "  Lanjut PC dengan konstan %lu ke 0x%lx\n"
+
+#: dwarf.c:2293
+#, c-format
+msgid "  Advance PC by fixed size amount %lu to 0x%lx\n"
+msgstr "  Lanjut PC dengan jumlah tetap %lu ke 0x%lx\n"
+
+#: dwarf.c:2298
+#, c-format
+msgid "  Set prologue_end to true\n"
+msgstr "  Set prologue_end ke true\n"
+
+#: dwarf.c:2302
+#, c-format
+msgid "  Set epilogue_begin to true\n"
+msgstr "  Set epilogue_begin ke true\n"
+
+#: dwarf.c:2308 dwarf.c:2672
+#, c-format
+msgid "  Set ISA to %lu\n"
+msgstr "  Set ISA ke %lu\n"
+
+#: dwarf.c:2312 dwarf.c:2676
+#, c-format
+msgid "  Unknown opcode %d with operands: "
+msgstr "  Opkode %d tidak dikenal dengan operan: "
+
+#: dwarf.c:2345
+#, c-format
+msgid ""
+"Decoded dump of debug contents of section %s:\n"
+"\n"
+msgstr ""
+"Dump terdekode dari isi debug dari daerah %s:\n"
+"\n"
+
+#: dwarf.c:2506
+#, c-format
+msgid "CU: %s:\n"
+msgstr "CU: %s:\n"
+
+#: dwarf.c:2507 dwarf.c:2520
+#, c-format
+msgid "File name                            Line number    Starting address\n"
+msgstr "Nama Berkas                          Nomor Baris    Awal alamat\n"
+
+#: dwarf.c:2513
+#, c-format
+msgid "CU: %s/%s:\n"
+msgstr "CU: %s/%s:\n"
+
+#: dwarf.c:2518 dwarf.c:2590
+#, c-format
+msgid "%s:\n"
+msgstr "%s:\n"
+
+#. If directory index is 0, that means current directory.
+#: dwarf.c:2623
+#, c-format
+msgid ""
+"\n"
+"./%s:[++]\n"
+msgstr ""
+"\n"
+"./%s:[++]\n"
+
+#. The directory index starts counting at 1.
+#: dwarf.c:2629
+#, c-format
+msgid ""
+"\n"
+"%s/%s:\n"
+msgstr ""
+"\n"
+"%s/%s:\n"
+
+#: dwarf.c:2714
+#, c-format
+msgid "%-35s  %11d  %#18lx\n"
+msgstr "%-35s %11d  %#18lx\n"
+
+#: dwarf.c:2719
+#, c-format
+msgid "%s  %11d  %#18lx\n"
+msgstr "%s %11d  %#18lx\n"
+
+#: dwarf.c:2749 dwarf.c:3024 dwarf.c:3425
+#, c-format
+msgid "Unable to load/parse the .debug_info section, so cannot interpret the %s section.\n"
+msgstr "Tidak dapat meload/parse daerah .debug_info, jadi tidak dapat meninterpretasikan daerah %s.\n"
+
+#: dwarf.c:2794 dwarf.c:2888 dwarf.c:2962 dwarf.c:3079 dwarf.c:3227
+#: dwarf.c:3480
+#, c-format
+msgid ""
+"Contents of the %s section:\n"
+"\n"
+msgstr ""
+"Isi dari daerah %s:\n"
+"\n"
+
+#: dwarf.c:2828 dwarf.c:3330
+#, c-format
+msgid ".debug_info offset of 0x%lx in %s section does not point to a CU header.\n"
+msgstr ".debug_info ofset dari 0x%lx dalam daerah %s tidak menunjuk ke header CU.\n"
+
+#: dwarf.c:2842
+msgid "Only DWARF 2 and 3 pubnames are currently supported\n"
+msgstr "Hanya DWARF 2 dan 3 pubnames yang saat ini didukung\n"
+
+#: dwarf.c:2849
+#, c-format
+msgid "  Length:                              %ld\n"
+msgstr "  Panjang:                             %ld\n"
+
+#: dwarf.c:2851
+#, c-format
+msgid "  Version:                             %d\n"
+msgstr "  Versi:                               %d\n"
+
+#: dwarf.c:2853
+#, c-format
+msgid "  Offset into .debug_info section:     0x%lx\n"
+msgstr "  Ofset dalam daerah .debug_info:      0x%lx\n"
+
+#: dwarf.c:2855
+#, c-format
+msgid "  Size of area in .debug_info section: %ld\n"
+msgstr "  Ukuran dari daerah dalam .debug_info: %ld\n"
+
+#: dwarf.c:2858
+#, c-format
+msgid ""
+"\n"
+"    Offset\tName\n"
+msgstr ""
+"\n"
+"    Ofset\tNama\n"
+
+#: dwarf.c:2909
+#, c-format
+msgid " DW_MACINFO_start_file - lineno: %d filenum: %d\n"
+msgstr " DW_MACINFO_start_file - lineno: %d filenum: %d\n"
+
+#: dwarf.c:2915
+#, c-format
+msgid " DW_MACINFO_end_file\n"
+msgstr " DW_MACINFO_end_file\n"
+
+#: dwarf.c:2923
+#, c-format
+msgid " DW_MACINFO_define - lineno : %d macro : %s\n"
+msgstr " DW_MACINFO_define - lineno : %d makro : %s\n"
+
+#: dwarf.c:2932
+#, c-format
+msgid " DW_MACINFO_undef - lineno : %d macro : %s\n"
+msgstr " DW_MACINFO_undef - lineno : %d makro : %s\n"
+
+#: dwarf.c:2944
+#, c-format
+msgid " DW_MACINFO_vendor_ext - constant : %d string : %s\n"
+msgstr " DW_MACINFO_vendor_ext - konstan : %d string : %s\n"
+
+#: dwarf.c:2973
+#, c-format
+msgid "  Number TAG\n"
+msgstr "  Nomor TAG\n"
+
+#: dwarf.c:2979
+#, c-format
+msgid "   %ld      %s    [%s]\n"
+msgstr "   %ld      %s    [%s]\n"
+
+#: dwarf.c:2982
+msgid "has children"
+msgstr "memiliki anak"
+
+#: dwarf.c:2982
+msgid "no children"
+msgstr "tidak memiliki anak"
+
+#: dwarf.c:2985
+#, c-format
+msgid "    %-18s %s\n"
+msgstr "    %-18s %s\n"
+
+#: dwarf.c:3018 dwarf.c:3223 dwarf.c:3419
+#, c-format
+msgid ""
+"\n"
+"The %s section is empty.\n"
+msgstr ""
+"\n"
+"Daerah %s ini kosong.\n"
+
+#. FIXME: Should we handle this case?
+#: dwarf.c:3068
+msgid "Location lists in .debug_info section aren't in ascending order!\n"
+msgstr "Daftar lokasi dalam daerah .debug_info tidak dalam urutan meningkat!\n"
+
+#: dwarf.c:3071
+msgid "No location lists in .debug_info section!\n"
+msgstr "Tidak ada daftar lokasi dalam daerah .debug_info!\n"
+
+#: dwarf.c:3076
+#, c-format
+msgid "Location lists in %s section start at 0x%lx\n"
+msgstr "Daftar lokasi dalam daerah %s dimulai di 0x%lx\n"
+
+#: dwarf.c:3080
+#, c-format
+msgid "    Offset   Begin    End      Expression\n"
+msgstr "    Ofset    Awal     Akhir    Pernyataan\n"
+
+#: dwarf.c:3111
+#, c-format
+msgid "There is a hole [0x%lx - 0x%lx] in .debug_loc section.\n"
+msgstr "Disana ada hole [0x%lx - 0x%lx] dalam daerah .debug_loc.\n"
+
+#: dwarf.c:3115
+#, c-format
+msgid "There is an overlap [0x%lx - 0x%lx] in .debug_loc section.\n"
+msgstr "Disana ada tumpang tindih [0x%lx - 0x%lx] dalam daerah .debug_loc\n"
+
+#: dwarf.c:3123
+#, c-format
+msgid "Offset 0x%lx is bigger than .debug_loc section size.\n"
+msgstr "Ofset 0x%lx lebih besar dari ukuran daerah .debug_loc.\n"
+
+#: dwarf.c:3132 dwarf.c:3167 dwarf.c:3177
+#, c-format
+msgid "Location list starting at offset 0x%lx is not terminated.\n"
+msgstr "Daftar lokasi dimulai di ofset 0x%lx tidak diakhiri.\n"
+
+#: dwarf.c:3151 dwarf.c:3532
+#, c-format
+msgid "<End of list>\n"
+msgstr "<Akhir dari daftar>\n"
+
+#: dwarf.c:3161
+#, c-format
+msgid "(base address)\n"
+msgstr "(alamat dasar)\n"
+
+#: dwarf.c:3196
+msgid " (start == end)"
+msgstr " (awal == akhir)"
+
+#: dwarf.c:3198
+msgid " (start > end)"
+msgstr " (awal > akhir)"
+
+#: dwarf.c:3208
+#, c-format
+msgid "There are %ld unused bytes at the end of section %s\n"
+msgstr "Disana ada %ld byte tidak digunakan diakhir dari daerah %s\n"
+
+#: dwarf.c:3341
+msgid "Only DWARF 2 and 3 aranges are currently supported.\n"
+msgstr "Hanya DWARF 2 dan 3 yang saat ini didukung.\n"
+
+#: dwarf.c:3345
+#, c-format
+msgid "  Length:                   %ld\n"
+msgstr "  Panjang:                  %ld\n"
+
+#: dwarf.c:3346
+#, c-format
+msgid "  Version:                  %d\n"
+msgstr "  Versi:                    %d\n"
+
+#: dwarf.c:3347
+#, c-format
+msgid "  Offset into .debug_info:  0x%lx\n"
+msgstr "  Ofset kedalam .debug_info: 0x%lx\n"
+
+#: dwarf.c:3348
+#, c-format
+msgid "  Pointer Size:             %d\n"
+msgstr "  Ukuran Penunjuk:          %d\n"
+
+#: dwarf.c:3349
+#, c-format
+msgid "  Segment Size:             %d\n"
+msgstr "  Ukuran Segmen:            %d\n"
+
+#: dwarf.c:3358
+msgid "Pointer size + Segment size is not a power of two.\n"
+msgstr "Ukuran penunjuk + Ukuran segmen bukan kelipatan dari dua.\n"
+
+#: dwarf.c:3363
+#, c-format
+msgid ""
+"\n"
+"    Address            Length\n"
+msgstr ""
+"\n"
+"    Alamat             Panjang\n"
+
+#: dwarf.c:3365
+#, c-format
+msgid ""
+"\n"
+"    Address    Length\n"
+msgstr ""
+"\n"
+"    Alamat     Panjang\n"
+
+#. FIXME: Should we handle this case?
+#: dwarf.c:3469
+msgid "Range lists in .debug_info section aren't in ascending order!\n"
+msgstr "Daftar jangkauan dalam daerah .debug_info tidak dalam urutan meningkat!\n"
+
+#: dwarf.c:3472
+msgid "No range lists in .debug_info section!\n"
+msgstr "Tidak ada daftar jangkauan dalam daerah .debug_info!\n"
+
+#: dwarf.c:3477
+#, c-format
+msgid "Range lists in %s section start at 0x%lx\n"
+msgstr "Daftar jangkauan dalam daerah %s dimulai dari 0x%lx\n"
+
+#: dwarf.c:3481
+#, c-format
+msgid "    Offset   Begin    End\n"
+msgstr "    Ofset    Awal     Akhir\n"
+
+#: dwarf.c:3506
+#, c-format
+msgid "There is a hole [0x%lx - 0x%lx] in %s section.\n"
+msgstr "Disana terdapat sebuah lubang [0x%lx -0x%lx] dalam daerah %s.\n"
+
+#: dwarf.c:3510
+#, c-format
+msgid "There is an overlap [0x%lx - 0x%lx] in %s section.\n"
+msgstr "Disana terdapat sebuah tumpang tindih [0x%lx - 0x%lx] dalam daerah %s.\n"
+
+#: dwarf.c:3548
+msgid "(start == end)"
+msgstr "(awal == akhir)"
+
+#: dwarf.c:3550
+msgid "(start > end)"
+msgstr "(awal > akhir)"
+
+#: dwarf.c:3801
+#, c-format
+msgid "The section %s contains:\n"
+msgstr "Daerah %s berisi:\n"
+
+#: dwarf.c:4492
+#, c-format
+msgid "  DW_CFA_??? (User defined call frame op: %#x)\n"
+msgstr "  DW_CFA_??? (Definisi oleh pengguna memanggil frame op: %#x)\n"
+
+#: dwarf.c:4494
+#, c-format
+msgid "unsupported or unknown Dwarf Call Frame Instruction number: %#x\n"
+msgstr "tidak didukung atau tidak dikenal Dwarf Call Frame nomor Instruksi: %#x\n"
+
+#: dwarf.c:4518
+#, c-format
+msgid "Displaying the debug contents of section %s is not yet supported.\n"
+msgstr "Menampilkan isi debug dari daerah %s belum didukung.\n"
+
+#: dwarf.c:4560
+#, c-format
+msgid "%s: Error: "
+msgstr "%s: Error: "
+
+#: dwarf.c:4571
+#, c-format
+msgid "%s: Warning: "
+msgstr "%s: Peringatan: "
+
+#: emul_aix.c:43
+#, c-format
+msgid "  [-g]         - 32 bit small archive\n"
+msgstr "  [-g]         - 32 bit archive kecil\n"
+
+#: emul_aix.c:44
+#, c-format
+msgid "  [-X32]       - ignores 64 bit objects\n"
+msgstr "  [-X32]       - abaikan objek 64 bit\n"
+
+#: emul_aix.c:45
+#, c-format
+msgid "  [-X64]       - ignores 32 bit objects\n"
+msgstr "  [-X64]       - abaikan objek 32 bit\n"
+
+#: emul_aix.c:46
+#, c-format
+msgid "  [-X32_64]    - accepts 32 and 64 bit objects\n"
+msgstr "  [-X32_64]    - terima objek 32 dan 64 bit\n"
+
+#: ieee.c:309
+msgid "unexpected end of debugging information"
+msgstr "tidak terduga akhir dari informasi debug"
+
+#: ieee.c:396
+msgid "invalid number"
+msgstr "nomor tidak valid"
+
+#: ieee.c:449
+msgid "invalid string length"
+msgstr "panjang string tidak valid"
+
+#: ieee.c:504 ieee.c:545
+msgid "expression stack overflow"
+msgstr "ekspresi stack overflow"
+
+#: ieee.c:524
+msgid "unsupported IEEE expression operator"
+msgstr "operator ekspresi IEEE tidak didukung"
+
+#: ieee.c:539
+msgid "unknown section"
+msgstr "daerah tidak dikenal"
+
+#: ieee.c:560
+msgid "expression stack underflow"
+msgstr "ekspresi stack underflow"
+
+#: ieee.c:574
+msgid "expression stack mismatch"
+msgstr "ekspresi stack tidak cocok"
+
+#: ieee.c:611
+msgid "unknown builtin type"
+msgstr "tipe builtin tidak dikenal"
+
+#: ieee.c:756
+msgid "BCD float type not supported"
+msgstr "tipe pecahan BCD tidak didukung"
+
+#: ieee.c:893
+msgid "unexpected number"
+msgstr "nomor tidak terduga"
+
+#: ieee.c:900
+msgid "unexpected record type"
+msgstr "tipe rekaman tidak terduga"
+
+#: ieee.c:933
+msgid "blocks left on stack at end"
+msgstr "sisa blok pada stack di akhir"
+
+#: ieee.c:1196
+msgid "unknown BB type"
+msgstr "tipe BB tidak diketahui"
+
+#: ieee.c:1205
+msgid "stack overflow"
+msgstr "stack overflow"
+
+#: ieee.c:1228
+msgid "stack underflow"
+msgstr "stack underflow"
+
+#: ieee.c:1340 ieee.c:1410 ieee.c:2107
+msgid "illegal variable index"
+msgstr "variabel indeks tidak legal"
+
+#: ieee.c:1388
+msgid "illegal type index"
+msgstr "tipe indeks tidak legal"
+
+#: ieee.c:1398 ieee.c:1435
+msgid "unknown TY code"
+msgstr "kode TY tidak dikenal"
+
+#: ieee.c:1417
+msgid "undefined variable in TY"
+msgstr "variabel dalam TY tidak dikenal"
+
+#. Pascal file name.  FIXME.
+#: ieee.c:1828
+msgid "Pascal file name not supported"
+msgstr "Nama berkas Pascal tidak didukung"
+
+#: ieee.c:1876
+msgid "unsupported qualifier"
+msgstr "kualifier tidak didukung"
+
+#: ieee.c:2145
+msgid "undefined variable in ATN"
+msgstr "variabel dalam ATN tidak terdefinisi"
+
+#: ieee.c:2188
+msgid "unknown ATN type"
+msgstr "tipe ATN tidak didukung"
+
+#. Reserved for FORTRAN common.
+#: ieee.c:2310
+msgid "unsupported ATN11"
+msgstr "ATN11 tidak didukung"
+
+#. We have no way to record this information.  FIXME.
+#: ieee.c:2337
+msgid "unsupported ATN12"
+msgstr "ATN12 tidak didukung"
+
+#: ieee.c:2397
+msgid "unexpected string in C++ misc"
+msgstr "string dalam misc C++ tidak terduga"
+
+#: ieee.c:2410
+msgid "bad misc record"
+msgstr "rekaman misc buruk"
+
+#: ieee.c:2451
+msgid "unrecognized C++ misc record"
+msgstr "rekaman misc C++ tidak dikenal"
+
+#: ieee.c:2566
+msgid "undefined C++ object"
+msgstr "objek C++ tidak terdefinisi"
+
+#: ieee.c:2600
+msgid "unrecognized C++ object spec"
+msgstr "spesifikasi objek C++ tidak dikenal"
+
+#: ieee.c:2636
+msgid "unsupported C++ object type"
+msgstr "tipe objek C++ tidak didukung"
+
+#: ieee.c:2646
+msgid "C++ base class not defined"
+msgstr "C++ kelas dasar tidak terdefinisi"
+
+#: ieee.c:2658 ieee.c:2763
+msgid "C++ object has no fields"
+msgstr "C++ objek tidak memiliki field"
+
+#: ieee.c:2677
+msgid "C++ base class not found in container"
+msgstr "C++ kelas dasar tidak ditemukan dalam kontainer"
+
+#: ieee.c:2784
+msgid "C++ data member not found in container"
+msgstr "C++ data anggota tidak ditemukan dalam kontainer"
+
+#: ieee.c:2825 ieee.c:2975
+msgid "unknown C++ visibility"
+msgstr "visibility C++ tidak diketahui"
+
+#: ieee.c:2859
+msgid "bad C++ field bit pos or size"
+msgstr "C++ bit field posisi atau ukuran buruk"
+
+#: ieee.c:2951
+msgid "bad type for C++ method function"
+msgstr "tipe untuk fungsi metode C++ buruk"
+
+#: ieee.c:2961
+msgid "no type information for C++ method function"
+msgstr "tidak ada informasi untuk C++ fungsi metode"
+
+#: ieee.c:3000
+msgid "C++ static virtual method"
+msgstr "C++ static virtual metode"
+
+#: ieee.c:3095
+msgid "unrecognized C++ object overhead spec"
+msgstr "tidak dikenal C++ objek overhead spec"
+
+#: ieee.c:3134
+msgid "undefined C++ vtable"
+msgstr "vtabel C++ tidak terdefinisi"
+
+#: ieee.c:3203
+msgid "C++ default values not in a function"
+msgstr "nilai baku C++ tidak dalam sebuah fungsi"
+
+#: ieee.c:3243
+msgid "unrecognized C++ default type"
+msgstr "tipe baku C++ tidak dikenal"
+
+#: ieee.c:3274
+msgid "reference parameter is not a pointer"
+msgstr "parameter referensi bukan sebuah penunjuk"
+
+#: ieee.c:3357
+msgid "unrecognized C++ reference type"
+msgstr "tipe referensi C++ tidak dikenal"
+
+#: ieee.c:3439
+msgid "C++ reference not found"
+msgstr "referensi C++ tidak ditemukan"
+
+#: ieee.c:3447
+msgid "C++ reference is not pointer"
+msgstr "referensi C++ bukan sebuah penunjuk"
+
+#: ieee.c:3473 ieee.c:3481
+msgid "missing required ASN"
+msgstr "hilang ASN yang dibutuhkan"
+
+#: ieee.c:3508 ieee.c:3516
+msgid "missing required ATN65"
+msgstr "hilang ATN65 yang dibutuhkan"
+
+#: ieee.c:3530
+msgid "bad ATN65 record"
+msgstr "rekaman ATN65 buruk"
+
+#: ieee.c:4158
+#, c-format
+msgid "IEEE numeric overflow: 0x"
+msgstr "numerik IEEE overflow; 0x"
+
+#: ieee.c:4202
+#, c-format
+msgid "IEEE string length overflow: %u\n"
+msgstr "panjang string IEEE overflow: %u\n"
+
+#: ieee.c:5199
+#, c-format
+msgid "IEEE unsupported integer type size %u\n"
+msgstr "ukuran tipe bilangan bulat %u IEEE tidak didukung\n"
+
+#: ieee.c:5233
+#, c-format
+msgid "IEEE unsupported float type size %u\n"
+msgstr "ukuran tipe bilangan pecahan %u IEEE tidak didukung\n"
+
+#: ieee.c:5267
+#, c-format
+msgid "IEEE unsupported complex type size %u\n"
+msgstr "ukuran tipe kompleks %u IEEE tidak didukung\n"
+
+#: mclex.c:241
+msgid "Duplicate symbol entered into keyword list."
+msgstr "Duplikasi simbol dimasukan dalam daftar keyword."
+
+#: nlmconv.c:273 srconv.c:1822
+msgid "input and output files must be different"
+msgstr "berkas masukan dan keluaran harus berbeda"
+
+#: nlmconv.c:320
+msgid "input file named both on command line and with INPUT"
+msgstr "nama kedua berkas masukan di baris perintah dan dengan INPUT"
+
+#: nlmconv.c:329
+msgid "no input file"
+msgstr "tidak ada berkas masukan"
+
+#: nlmconv.c:359
+msgid "no name for output file"
+msgstr "tidak ada nama untuk berkas keluaran"
+
+#: nlmconv.c:373
+msgid "warning: input and output formats are not compatible"
+msgstr "peringatan: format masukan dan keluaran tidak kompatibel"
+
+#: nlmconv.c:403
+msgid "make .bss section"
+msgstr "buat daerah .bss"
+
+#: nlmconv.c:413
+msgid "make .nlmsections section"
+msgstr "buat daerah .nlmsections"
+
+#: nlmconv.c:441
+msgid "set .bss vma"
+msgstr "set vma .bss"
+
+#: nlmconv.c:448
+msgid "set .data size"
+msgstr "set ukuran .data"
+
+#: nlmconv.c:628
+#, c-format
+msgid "warning: symbol %s imported but not in import list"
+msgstr "peringatan: simbol %s diimpor tetapi tidak dalam daftar impor"
+
+#: nlmconv.c:648
+msgid "set start address"
+msgstr "set awal alamat"
+
+#: nlmconv.c:697
+#, c-format
+msgid "warning: START procedure %s not defined"
+msgstr "peringatan: AWAL prosedur %s tidak terdefinisi"
+
+#: nlmconv.c:699
+#, c-format
+msgid "warning: EXIT procedure %s not defined"
+msgstr "peringatan: KELUAR prosedur %s tidak terdefinisi"
+
+#: nlmconv.c:701
+#, c-format
+msgid "warning: CHECK procedure %s not defined"
+msgstr "peringatan: PERIKSA prosedur %s tidak terdefinisi"
+
+#: nlmconv.c:721 nlmconv.c:907
+msgid "custom section"
+msgstr "daerah kustom"
+
+#: nlmconv.c:741 nlmconv.c:936
+msgid "help section"
+msgstr "daerah bantuan"
+
+#: nlmconv.c:763 nlmconv.c:954
+msgid "message section"
+msgstr "daerah pesan"
+
+#: nlmconv.c:778 nlmconv.c:987
+msgid "module section"
+msgstr "daerah modul"
+
+#: nlmconv.c:797 nlmconv.c:1003
+msgid "rpc section"
+msgstr "daerah rpc"
+
+#. There is no place to record this information.
+#: nlmconv.c:833
+#, c-format
+msgid "%s: warning: shared libraries can not have uninitialized data"
+msgstr "%s: peringatan: perpustakaan terbagi tidak dapat memiliki data tidak terinisialisasi"
+
+#: nlmconv.c:854 nlmconv.c:1022
+msgid "shared section"
+msgstr "daerah terbagi"
+
+#: nlmconv.c:862
+msgid "warning: No version number given"
+msgstr "peringatan: Tidak ada nomor versi yang diberikan"
+
+#: nlmconv.c:902 nlmconv.c:931 nlmconv.c:949 nlmconv.c:998 nlmconv.c:1017
+#, c-format
+msgid "%s: read: %s"
+msgstr "%s: baca: %s"
+
+#: nlmconv.c:924
+msgid "warning: FULLMAP is not supported; try ld -M"
+msgstr "peringatan: FULLMAP tidak didukung: coba ld -M"
+
+#: nlmconv.c:1100
+#, c-format
+msgid "Usage: %s [option(s)] [in-file [out-file]]\n"
+msgstr "Penggunaan: %s [opsi] [berkas-masuk [berkas-keluar]]\n"
+
+#: nlmconv.c:1101
+#, c-format
+msgid " Convert an object file into a NetWare Loadable Module\n"
+msgstr " Ubah sebuah berkas objek ke sebuah NetWare Loadable Modul\n"
+
+#: nlmconv.c:1102
+#, c-format
+msgid ""
+" The options are:\n"
+"  -I --input-target=<bfdname>   Set the input binary file format\n"
+"  -O --output-target=<bfdname>  Set the output binary file format\n"
+"  -T --header-file=<file>       Read <file> for NLM header information\n"
+"  -l --linker=<linker>          Use <linker> for any linking\n"
+"  -d --debug                    Display on stderr the linker command line\n"
+"  @<file>                       Read options from <file>.\n"
+"  -h --help                     Display this information\n"
+"  -v --version                  Display the program's version\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -I --input-target=<bfdname>   Set format berkas masukan binari\n"
+"  -O --output-target=<bfdname>  Set format berkas keluaran binari\n"
+"  -T --header-file=<file>       Baca <berkas> untuk informasi header NLM\n"
+"  -l --linker=<linker>          Gunakan <linker> untuk linking apapun\n"
+"  -d --debug                    Tampilkan di stderr baris perintah linker\n"
+"  @<berkas>                     Baca opsi dari <berkas>.\n"
+"  -h --help                     Tampilkan informasi ini\n"
+"  -v --version                  Tampilkan versi aplikasi\n"
+
+#: nlmconv.c:1143
+#, c-format
+msgid "support not compiled in for %s"
+msgstr "dukungan tidak dikompile untuk %s"
+
+#: nlmconv.c:1180
+msgid "make section"
+msgstr "buat daerah"
+
+#: nlmconv.c:1194
+msgid "set section size"
+msgstr "set ukuran daerah"
+
+#: nlmconv.c:1200
+msgid "set section alignment"
+msgstr "set alignmen daerah"
+
+#: nlmconv.c:1204
+msgid "set section flags"
+msgstr "set tanda daerah"
+
+#: nlmconv.c:1215
+msgid "set .nlmsections size"
+msgstr "set ukuran .nlmsections"
+
+#: nlmconv.c:1296 nlmconv.c:1304 nlmconv.c:1313 nlmconv.c:1318
+msgid "set .nlmsection contents"
+msgstr "set isi .nlmsection"
+
+#: nlmconv.c:1795
+msgid "stub section sizes"
+msgstr "ukuran stub daerah"
+
+#: nlmconv.c:1842
+msgid "writing stub"
+msgstr "menulis stub"
+
+#: nlmconv.c:1926
+#, c-format
+msgid "unresolved PC relative reloc against %s"
+msgstr "tidak terselesaikan PC relatif relokasi terhadap %s"
+
+#: nlmconv.c:1990
+#, c-format
+msgid "overflow when adjusting relocation against %s"
+msgstr "overflow ketika menyesuaikan relokasi terhadap %s"
+
+#: nlmconv.c:2117
+#, c-format
+msgid "%s: execution of %s failed: "
+msgstr "%s: eksekusi dari %s gagal: "
+
+#: nlmconv.c:2132
+#, c-format
+msgid "Execution of %s failed"
+msgstr "Eksekusi dari %s gagal"
+
+#: nm.c:217 size.c:78 strings.c:647
+#, c-format
+msgid "Usage: %s [option(s)] [file(s)]\n"
+msgstr "Penggunaan: %s [opsi] [berkas]\n"
+
+#: nm.c:218
+#, c-format
+msgid " List symbols in [file(s)] (a.out by default).\n"
+msgstr " Daftar simbol dalam [berkas] (a.out secara baku).\n"
+
+#: nm.c:219
+#, c-format
+msgid ""
+" The options are:\n"
+"  -a, --debug-syms       Display debugger-only symbols\n"
+"  -A, --print-file-name  Print name of the input file before every symbol\n"
+"  -B                     Same as --format=bsd\n"
+"  -C, --demangle[=STYLE] Decode low-level symbol names into user-level names\n"
+"                          The STYLE, if specified, can be `auto' (the default),\n"
+"                          `gnu', `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                          or `gnat'\n"
+"      --no-demangle      Do not demangle low-level symbol names\n"
+"  -D, --dynamic          Display dynamic symbols instead of normal symbols\n"
+"      --defined-only     Display only defined symbols\n"
+"  -e                     (ignored)\n"
+"  -f, --format=FORMAT    Use the output format FORMAT.  FORMAT can be `bsd',\n"
+"                           `sysv' or `posix'.  The default is `bsd'\n"
+"  -g, --extern-only      Display only external symbols\n"
+"  -l, --line-numbers     Use debugging information to find a filename and\n"
+"                           line number for each symbol\n"
+"  -n, --numeric-sort     Sort symbols numerically by address\n"
+"  -o                     Same as -A\n"
+"  -p, --no-sort          Do not sort the symbols\n"
+"  -P, --portability      Same as --format=posix\n"
+"  -r, --reverse-sort     Reverse the sense of the sort\n"
+"  -S, --print-size       Print size of defined symbols\n"
+"  -s, --print-armap      Include index for symbols from archive members\n"
+"      --size-sort        Sort symbols by size\n"
+"      --special-syms     Include special symbols in the output\n"
+"      --synthetic        Display synthetic symbols as well\n"
+"  -t, --radix=RADIX      Use RADIX for printing symbol values\n"
+"      --target=BFDNAME   Specify the target object format as BFDNAME\n"
+"  -u, --undefined-only   Display only undefined symbols\n"
+"  -X 32_64               (ignored)\n"
+"  @FILE                  Read options from FILE\n"
+"  -h, --help             Display this information\n"
+"  -V, --version          Display this program's version number\n"
+"\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -a, --debug-syms       Tampilkan debugger-only simbol\n"
+"  -A, --print-file-name  Tampilkan nama dari berkas masukan sebelum setiap simbol\n"
+"  -B                     Sama seperti --format=bsd\n"
+"  -C, --demangle[=STYLE] Dekode tingkat-bawah nama simbol dalam nama tingkat-pengguna\n"
+"                         STYLE, jika dispesifikasikan, dapat berupa `auto'(baku),\n"
+"                         `gnu', `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                         atau `gnat'\n"
+"      --no-demangle      Jangan demangle tingkat-bawah nama simbol\n"
+"  -D, --dynamic          Tampilkan simbol dinamis daripada normal simbol\n"
+"      --defined-only     Tampilkan hanya simbol terdefinisi\n"
+"  -e                     (diabaikan)\n"
+"  -f, --format=FORMAT    Gunakan format keluaran FORMAT. FORMAT dapat berupa `bsd',\n"
+"                         `sysv' atau `posix'. Baku adalah `bsd'\n"
+"  -g, --extern-only      Tampilkan hanya simbol eksternal\n"
+"  -l, --line-numbers     Gunakan informasi debug untuk mencari sebuah nama berkas dan\n"
+"                         nomor baris untuk setiap simbol\n"
+"  -n, --numeric-sort     Urutkan simbol secara numerik dengan alamat\n"
+"  -o                     Sama seperti -A\n"
+"  -p, --no-sort          Jangan urutkan simbol\n"
+"  -P, --portability      Sama seperti --format=posix\n"
+"  -r, --reverse-sort     Balik sense dari sort\n"
+"  -S, --print-size       Tampilkan ukuran dari simbol yang terdefinisi\n"
+"  -s, --print-armap      Masukan indeks untuk simbol dari anggota archive\n"
+"      --size-sort        Urutkan simbol berdasarkan ukuran\n"
+"      --special-syms     Masukan simbol berdasarkan ukuran\n"
+"      --synthetic        Tampilkan synthetic simbol juga\n"
+"  -t, --radix=RADIX      Gunakan RADIX untuk menampilkan nilai simbol\n"
+"      --target=BFDNAME   Spesifikasikan format objek target sebagai BFDNAME\n"
+"  -u, --undefined-only   Tampilkan hanya simbol tidak terdefinisi\n"
+"  -X 32_64               (diabaikan)\n"
+"  @BERKAS                Baca opsi dari BERKAS\n"
+"  -h, --help             Tampilkan informasi ini\n"
+"  -V, --version          Tampilkan nomor versi aplikasi ini\n"
+"\n"
+
+#: nm.c:284
+#, c-format
+msgid "%s: invalid radix"
+msgstr "%s: radix tidak valid"
+
+#: nm.c:308
+#, c-format
+msgid "%s: invalid output format"
+msgstr "%s: format keluaran tidak valid"
+
+#: nm.c:329 readelf.c:6971 readelf.c:7009
+#, c-format
+msgid "<processor specific>: %d"
+msgstr "<prosesor spesifik>: %d"
+
+#: nm.c:331 readelf.c:6974 readelf.c:7021
+#, c-format
+msgid "<OS specific>: %d"
+msgstr "<OS spesifik>: %d"
+
+#: nm.c:333 readelf.c:6976 readelf.c:7024
+#, c-format
+msgid "<unknown>: %d"
+msgstr "<tidak diketahui>: %d"
+
+#: nm.c:373
+#, c-format
+msgid ""
+"\n"
+"Archive index:\n"
+msgstr ""
+"\n"
+"Indeks archive:\n"
+
+#: nm.c:1233
+#, c-format
+msgid ""
+"\n"
+"\n"
+"Undefined symbols from %s:\n"
+"\n"
+msgstr ""
+"\n"
+"\n"
+"Simbol tidak terdefinisi dari %s:\n"
+"\n"
+
+#: nm.c:1235
+#, c-format
+msgid ""
+"\n"
+"\n"
+"Symbols from %s:\n"
+"\n"
+msgstr ""
+"\n"
+"\n"
+"Simbol dari %s:\n"
+"\n"
+
+#: nm.c:1237 nm.c:1288
+#, c-format
+msgid ""
+"Name                  Value   Class        Type         Size     Line  Section\n"
+"\n"
+msgstr ""
+"Nama                  Nilai   Kelas         Tipe        Ukuran   Baris  Daerah\n"
+"\n"
+
+#: nm.c:1240 nm.c:1291
+#, c-format
+msgid ""
+"Name                  Value           Class        Type         Size             Line  Section\n"
+"\n"
+msgstr ""
+"Nama                  Nilai           Kelas         Tipe        Ukuran           Baris Daerah\n"
+"\n"
+
+#: nm.c:1284
+#, c-format
+msgid ""
+"\n"
+"\n"
+"Undefined symbols from %s[%s]:\n"
+"\n"
+msgstr ""
+"\n"
+"\n"
+"Simbol tidak terdefinisi dari %s[%s]:\n"
+"\n"
+
+#: nm.c:1286
+#, c-format
+msgid ""
+"\n"
+"\n"
+"Symbols from %s[%s]:\n"
+"\n"
+msgstr ""
+"\n"
+"\n"
+"Simbol dari %s[%s]:\n"
+"\n"
+
+#: nm.c:1378
+#, c-format
+msgid "Print width has not been initialized (%d)"
+msgstr "Tampilkan lebar yang belum terinisialisasi (%d)"
+
+#: nm.c:1603
+msgid "Only -X 32_64 is supported"
+msgstr "Hanya -X 32_64 yang didukung"
+
+#: nm.c:1623
+msgid "Using the --size-sort and --undefined-only options together"
+msgstr "Gunakan --size-sort dan --undefined-only opsi secara bersamaan"
+
+#: nm.c:1624
+msgid "will produce no output, since undefined symbols have no size."
+msgstr "tidak akan menghasilkan keluaran, karena simbol tidak terdefinisi tidak memiliki ukuran."
+
+#: nm.c:1652
+#, c-format
+msgid "data size %ld"
+msgstr "ukuran data %ld"
+
+#: objcopy.c:424 srconv.c:1730
+#, c-format
+msgid "Usage: %s [option(s)] in-file [out-file]\n"
+msgstr "Penggunaan: %s [opsi] berkas-masukan [berkas-keluaran]\n"
+
+#: objcopy.c:425
+#, c-format
+msgid " Copies a binary file, possibly transforming it in the process\n"
+msgstr " Menyalin sebuah berkas binari, kemungkinan mengubahnya dalam proses ini\n"
+
+#: objcopy.c:426 objcopy.c:522
+#, c-format
+msgid " The options are:\n"
+msgstr " Opsi adalah:\n"
+
+#: objcopy.c:427
+#, c-format
+msgid ""
+"  -I --input-target <bfdname>      Assume input file is in format <bfdname>\n"
+"  -O --output-target <bfdname>     Create an output file in format <bfdname>\n"
+"  -B --binary-architecture <arch>  Set arch of output file, when input is binary\n"
+"  -F --target <bfdname>            Set both input and output format to <bfdname>\n"
+"     --debugging                   Convert debugging information, if possible\n"
+"  -p --preserve-dates              Copy modified/access timestamps to the output\n"
+"  -j --only-section <name>         Only copy section <name> into the output\n"
+"     --add-gnu-debuglink=<file>    Add section .gnu_debuglink linking to <file>\n"
+"  -R --remove-section <name>       Remove section <name> from the output\n"
+"  -S --strip-all                   Remove all symbol and relocation information\n"
+"  -g --strip-debug                 Remove all debugging symbols & sections\n"
+"     --strip-unneeded              Remove all symbols not needed by relocations\n"
+"  -N --strip-symbol <name>         Do not copy symbol <name>\n"
+"     --strip-unneeded-symbol <name>\n"
+"                                   Do not copy symbol <name> unless needed by\n"
+"                                     relocations\n"
+"     --only-keep-debug             Strip everything but the debug information\n"
+"     --extract-symbol              Remove section contents but keep symbols\n"
+"  -K --keep-symbol <name>          Do not strip symbol <name>\n"
+"     --keep-file-symbols           Do not strip file symbol(s)\n"
+"     --localize-hidden             Turn all ELF hidden symbols into locals\n"
+"  -L --localize-symbol <name>      Force symbol <name> to be marked as a local\n"
+"     --globalize-symbol <name>     Force symbol <name> to be marked as a global\n"
+"  -G --keep-global-symbol <name>   Localize all symbols except <name>\n"
+"  -W --weaken-symbol <name>        Force symbol <name> to be marked as a weak\n"
+"     --weaken                      Force all global symbols to be marked as weak\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 <number>         Only copy one out of every <number> bytes\n"
+"  -b --byte <num>                  Select byte <num> in every interleaved block\n"
+"     --gap-fill <val>              Fill gaps between sections with <val>\n"
+"     --pad-to <addr>               Pad the last section up to address <addr>\n"
+"     --set-start <addr>            Set the start address to <addr>\n"
+"    {--change-start|--adjust-start} <incr>\n"
+"                                   Add <incr> to the start address\n"
+"    {--change-addresses|--adjust-vma} <incr>\n"
+"                                   Add <incr> to LMA, VMA and start addresses\n"
+"    {--change-section-address|--adjust-section-vma} <name>{=|+|-}<val>\n"
+"                                   Change LMA and VMA of section <name> by <val>\n"
+"     --change-section-lma <name>{=|+|-}<val>\n"
+"                                   Change the LMA of section <name> by <val>\n"
+"     --change-section-vma <name>{=|+|-}<val>\n"
+"                                   Change the VMA of section <name> by <val>\n"
+"    {--[no-]change-warnings|--[no-]adjust-warnings}\n"
+"                                   Warn if a named section does not exist\n"
+"     --set-section-flags <name>=<flags>\n"
+"                                   Set section <name>'s properties to <flags>\n"
+"     --add-section <name>=<file>   Add section <name> found in <file> to output\n"
+"     --rename-section <old>=<new>[,<flags>] Rename section <old> to <new>\n"
+"     --change-leading-char         Force output format's leading character style\n"
+"     --remove-leading-char         Remove leading character from global symbols\n"
+"     --reverse-bytes=<num>         Reverse <num> bytes at a time, in output sections with content\n"
+"     --redefine-sym <old>=<new>    Redefine symbol name <old> to <new>\n"
+"     --redefine-syms <file>        --redefine-sym for all symbol pairs \n"
+"                                     listed in <file>\n"
+"     --srec-len <number>           Restrict the length of generated Srecords\n"
+"     --srec-forceS3                Restrict the type of generated Srecords to S3\n"
+"     --strip-symbols <file>        -N for all symbols listed in <file>\n"
+"     --strip-unneeded-symbols <file>\n"
+"                                   --strip-unneeded-symbol for all symbols listed\n"
+"                                     in <file>\n"
+"     --keep-symbols <file>         -K for all symbols listed in <file>\n"
+"     --localize-symbols <file>     -L for all symbols listed in <file>\n"
+"     --globalize-symbols <file>    --globalize-symbol for all in <file>\n"
+"     --keep-global-symbols <file>  -G for all symbols listed in <file>\n"
+"     --weaken-symbols <file>       -W for all symbols listed in <file>\n"
+"     --alt-machine-code <index>    Use the target's <index>'th alternative machine\n"
+"     --writable-text               Mark the output text as writable\n"
+"     --readonly-text               Make the output text write protected\n"
+"     --pure                        Mark the output file as demand paged\n"
+"     --impure                      Mark the output file as impure\n"
+"     --prefix-symbols <prefix>     Add <prefix> to start of every symbol name\n"
+"     --prefix-sections <prefix>    Add <prefix> to start of every section name\n"
+"     --prefix-alloc-sections <prefix>\n"
+"                                   Add <prefix> to start of every allocatable\n"
+"                                     section name\n"
+"  -v --verbose                     List all object files modified\n"
+"  @<file>                          Read options from <file>\n"
+"  -V --version                     Display this program's version number\n"
+"  -h --help                        Display this output\n"
+"     --info                        List object formats & architectures supported\n"
+msgstr ""
+"  -I --input-target <bfdname>      Asumsikan berkas masukan berada dalam format <bfdname>\n"
+"  -O --output-target <bfdname>     Buat sebuah berkas keluaran dalam format <bfdname>\n"
+"  -B --binary-architecture <arch>  Set arsitektur dari berkas keluaran, ketika masukan adalah binari\n"
+"  -F --target <bfdname>            Set kedua format masukan dan keluaran ke <bfdname>\n"
+"     --debugging                   Ubah informasi debug, jika memungkinkan\n"
+"  -p --preserve-dates              Salin modifikasi/akses penanda-waktu ke keluaran\n"
+"  -j --only-section <name>         Salin hanya bagian <nama> kedalam keluaran\n"
+"     --add-gnu-debuglink=<file>    Tambahkan bagian .gnu_debuglink linking ke <berkas>\n"
+"  -R --remove-section <nama>       Hapus bagian <nama> dari keluaran\n"
+"  -S --strip-all                   Hapus seluruh informasi simbol dan relokasi\n"
+"  -g --strip-debug                 Hapus seluruh debug simbol dan bagian\n"
+"     --strip-unneeded              Hapus seluruh simbol tidak dibutuhkan oleh relokasi\n"
+"  -N --strip-simbol <nama>         Jangan menyalin simbol <nama>\n"
+"     --strip-unneeded-symbol <nama>\n"
+"                                   Jangan menyalin simbol <nama> kecuali dibutuhkan oleh\n"
+"                                   relokasi\n"
+"     --only-keep-debug             Strip seluruhnya kecuali informasi debug\n"
+"     --extract-symbol              Hapus isi bagian tetapi simpan simbol\n"
+"  -K --keep-symbol <nama>          Jangan strip simbol <nama>\n"
+"     --keep-file-symbols           Jangan strip file simbol\n"
+"     --localize-hidden             Ubah seluruh ELF simbol tersembunyi ke lokal\n"
+"  -L --localize-symbol <nama>      Paksa simbol <nama> untuk ditandai sebagai lokal\n"
+"     --globalize-symbol <nama>     Paksa simbol <nama> untuk ditandai sebagai global\n"
+"  -G --keep-global-symbol <nama>   Lokalisasi seluruh simbol kecuali <nama>\n"
+"  -W --weaken-symbol <nama>        Paksa simbol <nama> untuk ditandai sebagai lemah\n"
+"     --weaken                      Paksa seluruh simbol global untuk ditandai sebagai lemah\n"
+"  -w --wildcard                    Ijinkan wildcard dalam perbandingan simbol\n"
+"  -x --discard-all                 Hapus seluruh simbol bukan-global\n"
+"  -i --interleave <nomor>          Salin hanya satu dari setiap <nomor> bytes\n"
+"  -b --byte <nomor>                Pilih byte <nomor> dalam setiap interleaved blok\n"
+"     --gap-fill <nilai>            Isi gap diantara bagian dengan <nilai>\n"
+"     --pad-to <alamat>             Pad bagian terakhir sampai ke alamat <addr>\n"
+"     --set-start <alamat>          Set awal dari alamat ke <alamat>\n"
+"    {--change-start|--adjust-start} <incr>\n"
+"                                   Tambahkan <incr> ke awal dari alamat\n"
+"    {--change-addresses|--adjust-vma} <incr>\n"
+"                                   Tambahkan <incr> ke LMA, VMA, dan awal alamat\n"
+"    {--change-section-address|--adjust-section-vma} <nama>{=|+|-}<nilai>\n"
+"                                   Ubah LMA dan VMA dari bagian <nama> dengan <nilai>\n"
+"     --change-section-lma <nama>{=|+|-}<nilai>\n"
+"                                   Ubah LMA bagian <nama> dengan <nilai>\n"
+"     --change-section-vma <nama>{=|+|-}<nilai>\n"
+"                                   Ubah VMA bagian <nama> dengan <nilai>\n"
+"    {--[no-]change-warnings|--[no-]adjust-warnings}\n"
+"                                   Peringatkan jika sebuah bagian bernama tidak ada\n"
+"     --set-section-flags <nama>=<flags>\n"
+"                                   Set bagian <nama> properti ke <tanda>\n"
+"     --add-section <nama>=<file>   Tambahkan bagian <nama> ditemukan dalam <berkas> ke keluaran\n"
+"     --rename-section <old>=<new>[,<flags>] Ubah nama bagian <lama> ke <baru>\n"
+"     --change-leading-char         Paksa format keluaran gaya awal karakter\n"
+"     --remove-leading-char         Hapus awal karakter dari global simbol\n"
+"     --reverse-bytes=<num>         Balik <nomor> bytes dalam satu waktu, dalam bagian keluara dengan isi\n"
+"     --redefine-sym <old>=<new>    Redefinisikan nama simbol <lama> ke <baru>\n"
+"     --redefine-syms <file>        --redefine-sym untuk seluruh pasangan simbol\n"
+"                                   terdaftar dalam <berkas>\n"
+"     --srec-len <nomor>            Batasi panjang dari Srecords yang dihasilkan\n"
+"     --srec-forceS3                Batasi tipe dari Srecord yang dihasilkan ke S3\n"
+"     --strip-symbols <file>        -N untuk seluruh simbol terdaftar dalam <berkas>\n"
+"     --strip-unneeded-symbols <file>\n"
+"                                   --strip-unneeded-symbol untuk seluruh simbol terdaftar\n"
+"                                   dalam <berkas>\n"
+"     --keep-symbols <file>         -K untuk seluruh simbol terdaftar dalam <berkas>\n"
+"     --localize-symbols <berkas>   -L untuk seluruh simbol terdaftar dalam <berkas>\n"
+"     --globalize-symbols <berkas>  --globalize-symbol untuk seluruh dalam <berkas>\n"
+"     --keep-global-symbols <berkas>-G untuk seluruh simbol terdaftar dalam <berkas>\n"
+"     --weaken-symbols <berkas>     -W untuk seluruh simbol terdaftar dalam <berkas>\n"
+"     --alt-machine-code <indeks>   Gunakan arsitektur target <indeks> mesin\n"
+"     --writeable-text              Tandai teks keluaran sebagai dapat-ditulis\n"
+"     --readonly-text               Tandai teks keluaran sebagai tulis-terproteksi\n"
+"     --pure                        Tandai berkas keluaran sebagai demand paged\n"
+"     --impure                      Tandai berkas keluaran sebagai impure\n"
+"     --prefix-symbols <prefix>     Tambahkan <awalan> ke awal dari setiap simbol nama\n"
+"     --prefix-sections <prefix>    Tambahkan <awalan> ke awal dari setiap nama bagian\n"
+"     --prefix-alloc-section <prefix>\n"
+"                                   Tambahkan <awalan> ke awal dari setiap alokasi\n"
+"                                   nama bagian\n"
+"  -v --verbose                     Daftar seluruh berkas objek termodifikasi\n"
+"  @<berkas>                        Baca opsi dari <berkas>\n"
+"  -V --version                     Tampilkan nomor versi aplikasi ini\n"
+"  -h --help                        Tampilkan keluaran ini\n"
+"     --info                        Daftar objek format dan arsitektur yang didukung\n"
+
+#: objcopy.c:520
+#, c-format
+msgid "Usage: %s <option(s)> in-file(s)\n"
+msgstr "Penggunaan: %s <opsi> berkas-masukan\n"
+
+#: objcopy.c:521
+#, c-format
+msgid " Removes symbols and sections from files\n"
+msgstr " Hapus simbol dan daerah dari berkas\n"
+
+#: objcopy.c:523
+#, c-format
+msgid ""
+"  -I --input-target=<bfdname>      Assume input file is in format <bfdname>\n"
+"  -O --output-target=<bfdname>     Create an output file in format <bfdname>\n"
+"  -F --target=<bfdname>            Set both input and output format to <bfdname>\n"
+"  -p --preserve-dates              Copy modified/access timestamps to the output\n"
+"  -R --remove-section=<name>       Remove section <name> from the output\n"
+"  -s --strip-all                   Remove all symbol and relocation information\n"
+"  -g -S -d --strip-debug           Remove all debugging symbols & sections\n"
+"     --strip-unneeded              Remove all symbols not needed by relocations\n"
+"     --only-keep-debug             Strip everything but the debug information\n"
+"  -N --strip-symbol=<name>         Do not copy symbol <name>\n"
+"  -K --keep-symbol=<name>          Do not strip symbol <name>\n"
+"     --keep-file-symbols           Do not strip file symbol(s)\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"
+"  -V --version                     Display this program's version number\n"
+"  -h --help                        Display this output\n"
+"     --info                        List object formats & architectures supported\n"
+"  -o <file>                        Place stripped output into <file>\n"
+msgstr ""
+"  -I --input-target=<bfdname>      Asumsikan berkas masukan adalah dalam format <bfdname>\n"
+"  -O --output-target=<bfdname>     Buah sebuah berkas keluaran dalam format <bfdname>\n"
+"  -F --target=<bfdname>            Set kedua format masukan dan keluaran ke <bfdname>\n"
+"  -p --preserve-dates              Salin penanda-waktu modifikasi/akses ke keluaran\n"
+"  -R --remove-section=<nama>       Hapus bagian <nama> dari keluaran\n"
+"  -s --strip-all                   Hapus seluruh informasi simbol dan relokasi\n"
+"  -g -S -d --strip-debug           Hapus seluruh debug simbol dan section\n"
+"     --strip-unneeded              Hapus seluruh simbol tidak dibutuhkan oleh relokasi\n"
+"     --only-keep-debug             Strip seluruh tetapi simpan informasi debug\n"
+"  -N --strip-symbol=<nama>         Jangan salin simbol <nama>\n"
+"  -K --keep-symbol=<nama>          Jangan strip simbol <nama>\n"
+"     --keep-file-symbols           Jangan strip berkas simbol\n"
+"  -w --wildcard                    Ijinkan wildcard dalam perbandingan simbol\n"
+"  -x --discard-all                 Hapus seluruh simbol bukan-global\n"
+"  -X --discard-locals              Hapus simbol apapun yang dihasilkan kompiler\n"
+"  -v --verbose                     Daftar seluruh berkas objek yang termodifikasi\n"
+"  -V --version                     Tampilkan nomor versi aplikasi ini\n"
+"  -h --help                        Tampilkan bantuan ini\n"
+"     --info                        Daftar format dan arsitektur objek yang didukung\n"
+"  -o <berkas>                      Tempatkan keluaran ter-strip kedalam <berkas>\n"
+
+#: objcopy.c:596
+#, c-format
+msgid "unrecognized section flag `%s'"
+msgstr "tanda `%s' daerah tidak dikenal"
+
+#: objcopy.c:597
+#, c-format
+msgid "supported flags: %s"
+msgstr "tanda yang didukung: %s"
+
+#: objcopy.c:698
+#, c-format
+msgid "cannot open '%s': %s"
+msgstr "tidak dapat membuka '%s': %s"
+
+#: objcopy.c:701 objcopy.c:3065
+#, c-format
+msgid "%s: fread failed"
+msgstr "%s: fread gagal"
+
+#: objcopy.c:774
+#, c-format
+msgid "%s:%d: Ignoring rubbish found on this line"
+msgstr "%s:%d: Mengabaikan sampah ditemukan di baris ini"
+
+#: objcopy.c:1069
+#, c-format
+msgid "not stripping symbol `%s' because it is named in a relocation"
+msgstr "bukan stripping simbol `%s' karena ini dinamakan dalam sebuah relokasi"
+
+#: objcopy.c:1152
+#, c-format
+msgid "%s: Multiple redefinition of symbol \"%s\""
+msgstr "%s: Multiple redefinisi dari simbol \"%s\""
+
+#: objcopy.c:1156
+#, c-format
+msgid "%s: Symbol \"%s\" is target of more than one redefinition"
+msgstr "%s: Simbol \"%s\" adalah target dari lebih satu redefinisi"
+
+#: objcopy.c:1184
+#, c-format
+msgid "couldn't open symbol redefinition file %s (error: %s)"
+msgstr "tidak dapat membuka berkas redefinisi %s (error: %s)"
+
+#: objcopy.c:1262
+#, c-format
+msgid "%s:%d: garbage found at end of line"
+msgstr "%s:%d: sampah ditemukan diakhir dari baris"
+
+#: objcopy.c:1265
+#, c-format
+msgid "%s:%d: missing new symbol name"
+msgstr "%s:%d: hilang nama simbol baru"
+
+#: objcopy.c:1275
+#, c-format
+msgid "%s:%d: premature end of file"
+msgstr "%s:%d: prematur akhir dari berkas"
+
+#: objcopy.c:1301
+#, c-format
+msgid "stat returns negative size for `%s'"
+msgstr "stat mengembalikan ukuran negatif untuk `%s'"
+
+#: objcopy.c:1313
+#, c-format
+msgid "copy from `%s' [unknown] to `%s' [unknown]\n"
+msgstr "salin dari `%s' [tidak dikenal] ke `%s' [tidak dikenal]\n"
+
+#: objcopy.c:1369
+msgid "Unable to change endianness of input file(s)"
+msgstr "Tidak dapat mengubah endianness dari berkas masukan"
+
+#: objcopy.c:1378
+#, c-format
+msgid "copy from `%s' [%s] to `%s' [%s]\n"
+msgstr "salin dari `%s' [%s] ke `%s' [%s]\n"
+
+#: objcopy.c:1421
+#, c-format
+msgid "Unable to recognise the format of the input file `%s'"
+msgstr "Tidak dapat mengenali format dari berkas masukan `%s'"
+
+#: objcopy.c:1424
+#, c-format
+msgid "Warning: Output file cannot represent architecture `%s'"
+msgstr "Peringatan: Berkas keluaran tidak dapat merepresentasikan arsitektur `%s'"
+
+#: objcopy.c:1489
+#, c-format
+msgid "can't add section '%s'"
+msgstr "tidak dapat menambahkan daerah  '%s'"
+
+#: objcopy.c:1498
+#, c-format
+msgid "can't create section `%s'"
+msgstr "tidak dapat membuat daerah `%s'"
+
+#: objcopy.c:1544
+#, c-format
+msgid "cannot create debug link section `%s'"
+msgstr "tidak dapat membuat debug link daerah `%s'"
+
+#: objcopy.c:1637
+msgid "Can't fill gap after section"
+msgstr "Tidak dapat mengisi gap setelah daerah"
+
+#: objcopy.c:1661
+msgid "can't add padding"
+msgstr "tidak dapat menambahkan padding"
+
+#: objcopy.c:1752
+#, c-format
+msgid "cannot fill debug link section `%s'"
+msgstr "tidak dapat mengisi debug link section `%s'"
+
+#: objcopy.c:1815
+msgid "error copying private BFD data"
+msgstr "error menyalin private BFD data"
+
+#: objcopy.c:1826
+#, c-format
+msgid "this target does not support %lu alternative machine codes"
+msgstr "target ini tidak mendukung %lu alternatif kode mesin"
+
+#: objcopy.c:1830
+msgid "treating that number as an absolute e_machine value instead"
+msgstr "membuat nomor itu sebagai sebuah nilai e_machine absolut"
+
+#: objcopy.c:1834
+msgid "ignoring the alternative value"
+msgstr "mengabaikan nilai alternatif"
+
+#: objcopy.c:1864 objcopy.c:1895
+#, c-format
+msgid "cannot create tempdir for archive copying (error: %s)"
+msgstr "tidak dapat membuat tempdir untuk archive menyalin (error: %s)"
+
+#: objcopy.c:1957
+msgid "Unable to recognise the format of file"
+msgstr "Tidak dapat mengenali format dari berkas"
+
+#: objcopy.c:2147
+#, c-format
+msgid "Multiple renames of section %s"
+msgstr "Multiple pergantian nama dari daerah %s"
+
+#: objcopy.c:2198
+msgid "error in private h\teader data"
+msgstr "error dalam private header data"
+
+#: objcopy.c:2276
+msgid "failed to create output section"
+msgstr "gagal untuk membuat daerah keluaran"
+
+#: objcopy.c:2290
+msgid "failed to set size"
+msgstr "gagal untuk menset ukuran"
+
+#: objcopy.c:2304
+msgid "failed to set vma"
+msgstr "gagal untuk menset vma"
+
+#: objcopy.c:2329
+msgid "failed to set alignment"
+msgstr "gagal untuk menset alignmen"
+
+#: objcopy.c:2351
+msgid "failed to copy private data"
+msgstr "gagal untuk menyalin private data"
+
+#: objcopy.c:2440
+msgid "relocation count is negative"
+msgstr "jumlah relokasi negatif"
+
+#. User must pad the section up in order to do this.
+#: objcopy.c:2501
+#, c-format
+msgid "cannot reverse bytes: length of section %s must be evenly divisible by %d"
+msgstr "tidak dapat membalik bytes: panjang dari daerah %s harus secara genap terbagi oleh %d"
+
+#: objcopy.c:2685
+msgid "can't create debugging section"
+msgstr "tidak dapat membuat daerah debug"
+
+#: objcopy.c:2698
+msgid "can't set debugging section contents"
+msgstr "tidak dapat menset isi daerah debug"
+
+#: objcopy.c:2706
+#, c-format
+msgid "don't know how to write debugging information for %s"
+msgstr "tidak tahu bagaimana menulis informasi debug untuk %s"
+
+#: objcopy.c:2848
+msgid "could not create temporary file to hold stripped copy"
+msgstr "tidak dapat membuat berkas sementara untuk menjaga salinan terstrip"
+
+#: objcopy.c:2897
+msgid "byte number must be non-negative"
+msgstr "nomor byte harus tidak negatif"
+
+#: objcopy.c:2907
+msgid "interleave must be positive"
+msgstr "interleave harus positif"
+
+#: objcopy.c:2927 objcopy.c:2935
+#, c-format
+msgid "%s both copied and removed"
+msgstr "%s kedua disalin dan dihapus"
+
+#: objcopy.c:3036 objcopy.c:3110 objcopy.c:3210 objcopy.c:3241 objcopy.c:3265
+#: objcopy.c:3269 objcopy.c:3289
+#, c-format
+msgid "bad format for %s"
+msgstr "format buruk untuk %s"
+
+#: objcopy.c:3060
+#, c-format
+msgid "cannot open: %s: %s"
+msgstr "tidak dapat membuka %s: %s"
+
+#: objcopy.c:3179
+#, c-format
+msgid "Warning: truncating gap-fill from 0x%s to 0x%x"
+msgstr "Peringatan: memotong gap-fill dari 0x%s ke 0x%x"
+
+#: objcopy.c:3347
+msgid "unable to parse alternative machine code"
+msgstr "tidak dapat memparse kode mesin alternatif"
+
+#: objcopy.c:3392
+msgid "number of bytes to reverse must be positive and even"
+msgstr "nomor dari byte untuk membalik harus positif dan genap"
+
+#: objcopy.c:3395
+#, c-format
+msgid "Warning: ignoring previous --reverse-bytes value of %d"
+msgstr "Peringatan: mengabaikan sebelumnya --reverse-byte nilai dari %d"
+
+#: objcopy.c:3423
+msgid "byte number must be less than interleave"
+msgstr "byte number harus lebih kecil dari interleave"
+
+#: objcopy.c:3453
+#, c-format
+msgid "architecture %s unknown"
+msgstr "arsitektur %s tidak dikenal"
+
+#: objcopy.c:3457
+msgid "Warning: input target 'binary' required for binary architecture parameter."
+msgstr "Peringatan: target masukan 'binary' dibutuhkan untuk parameter arsitektur binari."
+
+#: objcopy.c:3458
+#, c-format
+msgid " Argument %s ignored"
+msgstr " Argumen %s diabaikan"
+
+#: objcopy.c:3464
+#, c-format
+msgid "warning: could not locate '%s'.  System error message: %s"
+msgstr "peringatan: tidak dapat mengalokasikan '%s'. Pesan error sistem: %s"
+
+#: objcopy.c:3475
+#, c-format
+msgid "warning: could not create temporary file whilst copying '%s', (error: %s)"
+msgstr "peringatan: tidak dapat membuat berkas sementara ketika menyalin '%s', (error: %s)"
+
+#: objcopy.c:3502 objcopy.c:3516
+#, c-format
+msgid "%s %s%c0x%s never used"
+msgstr "%s %s%c0x%s tidak pernah digunakan"
+
+#: objdump.c:182
+#, c-format
+msgid "Usage: %s <option(s)> <file(s)>\n"
+msgstr "Penggunaan: %s <opsi> <berkas>\n"
+
+#: objdump.c:183
+#, c-format
+msgid " Display information from object <file(s)>.\n"
+msgstr " Menampilkan informasi dari objek <berkas>.\n"
+
+#: objdump.c:184
+#, c-format
+msgid " At least one of the following switches must be given:\n"
+msgstr " Paling tidak satu dari switch berikut harus diberikan:\n"
+
+#: objdump.c:185
+#, c-format
+msgid ""
+"  -a, --archive-headers    Display archive header information\n"
+"  -f, --file-headers       Display the contents of the overall file header\n"
+"  -p, --private-headers    Display object format specific file header contents\n"
+"  -h, --[section-]headers  Display the contents of the section headers\n"
+"  -x, --all-headers        Display the contents of all headers\n"
+"  -d, --disassemble        Display assembler contents of executable sections\n"
+"  -D, --disassemble-all    Display assembler contents of all sections\n"
+"  -S, --source             Intermix source code with disassembly\n"
+"  -s, --full-contents      Display the full contents of all sections requested\n"
+"  -g, --debugging          Display debug information in object file\n"
+"  -e, --debugging-tags     Display debug information using ctags style\n"
+"  -G, --stabs              Display (in raw form) any STABS info in the file\n"
+"  -W, --dwarf              Display DWARF info in the file\n"
+"  -t, --syms               Display the contents of the symbol table(s)\n"
+"  -T, --dynamic-syms       Display the contents of the dynamic symbol table\n"
+"  -r, --reloc              Display the relocation entries in the file\n"
+"  -R, --dynamic-reloc      Display the dynamic relocation entries in the file\n"
+"  @<file>                  Read options from <file>\n"
+"  -v, --version            Display this program's version number\n"
+"  -i, --info               List object formats and architectures supported\n"
+"  -H, --help               Display this information\n"
+msgstr ""
+"  -a, --archive-headers    Tampilkan informasi archive header\n"
+"  -f, --file-headers       Tampilkan isi dari seluruh berkas header\n"
+"  -p, --private-headers    Tampilkan format objek spesifik isi berkas header\n"
+"  -h, --[section-]headers  Tampilkan isi dari daerah header\n"
+"  -x, --all-headers        Tampilkan isi dari seluruh header\n"
+"  -d, --disassemble        Tampilkan isi rakitan dari daerah executable\n"
+"  -D, --disassemble-all    Tampilkan isi rakitan dari seluruh bagian\n"
+"  -S, --source             Campur kode program dengan pembongkaran\n"
+"  -s, --full-contents      Tampilkan isi penuh dari seluruh bagian yang diminta\n"
+"  -g, --debugging          Tampilkan informasi debug dalam berkas objek\n"
+"  -e, --debugging-tags     Tampilkan informasi debug menggunakan gaya ctags\n"
+"  -G, --stabs              Tampilkan (dalam bentuk mentah) informasi STABS apapun dalam berkas\n"
+"  -W, --dwarf              Tampilkan informasi DWARF dalam berkas\n"
+"  -t, --syms               Tampilkan isi dari tabel simbol\n"
+"  -T, --dynamic-syms       Tampilkan isi dari tabel simbol dinamis\n"
+"  -r, --reloc              Tampilkan masukan relokasi dalam berkas\n"
+"  -R, --dynamic-reloc      Tampilkan masukan relokasi dinamis dalam berkas\n"
+"  @<berkas>                Baca opsi dari <berkas>\n"
+"  -v, --version            Tampilkan nomor versi aplikasi ini\n"
+"  -i, --info               Daftar format dan arsitektur objek yang didukung\n"
+"  -H, --help               Tampilkan informasi ini\n"
+
+#: objdump.c:210
+#, c-format
+msgid ""
+"\n"
+" The following switches are optional:\n"
+msgstr ""
+"\n"
+" Switch berikut adalah opsional:\n"
+
+#: objdump.c:211
+#, c-format
+msgid ""
+"  -b, --target=BFDNAME           Specify the target object format as BFDNAME\n"
+"  -m, --architecture=MACHINE     Specify the target architecture as MACHINE\n"
+"  -j, --section=NAME             Only display information for section NAME\n"
+"  -M, --disassembler-options=OPT Pass text OPT on to the disassembler\n"
+"  -EB --endian=big               Assume big endian format when disassembling\n"
+"  -EL --endian=little            Assume little endian format when disassembling\n"
+"      --file-start-context       Include context from start of file (with -S)\n"
+"  -I, --include=DIR              Add DIR to search list for source files\n"
+"  -l, --line-numbers             Include line numbers and filenames in output\n"
+"  -F, --file-offsets             Include file offsets when displaying information\n"
+"  -C, --demangle[=STYLE]         Decode mangled/processed symbol names\n"
+"                                  The STYLE, if specified, can be `auto', `gnu',\n"
+"                                  `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                                  or `gnat'\n"
+"  -w, --wide                     Format output for more than 80 columns\n"
+"  -z, --disassemble-zeroes       Do not skip blocks of zeroes when disassembling\n"
+"      --start-address=ADDR       Only process data whose address is >= ADDR\n"
+"      --stop-address=ADDR        Only process data whose address is <= ADDR\n"
+"      --prefix-addresses         Print complete address alongside disassembly\n"
+"      --[no-]show-raw-insn       Display hex alongside symbolic disassembly\n"
+"      --adjust-vma=OFFSET        Add OFFSET to all displayed section addresses\n"
+"      --special-syms             Include special symbols in symbol dumps\n"
+"\n"
+msgstr ""
+"  -b, --target=BFDNAME           Spesifikasikan format objek target sebagai BFDNAME\n"
+"  -m, --architecture=MACHINE     Spesifikasikan target arsitektur sebagai MESIN\n"
+"  -j, --section=NAME             Hanya tampilkan informasi untuk daerah NAMA\n"
+"  -M, --disassembler-options=OPT Lewatkan teks OPT ke pembongkar\n"
+"  -EB --endian=big               Asumsikan format big endian ketika membongkar\n"
+"  -EL --endian=little            Asumsikan format little endian ketika membongkar\n"
+"      --file-start-context       Masukan konteks dari awal dari berkas (dengan -S)\n"
+"  -I, --include=DIR              Tambahkan ke daftar pencarian DIR untuk berkas sumber\n"
+"  -l, --line-numbers             Masukan nomor baris dan nama berkas dalam keluaran\n"
+"  -F, --file-offsets             Masukan berkas ofset ketika menampilkan informasi\n"
+"  -C, --dimangle[=GAYA]          Dekode mangled/proses nama simbol\n"
+"                                 GAYA, jika dispesifikasikan, dapat berupa `auto', `gnu',\n"
+"                                 `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                                 atau `gnat'\n"
+"  -w, --wide                     Format keluaran untuk lebih dari 80 kolom\n"
+"  -z, --disassemble-zeroes       Jangan lewati blok dari nol ketika membongkar\n"
+"      --start-address=ADDR       Hanya proses data yang alamatnya >= ADDR\n"
+"      --stop-address=ADDR        Hanya proses data yang alamatnya <= ADDR\n"
+"      --prefix-addresses         Tampilkan alamat lengkap disamping pembongkaran\n"
+"      --[no-]show-raw-insn       Tampilkan heksa disamping simbol terbongkar\n"
+"      --adjust-vma=OFFSET        Tambahkan OFFSET ke seluruh alamat daerah yang ditampilkan\n"
+"      --special-syms             Masukan simbol spesial dalam simbol dumps\n"
+"\n"
+
+#: objdump.c:395
+#, c-format
+msgid "Sections:\n"
+msgstr "Daerah:\n"
+
+#: objdump.c:398 objdump.c:402
+#, c-format
+msgid "Idx Name          Size      VMA       LMA       File off  Algn"
+msgstr "Idx Nama          Ukuran    VMA       LMA       Berkas off Algn"
+
+#: objdump.c:404
+#, c-format
+msgid "Idx Name          Size      VMA               LMA               File off  Algn"
+msgstr "Idx Nama          Ukuran    VMA               LMA               Berkas off   Algn"
+
+#: objdump.c:408
+#, c-format
+msgid "  Flags"
+msgstr "  Tanda"
+
+#: objdump.c:410
+#, c-format
+msgid "  Pg"
+msgstr "  Pg"
+
+#: objdump.c:453
+#, c-format
+msgid "%s: not a dynamic object"
+msgstr "%s: bukan sebuah objek dinamis"
+
+#: objdump.c:878 objdump.c:902
+#, c-format
+msgid " (File Offset: 0x%lx)"
+msgstr " (Berkas Ofset: 0x%lx)"
+
+#: objdump.c:1818
+#, c-format
+msgid ""
+"\n"
+"Disassembly of section %s:\n"
+msgstr ""
+"\n"
+"Pembongkaran dari daerah %s:\n"
+
+#: objdump.c:1980
+#, c-format
+msgid "Can't use supplied machine %s"
+msgstr "Tidak dapat menggunakan mesin %s yang diberikan"
+
+#: objdump.c:1999
+#, c-format
+msgid "Can't disassemble for architecture %s\n"
+msgstr "Tidak dapat membongkar untuk arsitektur %s\n"
+
+#: objdump.c:2114
+#, c-format
+msgid ""
+"\n"
+"Can't get contents for section '%s'.\n"
+msgstr ""
+"\n"
+"Tidak dapat memperoleh isi dari daerah '%s'.\n"
+
+#: objdump.c:2125
+#, c-format
+msgid ""
+"\n"
+"Can't uncompress section '%s'.\n"
+msgstr ""
+"\n"
+"Tidak dapat mengekstrak daerah '%s'.\n"
+
+#: objdump.c:2305
+#, c-format
+msgid ""
+"No %s section present\n"
+"\n"
+msgstr ""
+"Tidak ada %s daerah ada\n"
+"\n"
+
+#: objdump.c:2314
+#, c-format
+msgid "Reading %s section of %s failed: %s"
+msgstr "Membaca daerah %s dari %s gagal: %s"
+
+#: objdump.c:2358
+#, c-format
+msgid ""
+"Contents of %s section:\n"
+"\n"
+msgstr ""
+"Isi dari daerah %s:\n"
+"\n"
+
+#: objdump.c:2489
+#, c-format
+msgid "architecture: %s, "
+msgstr "arsitektur: %s, "
+
+#: objdump.c:2492
+#, c-format
+msgid "flags 0x%08x:\n"
+msgstr "tanda 0x%08x:\n"
+
+#: objdump.c:2506
+#, c-format
+msgid ""
+"\n"
+"start address 0x"
+msgstr ""
+"\n"
+"awal alamat 0x"
+
+#: objdump.c:2569
+#, c-format
+msgid "Contents of section %s:"
+msgstr "Isi dari daerah %s:"
+
+#: objdump.c:2571
+#, c-format
+msgid "  (Starting at file offset: 0x%lx)"
+msgstr "  (Awal dari berkas ofset: 0x%lx)"
+
+#: objdump.c:2678
+#, c-format
+msgid "no symbols\n"
+msgstr "tidak ada simbol\n"
+
+#: objdump.c:2685
+#, c-format
+msgid "no information for symbol number %ld\n"
+msgstr "tidak ada informasi untuk nomor simbol %ld\n"
+
+#: objdump.c:2688
+#, c-format
+msgid "could not determine the type of symbol number %ld\n"
+msgstr "tidak dapat menentukan tipe dari nomor simbol %ld\n"
+
+#: objdump.c:2965
+#, c-format
+msgid ""
+"\n"
+"%s:     file format %s\n"
+msgstr ""
+"\n"
+"%s:     format berkas %s\n"
+
+#: objdump.c:3023
+#, c-format
+msgid "%s: printing debugging information failed"
+msgstr "%s: menampilkan informasi debug gagal"
+
+#: objdump.c:3123
+#, c-format
+msgid "In archive %s:\n"
+msgstr "Dalam archive %s:\n"
+
+#: objdump.c:3238
+msgid "error: the start address should be before the end address"
+msgstr "error: awal dari alamat seharusnya sebelum akhir dari alamat"
+
+#: objdump.c:3243
+msgid "error: the stop address should be after the start address"
+msgstr "error: stop alamat seharusnya setelah awal alamat"
+
+#: objdump.c:3252
+msgid "unrecognized -E option"
+msgstr "opsi -E tidak dikenal"
+
+#: objdump.c:3263
+#, c-format
+msgid "unrecognized --endian type `%s'"
+msgstr "tipe --endian `%s' tidak dikenal"
+
+#: rclex.c:197
+msgid "invalid value specified for pragma code_page.\n"
+msgstr "nilai yang dispesifikasikan untuk prama code_page tidak valid.\n"
+
+#: rdcoff.c:198
+#, c-format
+msgid "parse_coff_type: Bad type code 0x%x"
+msgstr "parse_coff_type: Tipe kode 0x%x buruk"
+
+#: rdcoff.c:406 rdcoff.c:511 rdcoff.c:699
+#, c-format
+msgid "bfd_coff_get_syment failed: %s"
+msgstr "bfd_coff_get_syment gagal: %s"
+
+#: rdcoff.c:422 rdcoff.c:719
+#, c-format
+msgid "bfd_coff_get_auxent failed: %s"
+msgstr "bfd_coff_get_auxent gagal: %s"
+
+#: rdcoff.c:786
+#, c-format
+msgid "%ld: .bf without preceding function"
+msgstr "%ld: .bf tanpa fungsi yang mengawali"
+
+#: rdcoff.c:836
+#, c-format
+msgid "%ld: unexpected .ef\n"
+msgstr "%ld: tidak diduga .ef\n"
+
+#: rddbg.c:88
+#, c-format
+msgid "%s: no recognized debugging information"
+msgstr "%s: tidak dikenali informasi debug"
+
+#: rddbg.c:402
+#, c-format
+msgid "Last stabs entries before error:\n"
+msgstr "Akhir masukan stab sebelum error:\n"
+
+#: readelf.c:312
+#, c-format
+msgid "Unable to seek to 0x%lx for %s\n"
+msgstr "Tidak dapat mencari ke 0x%lx untuk %s\n"
+
+#: readelf.c:327
+#, c-format
+msgid "Out of memory allocating 0x%lx bytes for %s\n"
+msgstr "Kehabisan alokasi dari memori 0x%lx bytes untuk %s\n"
+
+#: readelf.c:337
+#, c-format
+msgid "Unable to read in 0x%lx bytes of %s\n"
+msgstr "Tidak dapat membaca dalam 0x%lx bytes dari %s\n"
+
+#: readelf.c:642
+msgid "Don't know about relocations on this machine architecture\n"
+msgstr "Tidak tahu mengenai relokasi di arsitektur mesin ini\n"
+
+#: readelf.c:662 readelf.c:690 readelf.c:756 readelf.c:784
+msgid "relocs"
+msgstr "relokasi"
+
+#: readelf.c:673 readelf.c:701 readelf.c:767 readelf.c:795
+msgid "out of memory parsing relocs\n"
+msgstr "kehabisan memori parsing relokasi\n"
+
+#: readelf.c:901
+#, c-format
+msgid " Offset     Info    Type                Sym. Value  Symbol's Name + Addend\n"
+msgstr " Ofset      Info    Tipe                Sim. Nilai  Nama Simbol   + Addend\n"
+
+#: readelf.c:903
+#, c-format
+msgid " Offset     Info    Type            Sym.Value  Sym. Name + Addend\n"
+msgstr " Ofset      Info    Tipe            Nilai.Sim  Nama Sim  + Addend\n"
+
+#: readelf.c:908
+#, c-format
+msgid " Offset     Info    Type                Sym. Value  Symbol's Name\n"
+msgstr " Ofset      Info    Tipe                Nilai Sim   Nama Simbol\n"
+
+#: readelf.c:910
+#, c-format
+msgid " Offset     Info    Type            Sym.Value  Sym. Name\n"
+msgstr " Ofset      Info    Tipe            Nilai.Sim  Nama Sim.\n"
+
+#: readelf.c:918
+#, c-format
+msgid "    Offset             Info             Type               Symbol's Value  Symbol's Name + Addend\n"
+msgstr "    Ofset              Info             Tipe               Nilai Simbol   Nama Simbol + Addend\n"
+
+#: readelf.c:920
+#, c-format
+msgid "  Offset          Info           Type           Sym. Value    Sym. Name + Addend\n"
+msgstr "  Ofset           Info           Tipe           Nilai Sim.    Nama Sim. + Addend\n"
+
+#: readelf.c:925
+#, c-format
+msgid "    Offset             Info             Type               Symbol's Value  Symbol's Name\n"
+msgstr "    Ofset              Info             Tipe               Nilai Simbol Nama Simbol\n"
+
+#: readelf.c:927
+#, c-format
+msgid "  Offset          Info           Type           Sym. Value    Sym. Name\n"
+msgstr "  Ofset           Info           Tipe           Nilai Sim.    Nama Sim.\n"
+
+#: readelf.c:1204 readelf.c:1324 readelf.c:1332
+#, c-format
+msgid "unrecognized: %-7lx"
+msgstr "tidak dikenal: %-7lx"
+
+#: readelf.c:1229
+#, c-format
+msgid "<unknown addend: %lx>"
+msgstr "<tidak dikenal addend: %lx>"
+
+#: readelf.c:1289
+#, c-format
+msgid "<string table index: %3ld>"
+msgstr "<string tabel indeks: %3ld>"
+
+#: readelf.c:1291
+#, c-format
+msgid "<corrupt string table index: %3ld>"
+msgstr "<korup indeks tabel string: %3ld>"
+
+#: readelf.c:1657
+#, c-format
+msgid "Processor Specific: %lx"
+msgstr "Prosesor Spesifik: %lx"
+
+#: readelf.c:1681
+#, c-format
+msgid "Operating System specific: %lx"
+msgstr "Sistem Operasi spesifik: %lx"
+
+#: readelf.c:1685 readelf.c:2562
+#, c-format
+msgid "<unknown>: %lx"
+msgstr "<tidak diketahui>: %lx"
+
+#: readelf.c:1698
+msgid "NONE (None)"
+msgstr "KOSONG (Kosong)"
+
+#: readelf.c:1699
+msgid "REL (Relocatable file)"
+msgstr "REL (Berkas dapat direlokasi)"
+
+#: readelf.c:1700
+msgid "EXEC (Executable file)"
+msgstr "EXEC (Berkas dapat dieksekusi)"
+
+#: readelf.c:1701
+msgid "DYN (Shared object file)"
+msgstr "DYN (Berkas objek terbagi)"
+
+#: readelf.c:1702
+msgid "CORE (Core file)"
+msgstr "CORE (Berkas core)"
+
+#: readelf.c:1706
+#, c-format
+msgid "Processor Specific: (%x)"
+msgstr "Prosesor Spesifik: (%x)"
+
+#: readelf.c:1708
+#, c-format
+msgid "OS Specific: (%x)"
+msgstr "OS Spesifik: (%x)"
+
+#: readelf.c:1710 readelf.c:2779
+#, c-format
+msgid "<unknown>: %x"
+msgstr "<tidak dikenal>: %x"
+
+#: readelf.c:1722
+msgid "None"
+msgstr "Kosong"
+
+#: readelf.c:1829
+#, c-format
+msgid "<unknown>: 0x%x"
+msgstr "<tidak dikenal>: 0x%x"
+
+#: readelf.c:2086
+msgid "unknown"
+msgstr "tidak dikenal"
+
+#: readelf.c:2087
+msgid "unknown mac"
+msgstr "tidak dikenal mac"
+
+#: readelf.c:2399
+msgid "Standalone App"
+msgstr "Standalone App"
+
+#: readelf.c:2402 readelf.c:3221 readelf.c:3237
+#, c-format
+msgid "<unknown: %x>"
+msgstr "<tidak dikenal: %x>"
+
+#: readelf.c:2826
+#, c-format
+msgid "Usage: readelf <option(s)> elf-file(s)\n"
+msgstr "Penggunaan: readelf <opsi> berkas-elf\n"
+
+#: readelf.c:2827
+#, c-format
+msgid " Display information about the contents of ELF format files\n"
+msgstr " Menampilkan informasi mengenai isi dari berkas format ELF\n"
+
+#: readelf.c:2828
+#, c-format
+msgid ""
+" Options are:\n"
+"  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n"
+"  -h --file-header       Display the ELF file header\n"
+"  -l --program-headers   Display the program headers\n"
+"     --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"
+"  -t --section-details   Display the section details\n"
+"  -e --headers           Equivalent to: -h -l -S\n"
+"  -s --syms              Display the symbol table\n"
+"      --symbols          An alias for --syms\n"
+"  -n --notes             Display the core notes (if present)\n"
+"  -r --relocs            Display the relocations (if present)\n"
+"  -u --unwind            Display the unwind info (if present)\n"
+"  -d --dynamic           Display the dynamic section (if present)\n"
+"  -V --version-info      Display the version sections (if present)\n"
+"  -A --arch-specific     Display architecture specific information (if any).\n"
+"  -c --archive-index     Display the symbol/file index in an archive\n"
+"  -D --use-dynamic       Use the dynamic section info when displaying symbols\n"
+"  -x --hex-dump=<number|name>\n"
+"                         Dump the contents of section <number|name> as bytes\n"
+"  -p --string-dump=<number|name>\n"
+"                         Dump the contents of section <number|name> as strings\n"
+"  -w[lLiaprmfFsoR] or\n"
+"  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=str,=loc,=Ranges]\n"
+"                         Display the contents of DWARF2 debug sections\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -a --all               Sama dengan: -h -l -S -s -r -d -V -A -I\n"
+"  -h --file-header       Tampilkan ELF file header\n"
+"  -l --program-headers   Tampilkan program header\n"
+"     --segments          Sebuah alias untuk --program-headers\n"
+"  -S --section-headers   Tampilkan section headers\n"
+"     --sections          Sebuah alias untuk --section-headers\n"
+"  -g --section-groups    Tampilkan section groups\n"
+"  -t --section-details   Tampilkan detail daerah\n"
+"  -e --headers           Sama dengan: -h -l -S\n"
+"  -s --syms              Tampilkan tabel simbol\n"
+"     --symbols           Sebuah alias untuk --syms\n"
+"  -n --notes             Tampilkan core notes (jika ada)\n"
+"  -r --relocs            Tampilkan relokasi (jika ada)\n"
+"  -u --unwind            Tampilkan informasi unwind (jika ada)\n"
+"  -d --dynamic           Tampilkan daerah dinamis (jika ada)\n"
+"  -V --version-info      Tampilkan daerah versi (jika ada)\n"
+"  -A --arch-specific     Tampilkan informasi spesifik arsitektur (jika ada).\n"
+"  -c --archive-index     Tampilkan simbol/berkas indeks dalam sebuah archive\n"
+"  -D --use-dynamic       Gunakan informasi daerah dinamis ketika menampilkan simbol\n"
+"  -x --hex-dump=<nomor|nama>\n"
+"                         Dump isi dari daerah <nomor|nama> sebagai bytes\n"
+"  -p --string-dump=<nomor|nama>\n"
+"                         Dump isi dari daerah <nomor|nama> sebagai strings\n"
+"  -w[lLiaprmfFsoR] atau\n"
+"  --debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=str,=loc,=Ranges]\n"
+"                         Tampilkan isi dari daerah debug DWARF2\n"
+
+#: readelf.c:2856
+#, c-format
+msgid ""
+"  -i --instruction-dump=<number|name>\n"
+"                         Disassemble the contents of section <number|name>\n"
+msgstr ""
+"  -i --instruction-dump=<nomor|nama>\n"
+"                         Bongkar isi dari daerah <nomor|nama>\n"
+
+#: readelf.c:2860
+#, c-format
+msgid ""
+"  -I --histogram         Display histogram of bucket list lengths\n"
+"  -W --wide              Allow output width to exceed 80 characters\n"
+"  @<file>                Read options from <file>\n"
+"  -H --help              Display this information\n"
+"  -v --version           Display the version number of readelf\n"
+msgstr ""
+"  -I --histogram         Tampilkan histogram dari daftar panjang bucket\n"
+"  -W --wide              Ijinkan lebar keluaran untuk melebihi 80 karakter\n"
+"  @<berkas>              Baca opsi dari <berkas>\n"
+"  -H --help              Tampilkan informasi ini\n"
+"  -v --version           Tampilkan nomor versi dari readelf\n"
+
+#: readelf.c:2888 readelf.c:2916 readelf.c:2920 readelf.c:11007
+msgid "Out of memory allocating dump request table.\n"
+msgstr "Kehabisan memori mengalokasikan permintaan dump tabel.\n"
+
+#: readelf.c:3090 readelf.c:3160
+#, c-format
+msgid "Unrecognized debug option '%s'\n"
+msgstr "Opsi debug '%s' tidak dikenal\n"
+
+#: readelf.c:3191
+#, c-format
+msgid "Invalid option '-%c'\n"
+msgstr "Opsi tidak valid '-%c'\n"
+
+#: readelf.c:3205
+msgid "Nothing to do.\n"
+msgstr "Tidak ada yang dilakukan.\n"
+
+#: readelf.c:3217 readelf.c:3233 readelf.c:6495
+msgid "none"
+msgstr "kosong"
+
+#: readelf.c:3234
+msgid "2's complement, little endian"
+msgstr "2's komplemen, little endian"
+
+#: readelf.c:3235
+msgid "2's complement, big endian"
+msgstr "2's komplemen, big endian"
+
+#: readelf.c:3253
+msgid "Not an ELF file - it has the wrong magic bytes at the start\n"
+msgstr "Bukan sebuah berkas ELF - ini memiliki magic bytes yang salah di awal\n"
+
+#: readelf.c:3263
+#, c-format
+msgid "ELF Header:\n"
+msgstr "ELF Header:\n"
+
+#: readelf.c:3264
+#, c-format
+msgid "  Magic:   "
+msgstr "  Magik:   "
+
+#: readelf.c:3268
+#, c-format
+msgid "  Class:                             %s\n"
+msgstr "  Kelas:                             %s\n"
+
+#: readelf.c:3270
+#, c-format
+msgid "  Data:                              %s\n"
+msgstr "  Data:                              %s\n"
+
+#: readelf.c:3272
+#, c-format
+msgid "  Version:                           %d %s\n"
+msgstr "  Versi:                             %d %s\n"
+
+#: readelf.c:3279
+#, c-format
+msgid "  OS/ABI:                            %s\n"
+msgstr "  OS/ABI:                            %s\n"
+
+#: readelf.c:3281
+#, c-format
+msgid "  ABI Version:                       %d\n"
+msgstr "  Versi ABI:                         %d\n"
+
+#: readelf.c:3283
+#, c-format
+msgid "  Type:                              %s\n"
+msgstr "  Tipe:                              %s\n"
+
+#: readelf.c:3285
+#, c-format
+msgid "  Machine:                           %s\n"
+msgstr "  Mesin:                             %s\n"
+
+#: readelf.c:3287
+#, c-format
+msgid "  Version:                           0x%lx\n"
+msgstr "  Versi:                             0x%lx\n"
+
+#: readelf.c:3290
+#, c-format
+msgid "  Entry point address:               "
+msgstr "  Alamat titik masuk:                "
+
+#: readelf.c:3292
+#, c-format
+msgid ""
+"\n"
+"  Start of program headers:          "
+msgstr ""
+"\n"
+"  Awal dari aplikasi headers:         "
+
+#: readelf.c:3294
+#, c-format
+msgid ""
+" (bytes into file)\n"
+"  Start of section headers:          "
+msgstr ""
+" (bytes kedalam berkas)\n"
+"  Awal dari header bagian:           "
+
+#: readelf.c:3296
+#, c-format
+msgid " (bytes into file)\n"
+msgstr " (bytes kedalam berkas)\n"
+
+#: readelf.c:3298
+#, c-format
+msgid "  Flags:                             0x%lx%s\n"
+msgstr "  Tanda:                             0x%lx%s\n"
+
+#: readelf.c:3301
+#, c-format
+msgid "  Size of this header:               %ld (bytes)\n"
+msgstr "  Ukuran dari header ini:            %ld (bytes)\n"
+
+#: readelf.c:3303
+#, c-format
+msgid "  Size of program headers:           %ld (bytes)\n"
+msgstr "  Ukuran dari aplikasi header:       %ld (bytes)\n"
+
+#: readelf.c:3305
+#, c-format
+msgid "  Number of program headers:         %ld\n"
+msgstr "  Jumlah dari aplikasi header:       %ld\n"
+
+#: readelf.c:3307
+#, c-format
+msgid "  Size of section headers:           %ld (bytes)\n"
+msgstr "  Ukuran dari header daerah:         %ld (bytes)\n"
+
+#: readelf.c:3309
+#, c-format
+msgid "  Number of section headers:         %ld"
+msgstr "  Jumlah dari header daerah:         %ld"
+
+#: readelf.c:3314
+#, c-format
+msgid "  Section header string table index: %ld"
+msgstr "  Indeks tabel string daerah header: %ld"
+
+#: readelf.c:3350 readelf.c:3383
+msgid "program headers"
+msgstr "aplikasi header"
+
+#: readelf.c:3421 readelf.c:3719 readelf.c:3760 readelf.c:3819 readelf.c:3884
+#: readelf.c:4553 readelf.c:4577 readelf.c:5827 readelf.c:5871 readelf.c:6069
+#: readelf.c:7127 readelf.c:7141 readelf.c:7635 readelf.c:7651 readelf.c:7694
+#: readelf.c:7719 readelf.c:9475 readelf.c:9667 readelf.c:10194
+#: readelf.c:10857
+msgid "Out of memory\n"
+msgstr "Kehabisan memori\n"
+
+#: readelf.c:3448
+#, c-format
+msgid ""
+"\n"
+"There are no program headers in this file.\n"
+msgstr ""
+"\n"
+"Tidak ada aplikasi header dalam berkas ini.\n"
+
+#: readelf.c:3454
+#, c-format
+msgid ""
+"\n"
+"Elf file type is %s\n"
+msgstr ""
+"\n"
+"Tipe berkas ELF adalah %s\n"
+
+#: readelf.c:3455
+#, c-format
+msgid "Entry point "
+msgstr "Titik masukan "
+
+#: readelf.c:3457
+#, c-format
+msgid ""
+"\n"
+"There are %d program headers, starting at offset "
+msgstr ""
+"\n"
+"Tidak ada %d aplikasi header, dimulai di ofset "
+
+#: readelf.c:3469 readelf.c:3471
+#, c-format
+msgid ""
+"\n"
+"Program Headers:\n"
+msgstr ""
+"\n"
+"Aplikasi header:\n"
+
+#: readelf.c:3475
+#, c-format
+msgid "  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align\n"
+msgstr "  Tipe           Ofset    AlamatMaya AlamatPisik UkuranBerkas UkuranMemori Flg Align\n"
+
+#: readelf.c:3478
+#, c-format
+msgid "  Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align\n"
+msgstr "  Tipe           Ofset    AlamatMaya         AlamatPisik        UkuranBerkas UkuranMemori Flg Align\n"
+
+#: readelf.c:3482
+#, c-format
+msgid "  Type           Offset             VirtAddr           PhysAddr\n"
+msgstr "  Tipe           Ofset              AlamatMaya         AlamatPisik\n"
+
+#: readelf.c:3484
+#, c-format
+msgid "                 FileSiz            MemSiz              Flags  Align\n"
+msgstr "                 UkuranBerkas       UkuranMemori        Tanda  Align\n"
+
+#: readelf.c:3577
+msgid "more than one dynamic segment\n"
+msgstr "lebih dari satu argumen dinamis\n"
+
+#: readelf.c:3593
+msgid "no .dynamic section in the dynamic segment\n"
+msgstr "tidak ada daerah .dinamis dalam segmen dinamis\n"
+
+#: readelf.c:3608
+msgid "the .dynamic section is not contained within the dynamic segment\n"
+msgstr "daerah dinamis tidak berisi dalam segmen dinamis\n"
+
+#: readelf.c:3611
+msgid "the .dynamic section is not the first section in the dynamic segment.\n"
+msgstr "daerah dinmasi bukan daerah pertama dalam segmen dinamis\n"
+
+#: readelf.c:3619
+msgid "Unable to find program interpreter name\n"
+msgstr "Tidak dapat menemukan nama aplikasi interpretasi\n"
+
+#: readelf.c:3626
+msgid "Internal error: failed to create format string to display program interpreter\n"
+msgstr "Internal error: gagal membuat string format untuk menampilkan aplikasi interpretasi\n"
+
+#: readelf.c:3630
+msgid "Unable to read program interpreter name\n"
+msgstr "Tidak dapat membaca nama aplikasi interpretasi\n"
+
+#: readelf.c:3633
+#, c-format
+msgid ""
+"\n"
+"      [Requesting program interpreter: %s]"
+msgstr ""
+"\n"
+"      [Meminta aplikasi interpretasi: %s]"
+
+#: readelf.c:3645
+#, c-format
+msgid ""
+"\n"
+" Section to Segment mapping:\n"
+msgstr ""
+"\n"
+" Pemetaan daerah ke segmen:\n"
+
+#: readelf.c:3646
+#, c-format
+msgid "  Segment Sections...\n"
+msgstr "  Daerah Segmen...\n"
+
+#: readelf.c:3681
+msgid "Cannot interpret virtual addresses without program headers.\n"
+msgstr "Tidak dapat menginterpretasikan alamat maya tanpa aplikasi header.\n"
+
+#: readelf.c:3697
+#, c-format
+msgid "Virtual address 0x%lx not located in any PT_LOAD segment.\n"
+msgstr "Alamat maya 0x%lx tidak dapat dilokasikan dalam segmen PT_LOAD apapun.\n"
+
+#: readelf.c:3711 readelf.c:3752
+msgid "section headers"
+msgstr "header daerah"
+
+#: readelf.c:3796 readelf.c:3861
+msgid "symbols"
+msgstr "simbol"
+
+#: readelf.c:3806 readelf.c:3871
+msgid "symtab shndx"
+msgstr "simtab shndx"
+
+#: readelf.c:4130 readelf.c:4537
+#, c-format
+msgid ""
+"\n"
+"There are no sections in this file.\n"
+msgstr ""
+"\n"
+"Tidak ada daerah dalam berkas ini.\n"
+
+#: readelf.c:4136
+#, c-format
+msgid "There are %d section headers, starting at offset 0x%lx:\n"
+msgstr "Tidak ada header daerah %d, dimulai di ofset 0x%lx:\n"
+
+#: readelf.c:4156 readelf.c:4653 readelf.c:4879 readelf.c:5178 readelf.c:5584
+#: readelf.c:7445
+msgid "string table"
+msgstr "tabel string"
+
+#: readelf.c:4223
+#, c-format
+msgid "Section %d has invalid sh_entsize %lx (expected %lx)\n"
+msgstr "Daerah %d memiliki sh_entsize %lx tidak valid (diduga %lx)\n"
+
+#: readelf.c:4243
+msgid "File contains multiple dynamic symbol tables\n"
+msgstr "Berkas berisi multiple tabel simbol dinamis\n"
+
+#: readelf.c:4256
+msgid "File contains multiple dynamic string tables\n"
+msgstr "Berkas berisi multiple tabel string dinamis\n"
+
+#: readelf.c:4261
+msgid "dynamic strings"
+msgstr "string dinamis"
+
+#: readelf.c:4268
+msgid "File contains multiple symtab shndx tables\n"
+msgstr "Berksa berisi multiple simtab shndx tabel\n"
+
+#: readelf.c:4320
+#, c-format
+msgid ""
+"\n"
+"Section Headers:\n"
+msgstr ""
+"\n"
+"Header Daerah:\n"
+
+#: readelf.c:4322
+#, c-format
+msgid ""
+"\n"
+"Section Header:\n"
+msgstr ""
+"\n"
+"Header Daerah:\n"
+
+#: readelf.c:4328 readelf.c:4339 readelf.c:4350
+#, c-format
+msgid "  [Nr] Name\n"
+msgstr "  [Nr] Nama\n"
+
+#: readelf.c:4329
+#, c-format
+msgid "       Type            Addr     Off    Size   ES   Lk Inf Al\n"
+msgstr "       Tipe            Alamat   Ofset  Ukuran ES   Lk Inf Al\n"
+
+#: readelf.c:4333
+#, c-format
+msgid "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"
+msgstr "  [Nr] Nama              Tipe            Alamat   Ofset  Ukuran ES Flg Lk Inf Al\n"
+
+#: readelf.c:4340
+#, c-format
+msgid "       Type            Address          Off    Size   ES   Lk Inf Al\n"
+msgstr "       Tipe            Alamat           Ofset  Ukuran ES   Lk Inf Al\n"
+
+#: readelf.c:4344
+#, c-format
+msgid "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"
+msgstr "  [Nr] Nama              Tipe            Alamat           Ofset  Ukuran ES Flg Lk Inf Al\n"
+
+#: readelf.c:4351
+#, c-format
+msgid "       Type              Address          Offset            Link\n"
+msgstr "       Tipe              Alamat           Ofset             Link\n"
+
+#: readelf.c:4352
+#, c-format
+msgid "       Size              EntSize          Info              Align\n"
+msgstr "       Ukuran            UkuranMasuk      Info              Align\n"
+
+#: readelf.c:4356
+#, c-format
+msgid "  [Nr] Name              Type             Address           Offset\n"
+msgstr "  [Nr] Nama              Tipe             Alamat            Ofset\n"
+
+#: readelf.c:4357
+#, c-format
+msgid "       Size              EntSize          Flags  Link  Info  Align\n"
+msgstr "       Ukuran            UkuranMasuk      Tanda  Link  Info  Align\n"
+
+#: readelf.c:4362
+#, c-format
+msgid "       Flags\n"
+msgstr "       Tanda\n"
+
+#: readelf.c:4495
+#, c-format
+msgid ""
+"Key to Flags:\n"
+"  W (write), A (alloc), X (execute), M (merge), S (strings)\n"
+"  I (info), L (link order), G (group), x (unknown)\n"
+"  O (extra OS processing required) o (OS specific), p (processor specific)\n"
+msgstr ""
+"Kunci ke Tanda:\n"
+"  W (tulis), A (alokasi), X (execute), M (gabung), S (strings)\n"
+"  I (info), L (urutan penggabungan), G (grup), x (tidak diketahui)\n"
+"  O (ekstra pemrosesan OS dibutuhkan) o (OS spesifik), p (prosesor spesifik)\n"
+
+#: readelf.c:4513
+#, c-format
+msgid "[<unknown>: 0x%x]"
+msgstr "[<tidak diketahui>: 0x%x]"
+
+#: readelf.c:4544
+msgid "Section headers are not available!\n"
+msgstr "Header Daerah tidak tersedia!\n"
+
+#: readelf.c:4568
+#, c-format
+msgid ""
+"\n"
+"There are no section groups in this file.\n"
+msgstr ""
+"\n"
+"Tidak ada daerah grup dalam berkas ini.\n"
+
+#: readelf.c:4604
+#, c-format
+msgid "Bad sh_link in group section `%s'\n"
+msgstr "sh_link buruk dalam daerah grup `%s'\n"
+
+#: readelf.c:4623
+#, c-format
+msgid "Bad sh_info in group section `%s'\n"
+msgstr "sh_info buruk dalah daerah grup `%s'\n"
+
+#: readelf.c:4661 readelf.c:7851 readelf.c:7932
+msgid "section data"
+msgstr "daerah data"
+
+#: readelf.c:4673
+#, c-format
+msgid "   [Index]    Name\n"
+msgstr "   [Indeks]   Nama\n"
+
+#: readelf.c:4687
+#, c-format
+msgid "section [%5u] in group section [%5u] > maximum section [%5u]\n"
+msgstr "daerah [%5u] dalah daerah grup [%5u] > daerah maksimal [%5u]\n"
+
+#: readelf.c:4696
+#, c-format
+msgid "section [%5u] in group section [%5u] already in group section [%5u]\n"
+msgstr "daerah [%5u] dalam daerah grup [%5u] telah dalam daerah grup [%5u]\n"
+
+#: readelf.c:4709
+#, c-format
+msgid "section 0 in group section [%5u]\n"
+msgstr "daerah 0 dalam grup dearah [%5u]\n"
+
+#: readelf.c:4804
+#, c-format
+msgid ""
+"\n"
+"'%s' relocation section at offset 0x%lx contains %ld bytes:\n"
+msgstr ""
+"\n"
+"'%s' relokasi daerah di ofset 0x%lx berisi %ld bytes:\n"
+
+#: readelf.c:4816
+#, c-format
+msgid ""
+"\n"
+"There are no dynamic relocations in this file.\n"
+msgstr ""
+"\n"
+"Tidak ada relokasi dinamis dalam berkas ini.\n"
+
+#: readelf.c:4840
+#, c-format
+msgid ""
+"\n"
+"Relocation section "
+msgstr ""
+"\n"
+"Daerah relokasi "
+
+#: readelf.c:4845 readelf.c:5254 readelf.c:5268 readelf.c:5599
+#, c-format
+msgid "'%s'"
+msgstr "'%s'"
+
+#: readelf.c:4847 readelf.c:5270 readelf.c:5601
+#, c-format
+msgid " at offset 0x%lx contains %lu entries:\n"
+msgstr " di ofset 0x%lx berisi %lu masukan:\n"
+
+#: readelf.c:4898
+#, c-format
+msgid ""
+"\n"
+"There are no relocations in this file.\n"
+msgstr ""
+"\n"
+"Disana tidak ada relokasi dalam berkas ini.\n"
+
+#: readelf.c:5077 readelf.c:5450
+msgid "unwind table"
+msgstr "tabel unwind"
+
+#: readelf.c:5127 readelf.c:5531
+#, c-format
+msgid "Skipping unexpected relocation type %s\n"
+msgstr "Melewati tipe relokasi %s tidak terduga\n"
+
+#: readelf.c:5186 readelf.c:5592 readelf.c:5643
+#, c-format
+msgid ""
+"\n"
+"There are no unwind sections in this file.\n"
+msgstr ""
+"\n"
+"Disana tidak ada daerah unwind dalam berkas ini.\n"
+
+#: readelf.c:5249
+#, c-format
+msgid ""
+"\n"
+"Could not find unwind info section for "
+msgstr ""
+"\n"
+"Tidak dapat menemukan informasi unwind daerah untuk "
+
+#: readelf.c:5261
+msgid "unwind info"
+msgstr "informasi unwind"
+
+#: readelf.c:5263 readelf.c:5598
+#, c-format
+msgid ""
+"\n"
+"Unwind section "
+msgstr ""
+"\n"
+"Daerah unwind "
+
+#: readelf.c:5808 readelf.c:5852
+msgid "dynamic section"
+msgstr "daerah dinamis"
+
+#: readelf.c:5929
+#, c-format
+msgid ""
+"\n"
+"There is no dynamic section in this file.\n"
+msgstr ""
+"\n"
+"Disana tidak ada daerah dinamis dalam berkas ini.\n"
+
+#: readelf.c:5967
+msgid "Unable to seek to end of file!\n"
+msgstr "Tidak dapat mencari ke akhir dari berkas!\n"
+
+#: readelf.c:5980
+msgid "Unable to determine the number of symbols to load\n"
+msgstr "Tidak dapat menentukan jumlah dari simbol untuk diload\n"
+
+#: readelf.c:6015
+msgid "Unable to seek to end of file\n"
+msgstr "Tidak dapat mencari ke akhir dari berkas\n"
+
+#: readelf.c:6022
+msgid "Unable to determine the length of the dynamic string table\n"
+msgstr "Tidak dapat menentukan panjang dari tabel dinamis string\n"
+
+#: readelf.c:6027
+msgid "dynamic string table"
+msgstr "tabel string dinamis"
+
+#: readelf.c:6062
+msgid "symbol information"
+msgstr "informasi simbol"
+
+#: readelf.c:6087
+#, c-format
+msgid ""
+"\n"
+"Dynamic section at offset 0x%lx contains %u entries:\n"
+msgstr ""
+"\n"
+"Daerah dinamis di ofset 0x%lx berisi %u masukan:\n"
+
+#: readelf.c:6090
+#, c-format
+msgid "  Tag        Type                         Name/Value\n"
+msgstr "  Tanda      Tipe                         Nama/Nilai\n"
+
+#: readelf.c:6126
+#, c-format
+msgid "Auxiliary library"
+msgstr "Auxiliary library"
+
+#: readelf.c:6130
+#, c-format
+msgid "Filter library"
+msgstr "Filter library"
+
+#: readelf.c:6134
+#, c-format
+msgid "Configuration file"
+msgstr "Berkas konfigurasi"
+
+#: readelf.c:6138
+#, c-format
+msgid "Dependency audit library"
+msgstr "Dependensi audit perpustakaan"
+
+#: readelf.c:6142
+#, c-format
+msgid "Audit library"
+msgstr "Perpustakaan audit"
+
+#: readelf.c:6160 readelf.c:6188 readelf.c:6216
+#, c-format
+msgid "Flags:"
+msgstr "Tanda:"
+
+#: readelf.c:6163 readelf.c:6191 readelf.c:6218
+#, c-format
+msgid " None\n"
+msgstr " Kosong\n"
+
+#: readelf.c:6339
+#, c-format
+msgid "Shared library: [%s]"
+msgstr "Perpustakaan terbagi: [%s]"
+
+#: readelf.c:6342
+#, c-format
+msgid " program interpreter"
+msgstr " aplikasi interpretasi"
+
+#: readelf.c:6346
+#, c-format
+msgid "Library soname: [%s]"
+msgstr "Perpustakaan soname: [%s]"
+
+#: readelf.c:6350
+#, c-format
+msgid "Library rpath: [%s]"
+msgstr "Perpustakaan rpath: [%s]"
+
+#: readelf.c:6354
+#, c-format
+msgid "Library runpath: [%s]"
+msgstr "Perpustakaan runpath: [%s]"
+
+#: readelf.c:6417
+#, c-format
+msgid "Not needed object: [%s]\n"
+msgstr "Objek tidak dibutuhkan: [%s]\n"
+
+#: readelf.c:6541
+#, c-format
+msgid ""
+"\n"
+"Version definition section '%s' contains %u entries:\n"
+msgstr ""
+"\n"
+"Definisi versi daerah '%s' berisi %u masukan:\n"
+
+#: readelf.c:6544
+#, c-format
+msgid "  Addr: 0x"
+msgstr "  Alamat: 0x"
+
+#: readelf.c:6546 readelf.c:6648 readelf.c:6769
+#, c-format
+msgid "  Offset: %#08lx  Link: %u (%s)\n"
+msgstr "  Ofset:  %#08lx  Link: %u (%s)\n"
+
+#: readelf.c:6554
+msgid "version definition section"
+msgstr "daerah definisi versi"
+
+#: readelf.c:6583
+#, c-format
+msgid "  %#06x: Rev: %d  Flags: %s"
+msgstr "  %#06x: Rev: %d  Tanda: %s"
+
+#: readelf.c:6586
+#, c-format
+msgid "  Index: %d  Cnt: %d  "
+msgstr "  Indeks: %d Cnt: %d  "
+
+#: readelf.c:6597
+#, c-format
+msgid "Name: %s\n"
+msgstr "Nama: %s\n"
+
+#: readelf.c:6599
+#, c-format
+msgid "Name index: %ld\n"
+msgstr "Nama indeks: %ld\n"
+
+#: readelf.c:6616
+#, c-format
+msgid "  %#06x: Parent %d: %s\n"
+msgstr "  %#06x: Parent %d: %s\n"
+
+#: readelf.c:6619
+#, c-format
+msgid "  %#06x: Parent %d, name index: %ld\n"
+msgstr "  %#06x: Parent %d, nama indeks: %ld\n"
+
+#: readelf.c:6623
+#, c-format
+msgid "  Version def aux past end of section\n"
+msgstr "  Versi def aux melewati akhir dari daerah\n"
+
+#: readelf.c:6628
+#, c-format
+msgid "  Version definition past end of section\n"
+msgstr "  Versi definisi melewati akhir dari daerah\n"
+
+#: readelf.c:6643
+#, c-format
+msgid ""
+"\n"
+"Version needs section '%s' contains %u entries:\n"
+msgstr ""
+"\n"
+"Versi membutuhkan daerah '%s' berisi %u masukan:\n"
+
+#: readelf.c:6646
+#, c-format
+msgid " Addr: 0x"
+msgstr " Alamat: 0x"
+
+#: readelf.c:6656
+msgid "version need section"
+msgstr "versi membutuhkan daerah"
+
+#: readelf.c:6681
+#, c-format
+msgid "  %#06x: Version: %d"
+msgstr "  %#06x: Versi: %d"
+
+#: readelf.c:6684
+#, c-format
+msgid "  File: %s"
+msgstr "  Berkas: %s"
+
+#: readelf.c:6686
+#, c-format
+msgid "  File: %lx"
+msgstr "  Berkas: %lx"
+
+#: readelf.c:6688
+#, c-format
+msgid "  Cnt: %d\n"
+msgstr "  Cnt: %d\n"
+
+#: readelf.c:6708
+#, c-format
+msgid "  %#06x:   Name: %s"
+msgstr "  %#06x:   Nama: %s"
+
+#: readelf.c:6711
+#, c-format
+msgid "  %#06x:   Name index: %lx"
+msgstr "  %#06x:   Nama indeks: %lx"
+
+#: readelf.c:6714
+#, c-format
+msgid "  Flags: %s  Version: %d\n"
+msgstr "  Tanda: %s  Versi:   %d\n"
+
+#: readelf.c:6721
+#, c-format
+msgid "  Version need aux past end of section\n"
+msgstr "  Versi membutuhkan aux melewati akhir dari daerah\n"
+
+#: readelf.c:6726
+#, c-format
+msgid "  Version need past end of section\n"
+msgstr "  Versi membutuhkan melewati akhir dari daerah\n"
+
+#: readelf.c:6760
+msgid "version string table"
+msgstr "tabel versi tring"
+
+#: readelf.c:6764
+#, c-format
+msgid ""
+"\n"
+"Version symbols section '%s' contains %d entries:\n"
+msgstr ""
+"\n"
+"Versi simbol daerah '%s' berisi %d masukan:\n"
+
+#: readelf.c:6767
+#, c-format
+msgid " Addr: "
+msgstr " Alamat: "
+
+#: readelf.c:6777
+msgid "version symbol data"
+msgstr "versi simbol data"
+
+#: readelf.c:6804
+msgid "   0 (*local*)    "
+msgstr "   0 (*local*)    "
+
+#: readelf.c:6808
+msgid "   1 (*global*)   "
+msgstr "   1 (*global*)   "
+
+#: readelf.c:6845 readelf.c:7512
+msgid "version need"
+msgstr "versi membutuhkan"
+
+#: readelf.c:6855
+msgid "version need aux (2)"
+msgstr "versi membutuhkan aux (2)"
+
+#: readelf.c:6870 readelf.c:6925
+msgid "*invalid*"
+msgstr "*tidak valid*"
+
+#: readelf.c:6900 readelf.c:7577
+msgid "version def"
+msgstr "versi def"
+
+#: readelf.c:6920 readelf.c:7592
+msgid "version def aux"
+msgstr "versi def aux"
+
+#: readelf.c:6954
+#, c-format
+msgid ""
+"\n"
+"No version information found in this file.\n"
+msgstr ""
+"\n"
+"Tidak ada informasi versi ditemukan dalam berkas ini.\n"
+
+#: readelf.c:7075
+#, c-format
+msgid "<other>: %x"
+msgstr "<yang lain>: %x"
+
+#: readelf.c:7133
+msgid "Unable to read in dynamic data\n"
+msgstr "Tidak dapat membaca dalam data dinamis\n"
+
+#: readelf.c:7224 readelf.c:7264 readelf.c:7288 readelf.c:7318 readelf.c:7342
+msgid "Unable to seek to start of dynamic information\n"
+msgstr "Tidak dapat mencari awal dari informasi dinamis\n"
+
+#: readelf.c:7230 readelf.c:7270
+msgid "Failed to read in number of buckets\n"
+msgstr "Gagal untuk membaca dalam jumlah dari buckets\n"
+
+#: readelf.c:7236
+msgid "Failed to read in number of chains\n"
+msgstr "Gagal untuk membaca dalam jumlah dari rantai\n"
+
+#: readelf.c:7326
+msgid "Failed to determine last chain length\n"
+msgstr "Gagal untuk menentukan akhir dari panjang rantai\n"
+
+#: readelf.c:7363
+#, c-format
+msgid ""
+"\n"
+"Symbol table for image:\n"
+msgstr ""
+"\n"
+"Tabel simbol untuk gambar:\n"
+
+#: readelf.c:7365 readelf.c:7383
+#, c-format
+msgid "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"
+msgstr "  Num Buc:    Nilai  Ukuran Tipe   Bind Vis      Ndx Nama\n"
+
+#: readelf.c:7367 readelf.c:7385
+#, c-format
+msgid "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
+msgstr "  Num Buc:    Nilai          Ukuran Tipe   Bind Vis      Ndx Nama\n"
+
+#: readelf.c:7381
+#, c-format
+msgid ""
+"\n"
+"Symbol table of `.gnu.hash' for image:\n"
+msgstr ""
+"\n"
+"Tabel simbol dari `.gnu.hash' untuk image:\n"
+
+#: readelf.c:7421
+#, c-format
+msgid ""
+"\n"
+"Symbol table '%s' contains %lu entries:\n"
+msgstr ""
+"\n"
+"Tabel simbol '%s' berisi %lu masukan:\n"
+
+#: readelf.c:7425
+#, c-format
+msgid "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"
+msgstr "   Jumlah: Nilai  Ukuran TIpe  Bind   Vis      Ndx Nama\n"
+
+#: readelf.c:7427
+#, c-format
+msgid "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"
+msgstr "   Jumlah: Nilai          Ukuran Tipe  Bind   Vis      Ndx Nama\n"
+
+#: readelf.c:7483
+msgid "version data"
+msgstr "versi data"
+
+#: readelf.c:7525
+msgid "version need aux (3)"
+msgstr "versi membutuhkan aux (3)"
+
+#: readelf.c:7552
+msgid "bad dynamic symbol\n"
+msgstr "simbol dinamis buruk\n"
+
+#: readelf.c:7616
+#, c-format
+msgid ""
+"\n"
+"Dynamic symbol information is not available for displaying symbols.\n"
+msgstr ""
+"\n"
+"Informasi simbol dinamis tidak tersedia untuk menampilkan simbol.\n"
+
+#: readelf.c:7628
+#, c-format
+msgid ""
+"\n"
+"Histogram for bucket list length (total of %lu buckets):\n"
+msgstr ""
+"\n"
+"Histogram untuk daftar panjang bucket (total dari %lu buckets):\n"
+
+#: readelf.c:7630 readelf.c:7700
+#, c-format
+msgid " Length  Number     %% of total  Coverage\n"
+msgstr " Panjang Nomor      %% dari total Coverage\n"
+
+#: readelf.c:7698
+#, c-format
+msgid ""
+"\n"
+"Histogram for `.gnu.hash' bucket list length (total of %lu buckets):\n"
+msgstr ""
+"\n"
+"Histogram untuk `.gnu.hash' daftar panjang bucket (total dari %lu bucket):\n"
+
+#: readelf.c:7764
+#, c-format
+msgid ""
+"\n"
+"Dynamic info segment at offset 0x%lx contains %d entries:\n"
+msgstr ""
+"\n"
+"Segmen info dinamis di ofset 0x%lx berisi %d masukan:\n"
+
+#: readelf.c:7767
+#, c-format
+msgid " Num: Name                           BoundTo     Flags\n"
+msgstr " Jumlah: Nama                        BoundTo     Tanda\n"
+
+#: readelf.c:7819
+#, c-format
+msgid ""
+"\n"
+"Assembly dump of section %s\n"
+msgstr ""
+"\n"
+"Daerah perakitan dump dari %s\n"
+
+#: readelf.c:7844 readelf.c:7922
+#, c-format
+msgid ""
+"\n"
+"Section '%s' has no data to dump.\n"
+msgstr ""
+"\n"
+"Daerah '%s' tidak memiliki data untuk di dump.\n"
+
+#: readelf.c:7855
+#, c-format
+msgid ""
+"\n"
+"String dump of section '%s':\n"
+msgstr ""
+"\n"
+"String dump dari daerah '%s':\n"
+
+#: readelf.c:7873
+#, c-format
+msgid "  Note: This section has relocations against it, but these have NOT been applied to this dump.\n"
+msgstr "  Catatan: Daerah ini memiliki relokasi terhadatnya, tetapi ini BELUM pernah diaplikasikan ke dump ini.\n"
+
+#: readelf.c:7900
+#, c-format
+msgid "  No strings found in this section."
+msgstr "  Tidak ada string yang ditemukan dalam daerah ini."
+
+#: readelf.c:7927
+#, c-format
+msgid ""
+"\n"
+"Hex dump of section '%s':\n"
+msgstr ""
+"\n"
+"Hex dump dari daerah '%s':\n"
+
+#: readelf.c:7952
+#, c-format
+msgid " NOTE: This section has relocations against it, but these have NOT been applied to this dump.\n"
+msgstr " CATATAN: Daerah ini memiliki relokasi terhadap ini, tetapi ini BELUM diaplikasikan ke dump ini.\n"
+
+#: readelf.c:8135
+#, c-format
+msgid "Missing knowledge of 32-bit reloc types used in DWARF sections of machine number %d\n"
+msgstr "Hilang pengetahuan dari 32-bit tipe relokasi yang digunakan dalam daerah DWARF dari mesin nomor %d\n"
+
+#: readelf.c:8432
+#, c-format
+msgid "unable to apply unsupported reloc type %d to section %s\n"
+msgstr "tidak dapat mengaplikasikan tipe relokasi %d tidak didukung ke daerah %s\n"
+
+#: readelf.c:8440
+#, c-format
+msgid "skipping invalid relocation offset 0x%lx in section %s\n"
+msgstr "melewati relokasi ofset 0x%lx tidak valid dalam daerah %s\n"
+
+#: readelf.c:8461
+#, c-format
+msgid "skipping unexpected symbol type %s in %ld'th relocation in section %s\n"
+msgstr "melewati tipe simbol %s tidak terduga dalam relokasi ke %ld dalam daerah %s\n"
+
+#: readelf.c:8503
+#, c-format
+msgid "%s section data"
+msgstr "daerah data %s"
+
+#: readelf.c:8568
+#, c-format
+msgid ""
+"\n"
+"Section '%s' has no debugging data.\n"
+msgstr ""
+"\n"
+"Daerah '%s' tidak memiliki data debugging.\n"
+
+#: readelf.c:8603
+#, c-format
+msgid "Unrecognized debug section: %s\n"
+msgstr "Daerah debug tidak dikenal: %s\n"
+
+#: readelf.c:8631
+#, c-format
+msgid "Section '%s' was not dumped because it does not exist!\n"
+msgstr "Daerah '%s' tidak didump karena ini tidak ada!\n"
+
+#: readelf.c:8669
+#, c-format
+msgid "Section %d was not dumped because it does not exist!\n"
+msgstr "Daerah %d tidak didump karena ini tidak ada!\n"
+
+#: readelf.c:9118
+msgid "attributes"
+msgstr "atribut"
+
+#: readelf.c:9139
+#, c-format
+msgid "ERROR: Bad section length (%d > %d)\n"
+msgstr "ERROR: Panjang daerah buruk (%d > %d)\n"
+
+#: readelf.c:9170
+#, c-format
+msgid "ERROR: Bad subsection length (%d > %d)\n"
+msgstr "ERROR: panjang subsection buruk (%d > %d)\n"
+
+#: readelf.c:9229
+#, c-format
+msgid "Unknown format '%c'\n"
+msgstr "Format '%c' tidak diketahui\n"
+
+#: readelf.c:9382 readelf.c:9897
+msgid "liblist"
+msgstr "liblist"
+
+#: readelf.c:9469
+msgid "options"
+msgstr "opsi"
+
+#: readelf.c:9499
+#, c-format
+msgid ""
+"\n"
+"Section '%s' contains %d entries:\n"
+msgstr ""
+"\n"
+"Daerah '%s' berisi %d masukan:\n"
+
+#: readelf.c:9660
+msgid "conflict list found without a dynamic symbol table\n"
+msgstr "daftar konflik ditemukan tanpa sebuah tabel simbol dinamis\n"
+
+#: readelf.c:9676 readelf.c:9690
+msgid "conflict"
+msgstr "konflik"
+
+#: readelf.c:9700
+#, c-format
+msgid ""
+"\n"
+"Section '.conflict' contains %lu entries:\n"
+msgstr ""
+"\n"
+"Daerah '.conflict' berisi %lu masukan:\n"
+
+#: readelf.c:9702
+msgid "  Num:    Index       Value  Name"
+msgstr "  Num:    Indeks      Nilai  Nama"
+
+#: readelf.c:9734
+msgid "GOT"
+msgstr "GOT"
+
+#: readelf.c:9735
+#, c-format
+msgid ""
+"\n"
+"Primary GOT:\n"
+msgstr ""
+"\n"
+"GOT Utama:\n"
+
+#: readelf.c:9736
+#, c-format
+msgid " Canonical gp value: "
+msgstr " Kanonikal nilai gp: "
+
+#: readelf.c:9740 readelf.c:9831
+#, c-format
+msgid " Reserved entries:\n"
+msgstr " Masukan terpesan:\n"
+
+#: readelf.c:9741
+#, c-format
+msgid "  %*s %10s %*s Purpose\n"
+msgstr "  %*s %10s %*s Tujuan\n"
+
+#: readelf.c:9757
+#, c-format
+msgid " Local entries:\n"
+msgstr " Masukan lokal:\n"
+
+#: readelf.c:9758
+#, c-format
+msgid "  %*s %10s %*s\n"
+msgstr "  %*s %10s %*s\n"
+
+#: readelf.c:9773
+#, c-format
+msgid " Global entries:\n"
+msgstr " Masukan global:\n"
+
+#: readelf.c:9774
+#, c-format
+msgid "  %*s %10s %*s %*s %-7s %3s %s\n"
+msgstr "  %*s %10s %*s %*s %-7s %3s %s\n"
+
+#: readelf.c:9829
+msgid "PLT GOT"
+msgstr "PLT GOT"
+
+#: readelf.c:9830
+#, c-format
+msgid ""
+"\n"
+"PLT GOT:\n"
+"\n"
+msgstr ""
+"\n"
+"PLT GOT:\n"
+"\n"
+
+#: readelf.c:9832
+#, c-format
+msgid "  %*s %*s Purpose\n"
+msgstr "  %*s  %*s Tujuan\n"
+
+#: readelf.c:9840
+#, c-format
+msgid " Entries:\n"
+msgstr " Masukan:\n"
+
+#: readelf.c:9841
+#, c-format
+msgid "  %*s %*s %*s %-7s %3s %s\n"
+msgstr "  %*s %*s %*s %-7s %3s %s\n"
+
+#: readelf.c:9904
+msgid "liblist string table"
+msgstr "liblist tabel string"
+
+#: readelf.c:9914
+#, c-format
+msgid ""
+"\n"
+"Library list section '%s' contains %lu entries:\n"
+msgstr ""
+"\n"
+"Daftar perpustakaan daerah '%s' berisi %lu masukan:\n"
+
+#: readelf.c:9967
+msgid "NT_AUXV (auxiliary vector)"
+msgstr "NT_AUXV (auxiliary vector)"
+
+#: readelf.c:9969
+msgid "NT_PRSTATUS (prstatus structure)"
+msgstr "NT_PRSTATUS (prstatus struktur)"
+
+#: readelf.c:9971
+msgid "NT_FPREGSET (floating point registers)"
+msgstr "NT_FPREGSET (register bilangan pecahan)"
+
+#: readelf.c:9973
+msgid "NT_PRPSINFO (prpsinfo structure)"
+msgstr "NT_PRPSINFO (prpsinfo struktur)"
+
+#: readelf.c:9975
+msgid "NT_TASKSTRUCT (task structure)"
+msgstr "NT_TASKSTRUCT (struktur tugas)"
+
+#: readelf.c:9977
+msgid "NT_PRXFPREG (user_xfpregs structure)"
+msgstr "NT_PRXFPREG (struktur user_xfpregs)"
+
+#: readelf.c:9979
+msgid "NT_PPC_VMX (ppc Altivec registers)"
+msgstr "NT_PPC_VMX (register ppc Altivec)"
+
+#: readelf.c:9981
+msgid "NT_PPC_VSX (ppc VSX registers)"
+msgstr "NT_PPC_VSX (register ppc VSX)"
+
+#: readelf.c:9983
+msgid "NT_PSTATUS (pstatus structure)"
+msgstr "NT_PSTATUS (struktur pstatus)"
+
+#: readelf.c:9985
+msgid "NT_FPREGS (floating point registers)"
+msgstr "NT_FPREGS (register bilangan pecahan)"
+
+#: readelf.c:9987
+msgid "NT_PSINFO (psinfo structure)"
+msgstr "NT_PSINFO (struktur psinfo)"
+
+#: readelf.c:9989
+msgid "NT_LWPSTATUS (lwpstatus_t structure)"
+msgstr "NT_LWPSTATUS (struktur lwpstatus_t)"
+
+#: readelf.c:9991
+msgid "NT_LWPSINFO (lwpsinfo_t structure)"
+msgstr "NT_LWPSINFO (struktur lwpsinfo_t)"
+
+#: readelf.c:9993
+msgid "NT_WIN32PSTATUS (win32_pstatus structure)"
+msgstr "NT_WIN32PSTATUS (struktur win32_pstatus)"
+
+#: readelf.c:10001
+msgid "NT_VERSION (version)"
+msgstr "NT_VERSION (versi)"
+
+#: readelf.c:10003
+msgid "NT_ARCH (architecture)"
+msgstr "NT_ARCH (arsitektur)"
+
+#: readelf.c:10008 readelf.c:10031 readelf.c:10053
+#, c-format
+msgid "Unknown note type: (0x%08x)"
+msgstr "Tipe catatan tidak dikenal: (0x%08x)"
+
+#: readelf.c:10020
+msgid "NT_GNU_ABI_TAG (ABI version tag)"
+msgstr "NT_GNU_ABI_TAG (Tanda versi ABI)"
+
+#: readelf.c:10022
+msgid "NT_GNU_HWCAP (DSO-supplied software HWCAP info)"
+msgstr "NT_GNU_HWCAP (DSO-supplied software HWCAP info)"
+
+#: readelf.c:10024
+msgid "NT_GNU_BUILD_ID (unique build ID bitstring)"
+msgstr "NT_GNU_BUILD_ID (unik ID pembuatan bitstring)"
+
+#: readelf.c:10026
+msgid "NT_GNU_GOLD_VERSION (gold version)"
+msgstr "NT_GNU_GOLD_VERSION (versi emas)"
+
+#. NetBSD core "procinfo" structure.
+#: readelf.c:10043
+msgid "NetBSD procinfo structure"
+msgstr "NetBSD struktur procinfo"
+
+#: readelf.c:10070 readelf.c:10084
+msgid "PT_GETREGS (reg structure)"
+msgstr "PT_GETREGS (struktur reg)"
+
+#: readelf.c:10072 readelf.c:10086
+msgid "PT_GETFPREGS (fpreg structure)"
+msgstr "PT_GETFPREGS (struktur fpreg)"
+
+#: readelf.c:10092
+#, c-format
+msgid "PT_FIRSTMACH+%d"
+msgstr "PT_FIRSTMACH+%d"
+
+#: readelf.c:10148
+msgid "notes"
+msgstr "catatan"
+
+#: readelf.c:10154
+#, c-format
+msgid ""
+"\n"
+"Notes at offset 0x%08lx with length 0x%08lx:\n"
+msgstr ""
+"\n"
+"Catatan di ofset 0x%08lx dengan panjang 0x%08lx:\n"
+
+#: readelf.c:10156
+#, c-format
+msgid "  Owner\t\tData size\tDescription\n"
+msgstr "  Pemilik\t\tBesar Data\tDeskripsi\n"
+
+#: readelf.c:10175
+#, c-format
+msgid "corrupt note found at offset %lx into core notes\n"
+msgstr "catatan terkorupsi ditemukan di ofset %lx kedalam core notes\n"
+
+#: readelf.c:10177
+#, c-format
+msgid " type: %lx, namesize: %08lx, descsize: %08lx\n"
+msgstr " tipe: %lx, namesize: %08lx, descsize: %08lx\n"
+
+#: readelf.c:10275
+#, c-format
+msgid "No note segments present in the core file.\n"
+msgstr "Tidak ada catatan segmen hadir dalam berkas inti.\n"
+
+#: readelf.c:10359
+msgid ""
+"This instance of readelf has been built without support for a\n"
+"64 bit data type and so it cannot read 64 bit ELF files.\n"
+msgstr ""
+"Instance ini dari readelf telah dibuat tanpa dukungan untuk\n"
+"tipe data 64 bit dan jadi ini tidak dapat membaca berkas ELF 64 bit.\n"
+
+#: readelf.c:10406
+#, c-format
+msgid "%s: Failed to read file header\n"
+msgstr "%s: Gagal untuk membaca berkas header\n"
+
+#: readelf.c:10419
+#, c-format
+msgid ""
+"\n"
+"File: %s\n"
+msgstr ""
+"\n"
+"Berkas: %s\n"
+
+#: readelf.c:10572 readelf.c:10892
+#, c-format
+msgid "%s: failed to read archive header\n"
+msgstr "%s: gagal untuk membaca header archive\n"
+
+#: readelf.c:10595
+#, c-format
+msgid "%s: the archive index is empty\n"
+msgstr "%s: indeks archive kosong\n"
+
+#: readelf.c:10603 readelf.c:10626
+#, c-format
+msgid "%s: failed to read archive index\n"
+msgstr "%s: gagal untuk membaca archive indeks\n"
+
+#: readelf.c:10612
+#, c-format
+msgid "%s: the archive index is supposed to have %ld entries, but the size in the header is too small\n"
+msgstr "%s: archive indeks seharusnya memiliki %ld masukan, tetapi ukuran dalam header terlalu kecil\n"
+
+#: readelf.c:10619
+msgid "Out of memory whilst trying to read archive symbol index\n"
+msgstr "Kehabisan memeri ketika mencoba membaca indeks simbol archive\n"
+
+#: readelf.c:10637
+msgid "Out of memory whilst trying to convert the archive symbol index\n"
+msgstr "Kehabisan memori ketika mencoba mengubak indeks simbol archive\n"
+
+#: readelf.c:10649
+#, c-format
+msgid "%s: the archive has an index but no symbols\n"
+msgstr "%s: archive memiliki sebuah indeks tetapi bukan simbol\n"
+
+#: readelf.c:10657
+msgid "Out of memory whilst trying to read archive index symbol table\n"
+msgstr "Kehabisan memori ketika mencoba untuk membaca indeks tabel simbol archive\n"
+
+#: readelf.c:10664
+#, c-format
+msgid "%s: failed to read archive index symbol table\n"
+msgstr "%s: gagal untuk membaca indeks simbol tabel archive\n"
+
+#: readelf.c:10673
+#, c-format
+msgid "%s: failed to skip archive symbol table\n"
+msgstr "%s: gagal untuk melewati simbol tabel archive\n"
+
+#: readelf.c:10687
+#, c-format
+msgid "%s: failed to read archive header following archive index\n"
+msgstr "%s: gagal untuk membaca archive header dari indeks archive berikut\n"
+
+#: readelf.c:10693
+#, c-format
+msgid "%s has no archive index\n"
+msgstr "%s tidak memiliki indeks archive\n"
+
+#: readelf.c:10704
+msgid "Out of memory reading long symbol names in archive\n"
+msgstr "Kehabisan memori membaca nama simbol panjang dalam archive\n"
+
+#: readelf.c:10712
+#, c-format
+msgid "%s: failed to read long symbol name string table\n"
+msgstr "%s: gagal untuk membaca nama simbol panjang tabel string\n"
+
+#: readelf.c:10727
+#, c-format
+msgid "%s: failed to read archive header following long symbol names\n"
+msgstr "%s: gagal untuk membaca archive header dari nama simbol panjang berikut\n"
+
+#: readelf.c:10737
+#, c-format
+msgid "%s: unable to dump the index as none was found\n"
+msgstr "%s: tidak dapat mendeump indeks sebagai kosong telah ditemukan\n"
+
+#: readelf.c:10744
+#, c-format
+msgid "Index of archive %s: (%ld entries, 0x%lx bytes in the symbol table)\n"
+msgstr "Indeks dari archive %s: (%ld masukan, 0x%lx bytes dalam tabel simbol)\n"
+
+#: readelf.c:10754
+#, c-format
+msgid "%s: failed to seek to next file name\n"
+msgstr "%s: gagal untuk mencari nama berkas selanjutnya\n"
+
+#: readelf.c:10761
+#, c-format
+msgid "%s: failed to read file name\n"
+msgstr "%s: gagal untuk membaca nama berkas\n"
+
+#: readelf.c:10773 readelf.c:10782
+#, c-format
+msgid "Binary %s contains:\n"
+msgstr "Binari %s berisi:\n"
+
+#: readelf.c:10787
+#, c-format
+msgid "%s: end of the symbol table reached before the end of the index\n"
+msgstr "%s: akhir dari simbel tabel dicapai sebelum akhir dari indeks\n"
+
+#: readelf.c:10796
+#, c-format
+msgid "%s: symbols remain in the index symbol table, but without corresponding entries in the index table\n"
+msgstr "%s: simbol tetap berada dalam tabel simbol indeks, tetapi tanpa masukan yang berhubunga dalam tabel indeks\n"
+
+#: readelf.c:10805
+#, c-format
+msgid "%s: failed to seek back to start of object files in the archive\n"
+msgstr "%s: gagal untuk seek back ke awal dari berkas objek dalam archive\n"
+
+#: readelf.c:10833
+#, c-format
+msgid "%s: invalid archive string table offset %lu\n"
+msgstr "%s: ofset tabel string archive tidak valid %lu\n"
+
+#: readelf.c:10849
+#, c-format
+msgid "%s: bad archive file name\n"
+msgstr "%s: nama berkas archive buruk\n"
+
+#: readelf.c:10881
+#, c-format
+msgid "%s: failed to seek to next archive header\n"
+msgstr "%s: gagak untuk mencarai header archive selanjutnya\n"
+
+#: readelf.c:10920
+#, c-format
+msgid "'%s': No such file\n"
+msgstr "'%s': Tidak ada berkas seperti itu\n"
+
+#: readelf.c:10922
+#, c-format
+msgid "Could not locate '%s'.  System error message: %s\n"
+msgstr "Tidak dapat menemukan '%s'. Pesan error sistem: %s\n"
+
+#: readelf.c:10929
+#, c-format
+msgid "'%s' is not an ordinary file\n"
+msgstr "'%s' bukan sebuah berkas biasa\n"
+
+#: readelf.c:10936
+#, c-format
+msgid "Input file '%s' is not readable.\n"
+msgstr "Berkas masukan '%s' tidak dapat dibaca.\n"
+
+#: readelf.c:10942
+#, c-format
+msgid "%s: Failed to read file's magic number\n"
+msgstr "%s: Gagal membaca berkas nomor magik\n"
+
+#: readelf.c:10952
+#, c-format
+msgid "File %s is not an archive so its index cannot be displayed.\n"
+msgstr "Berkas %s bukan sebuah archive jadi indeksnya tidak dapat ditampilkan.\n"
+
+#: rename.c:124
+#, c-format
+msgid "%s: cannot set time: %s"
+msgstr "%s: tidak dapat menset waktu: %s"
+
+#. We have to clean up here.
+#: rename.c:159 rename.c:197
+#, c-format
+msgid "unable to rename '%s'; reason: %s"
+msgstr "tidak dapat mengubah nama '%s'; alasan: %s"
+
+#: rename.c:205
+#, c-format
+msgid "unable to copy file '%s'; reason: %s"
+msgstr "tidak dapat menyalin berkas '%s'; alasan: %s"
+
+#: resbin.c:120
+#, c-format
+msgid "%s: not enough binary data"
+msgstr "%s: tidak cukup data binari"
+
+#: resbin.c:136
+msgid "null terminated unicode string"
+msgstr "kosong diakhir string unicode"
+
+#: resbin.c:163 resbin.c:169
+msgid "resource ID"
+msgstr "ID sumber daya"
+
+#: resbin.c:208
+msgid "cursor"
+msgstr "kursor"
+
+#: resbin.c:239 resbin.c:246
+msgid "menu header"
+msgstr "menu header"
+
+#: resbin.c:255
+msgid "menuex header"
+msgstr "menuex header"
+
+#: resbin.c:259
+msgid "menuex offset"
+msgstr "menuex ofset"
+
+#: resbin.c:264
+#, c-format
+msgid "unsupported menu version %d"
+msgstr "versi menu %d tidak didukung"
+
+#: resbin.c:289 resbin.c:304 resbin.c:366
+msgid "menuitem header"
+msgstr "menuitem header"
+
+#: resbin.c:396
+msgid "menuitem"
+msgstr "menuitem"
+
+#: resbin.c:433 resbin.c:461
+msgid "dialog header"
+msgstr "header dialog"
+
+#: resbin.c:451
+#, c-format
+msgid "unexpected DIALOGEX version %d"
+msgstr "versi %d DIALOGEX tidak terduga"
+
+#: resbin.c:496
+msgid "dialog font point size"
+msgstr "dialog ukuran titik font"
+
+#: resbin.c:504
+msgid "dialogex font information"
+msgstr "informasi font dialogex"
+
+#: resbin.c:530 resbin.c:548
+msgid "dialog control"
+msgstr "kontrol dialog"
+
+#: resbin.c:540
+msgid "dialogex control"
+msgstr "kontrol dialogex"
+
+#: resbin.c:569
+msgid "dialog control end"
+msgstr "akhir kontrol dialog"
+
+#: resbin.c:581
+msgid "dialog control data"
+msgstr "kontrol data dialog"
+
+#: resbin.c:621
+msgid "stringtable string length"
+msgstr "panjang string stringtabel"
+
+#: resbin.c:631
+msgid "stringtable string"
+msgstr "stringtabel string"
+
+#: resbin.c:661
+msgid "fontdir header"
+msgstr "fontdir header"
+
+#: resbin.c:675
+msgid "fontdir"
+msgstr "fontdir"
+
+#: resbin.c:692
+msgid "fontdir device name"
+msgstr "fontdir nama perangkat"
+
+#: resbin.c:698
+msgid "fontdir face name"
+msgstr "fontdir nama muka"
+
+#: resbin.c:738
+msgid "accelerator"
+msgstr "akselerator"
+
+#: resbin.c:797
+msgid "group cursor header"
+msgstr "grup kursor header"
+
+#: resbin.c:801 resrc.c:1355
+#, c-format
+msgid "unexpected group cursor type %d"
+msgstr "tipe kursor %d grup tidak terduga"
+
+#: resbin.c:816
+msgid "group cursor"
+msgstr "grup kursor"
+
+#: resbin.c:852
+msgid "group icon header"
+msgstr "grup ikon header"
+
+#: resbin.c:856 resrc.c:1302
+#, c-format
+msgid "unexpected group icon type %d"
+msgstr "tipe ikon grup %d tidak terduga"
+
+#: resbin.c:871
+msgid "group icon"
+msgstr "grup ikon"
+
+#: resbin.c:935 resbin.c:1151
+msgid "unexpected version string"
+msgstr "string versi tidak terduga"
+
+#: resbin.c:966
+#, c-format
+msgid "version length %d does not match resource length %lu"
+msgstr "panjang versi %d tidak cocok dengan panjang sumber daya %lu"
+
+#: resbin.c:970
+#, c-format
+msgid "unexpected version type %d"
+msgstr "tipe versi %d tidak terduga"
+
+#: resbin.c:982
+#, c-format
+msgid "unexpected fixed version information length %ld"
+msgstr "panjang informasi versi %ld tetap tidak terduga"
+
+#: resbin.c:985
+msgid "fixed version info"
+msgstr "info versi tetap"
+
+#: resbin.c:989
+#, c-format
+msgid "unexpected fixed version signature %lu"
+msgstr "tanda tangan versi %lu tetap tidak terduga"
+
+#: resbin.c:993
+#, c-format
+msgid "unexpected fixed version info version %lu"
+msgstr "info versi %lu versi tetap tidak terduga"
+
+#: resbin.c:1022
+msgid "version var info"
+msgstr "info var versi"
+
+#: resbin.c:1039
+#, c-format
+msgid "unexpected stringfileinfo value length %ld"
+msgstr "nilai panjang %ld stringfileinfo tidak terduga"
+
+#: resbin.c:1049
+#, c-format
+msgid "unexpected version stringtable value length %ld"
+msgstr "nilai panjang %ld versi stringtabel tidak terduga"
+
+#: resbin.c:1083
+#, c-format
+msgid "unexpected version string length %ld != %ld + %ld"
+msgstr "versi panjang string %ld != %ld + %ld tidak terduga"
+
+#: resbin.c:1094
+#, c-format
+msgid "unexpected version string length %ld < %ld"
+msgstr "versi panjang string %ld < %ld tidak terduga"
+
+#: resbin.c:1111
+#, c-format
+msgid "unexpected varfileinfo value length %ld"
+msgstr "nilai panjang varfileinfo %ld tidak terduga"
+
+#: resbin.c:1130
+msgid "version varfileinfo"
+msgstr "versi varfileinfo"
+
+#: resbin.c:1145
+#, c-format
+msgid "unexpected version value length %ld"
+msgstr "nilai panjang versi %ld tidak terduga"
+
+#: rescoff.c:124
+msgid "filename required for COFF input"
+msgstr "nama berkas dibutuhkan untuk masukan COFF"
+
+#: rescoff.c:141
+#, c-format
+msgid "%s: no resource section"
+msgstr "%s: daerah tidak ada sumber daya"
+
+#: rescoff.c:173
+#, c-format
+msgid "%s: %s: address out of bounds"
+msgstr "%s: %s: alamat diluar dari ikatan"
+
+#: rescoff.c:190
+msgid "directory"
+msgstr "direktori"
+
+#: rescoff.c:218
+msgid "named directory entry"
+msgstr "nama dari masukan direktori"
+
+#: rescoff.c:227
+msgid "directory entry name"
+msgstr "nama masukan direktori"
+
+#: rescoff.c:247
+msgid "named subdirectory"
+msgstr "nama subdirektori"
+
+#: rescoff.c:255
+msgid "named resource"
+msgstr "nama sumber daya"
+
+#: rescoff.c:270
+msgid "ID directory entry"
+msgstr "ID masukan direktori"
+
+#: rescoff.c:287
+msgid "ID subdirectory"
+msgstr "ID subdirektori"
+
+#: rescoff.c:295
+msgid "ID resource"
+msgstr "ID sumber daya"
+
+#: rescoff.c:320
+msgid "resource type unknown"
+msgstr "tipe sumber daya tidak dikenal"
+
+#: rescoff.c:323
+msgid "data entry"
+msgstr "masukan data"
+
+#: rescoff.c:331
+msgid "resource data"
+msgstr "sumber daya data"
+
+#: rescoff.c:336
+msgid "resource data size"
+msgstr "ukuran data sumber daya"
+
+#: rescoff.c:431
+msgid "filename required for COFF output"
+msgstr "nama berkas dibutuhkan untuk output COFF"
+
+#: rescoff.c:715
+msgid "can't get BFD_RELOC_RVA relocation type"
+msgstr "tidak dapat memperoleh tipe relokasi BFD_RELOC_RVA"
+
+#: resrc.c:262 resrc.c:333
+#, c-format
+msgid "can't open temporary file `%s': %s"
+msgstr "tida dapat membuka berkas sementara `%s': %s"
+
+#: resrc.c:268
+#, c-format
+msgid "can't redirect stdout: `%s': %s"
+msgstr "tidak dapat meredirek stdout: `%s': %s"
+
+#: resrc.c:284
+#, c-format
+msgid "%s %s: %s"
+msgstr "%s %s: %s"
+
+#: resrc.c:329
+#, c-format
+msgid "can't execute `%s': %s"
+msgstr "tidak dapat menjalankan `%s': %s"
+
+#: resrc.c:338
+#, c-format
+msgid "Using temporary file `%s' to read preprocessor output\n"
+msgstr "Menggunakan berkas sementara `%s' untuk membaca keluaran preprosesor\n"
+
+#: resrc.c:345
+#, c-format
+msgid "can't popen `%s': %s"
+msgstr "tidak dapat popen `%s': %s"
+
+#: resrc.c:347
+#, c-format
+msgid "Using popen to read preprocessor output\n"
+msgstr "Menggunakan popen untuk membaca keluaran preprosesor\n"
+
+#: resrc.c:413
+#, c-format
+msgid "Tried `%s'\n"
+msgstr "Mencoba `%s'\n"
+
+#: resrc.c:424
+#, c-format
+msgid "Using `%s'\n"
+msgstr "Menggunakan `%s'\n"
+
+#: resrc.c:608
+msgid "preprocessing failed."
+msgstr "preprosesing gagal."
+
+#: resrc.c:631
+#, c-format
+msgid "%s:%d: %s\n"
+msgstr "%s:%d: %s\n"
+
+#: resrc.c:639
+#, c-format
+msgid "%s: unexpected EOF"
+msgstr "%s: tidak terduga EOF"
+
+#: resrc.c:688
+#, c-format
+msgid "%s: read of %lu returned %lu"
+msgstr "%s: membaca dari %lu dikembalikan %lu"
+
+#: resrc.c:727 resrc.c:1502
+#, c-format
+msgid "stat failed on bitmap file `%s': %s"
+msgstr "stat gagal dalam berkas bitmap `%s': %s"
+
+#: resrc.c:778
+#, c-format
+msgid "cursor file `%s' does not contain cursor data"
+msgstr "berkas kursor `%s' tidak berisi data kursor"
+
+#: resrc.c:810 resrc.c:1210
+#, c-format
+msgid "%s: fseek to %lu failed: %s"
+msgstr "%s: fseek ke %lu gagal: %s"
+
+#: resrc.c:936
+msgid "help ID requires DIALOGEX"
+msgstr "help ID membutuhkan DIALOGEX"
+
+#: resrc.c:938
+msgid "control data requires DIALOGEX"
+msgstr "kontrol data membutuhkan DIALOGEX"
+
+#: resrc.c:966
+#, c-format
+msgid "stat failed on font file `%s': %s"
+msgstr "stat gagal dalam berkas font `%s': %s"
+
+#: resrc.c:1179
+#, c-format
+msgid "icon file `%s' does not contain icon data"
+msgstr "berkas ikon `%s' tidak berisi data ikon"
+
+#: resrc.c:1724 resrc.c:1759
+#, c-format
+msgid "stat failed on file `%s': %s"
+msgstr "stat gagal di berkas `%s': %s"
+
+#: resrc.c:1940
+#, c-format
+msgid "can't open `%s' for output: %s"
+msgstr "tidak dapat membuka `%s' untuk keluaran: %s"
+
+#: size.c:79
+#, c-format
+msgid " Displays the sizes of sections inside binary files\n"
+msgstr " Menampilkan ukuran dari daerah didalam berkas binari\n"
+
+#: size.c:80
+#, c-format
+msgid " If no input file(s) are specified, a.out is assumed\n"
+msgstr " Jika tidak ada berkas masukan yang dispesifikasikan, a.out diasumsikan\n"
+
+#: size.c:81
+#, c-format
+msgid ""
+" The options are:\n"
+"  -A|-B     --format={sysv|berkeley}  Select output style (default is %s)\n"
+"  -o|-d|-x  --radix={8|10|16}         Display numbers in octal, decimal or hex\n"
+"  -t        --totals                  Display the total sizes (Berkeley only)\n"
+"            --common                  Display total size for *COM* syms\n"
+"            --target=<bfdname>        Set the binary file format\n"
+"            @<file>                   Read options from <file>\n"
+"  -h        --help                    Display this information\n"
+"  -v        --version                 Display the program's version\n"
+"\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -A|-B     --format={sysv|berkeley}  Pilih gaya keluaran (baku adalah %s)\n"
+"  -o|-d|-x  --radix={8|10|16}         Tampilkan nomor dalam oktal, desimal atau heksadesimal\n"
+"  -t        --totals                  Tampilkan jumlah total (Berkeley saja)\n"
+"            --common                  Tampilkan jumlah total untuk *COM* syms\n"
+"            --target=<bfdname>        Set format berkas binari\n"
+"            @<berkas>                 Baca opsi dari <berkas>\n"
+"  -h        --help                    Tampilkan informasi ini\n"
+"  -v        --version                 Tampilkan versi aplikasi\n"
+"\n"
+
+#: size.c:160
+#, c-format
+msgid "invalid argument to --format: %s"
+msgstr "argumen tidak valid ke --format: %s"
+
+#: size.c:187
+#, c-format
+msgid "Invalid radix: %s\n"
+msgstr "Radix tidak valid: %s\n"
+
+#: srconv.c:1731
+#, c-format
+msgid "Convert a COFF object file into a SYSROFF object file\n"
+msgstr "Mengubah sebuah berkas objek COFF kedalam sebuah berkas objek SYSROFF\n"
+
+#: srconv.c:1732
+#, c-format
+msgid ""
+" The options are:\n"
+"  -q --quick       (Obsolete - ignored)\n"
+"  -n --noprescan   Do not perform a scan to convert commons into defs\n"
+"  -d --debug       Display information about what is being done\n"
+"  @<file>          Read options from <file>\n"
+"  -h --help        Display this information\n"
+"  -v --version     Print the program's version number\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -q --quick       (Kadaluarsaa - diabaikan)\n"
+"  -n --noprescan   Jangan lakukan sebuah scan untuk mengubah common menjadi def\n"
+"  -d --debug       Tampilkan informasi mengenai apa yang sedang dikerjakan\n"
+"  @<berkas>        Baca opsi dari <berkas>\n"
+"  -h --help        Tampilkan informasi ini\n"
+"  -v --version     Tampilkan nomor versi aplikasi\n"
+
+#: srconv.c:1878
+#, c-format
+msgid "unable to open output file %s"
+msgstr "tidak dapat membuka berkas keluaran %s"
+
+#: stabs.c:328 stabs.c:1706
+msgid "numeric overflow"
+msgstr "numerik overflow"
+
+#: stabs.c:338
+#, c-format
+msgid "Bad stab: %s\n"
+msgstr "Bad stab: %s\n"
+
+#: stabs.c:346
+#, c-format
+msgid "Warning: %s: %s\n"
+msgstr "Peringatan: %s: %s\n"
+
+#: stabs.c:456
+#, c-format
+msgid "N_LBRAC not within function\n"
+msgstr "N_LBRAC tidak dalam fungsi\n"
+
+#: stabs.c:495
+#, c-format
+msgid "Too many N_RBRACs\n"
+msgstr "Terlalu banyak N_RBRAC\n"
+
+#: stabs.c:736
+msgid "unknown C++ encoded name"
+msgstr "nama C++ terenkode tidak dikenal"
+
+#. Complain and keep going, so compilers can invent new
+#. cross-reference types.
+#: stabs.c:1251
+msgid "unrecognized cross reference type"
+msgstr "tipe referensi silang tidak dikenal"
+
+#. Does this actually ever happen?  Is that why we are worrying
+#. about dealing with it rather than just calling error_type?
+#: stabs.c:1798
+msgid "missing index type"
+msgstr "hilang tipe indeks"
+
+#: stabs.c:2112
+msgid "unknown virtual character for baseclass"
+msgstr "karakter maya untuk baseclass tidak dikenal"
+
+#: stabs.c:2130
+msgid "unknown visibility character for baseclass"
+msgstr "karakter visibel untuk baseclass tidak dikenal"
+
+#: stabs.c:2316
+msgid "unnamed $vb type"
+msgstr "unnamed tipe $vb"
+
+#: stabs.c:2322
+msgid "unrecognized C++ abbreviation"
+msgstr "kependekan C++ tidak dikenal"
+
+#: stabs.c:2398
+msgid "unknown visibility character for field"
+msgstr "karakter visibel untuk field tidak dikenal"
+
+#: stabs.c:2650
+msgid "const/volatile indicator missing"
+msgstr "const/volatile indikator hilang"
+
+#: stabs.c:2886
+#, c-format
+msgid "No mangling for \"%s\"\n"
+msgstr "Tidak ada mangling untuk \"%s\"\n"
+
+#: stabs.c:3186
+msgid "Undefined N_EXCL"
+msgstr "Tidak terdefinisi N_EXCL"
+
+#: stabs.c:3266
+#, c-format
+msgid "Type file number %d out of range\n"
+msgstr "Tipe nomor berkas %d diluar dari jangkauan\n"
+
+#: stabs.c:3271
+#, c-format
+msgid "Type index number %d out of range\n"
+msgstr "Tipe nomor indeks %d diluar dari jangkauan\n"
+
+#: stabs.c:3350
+#, c-format
+msgid "Unrecognized XCOFF type %d\n"
+msgstr "Tipe XCOFF %d tidak dikenal\n"
+
+#: stabs.c:3642
+#, c-format
+msgid "bad mangled name `%s'\n"
+msgstr "nama mangled `%s' buruk\n"
+
+#: stabs.c:3737
+#, c-format
+msgid "no argument types in mangled string\n"
+msgstr "tidak ada tipe argumen dalam string mangle\n"
+
+#: stabs.c:5091
+#, c-format
+msgid "Demangled name is not a function\n"
+msgstr "Nama demangle bukan sebuah fungsi\n"
+
+#: stabs.c:5133
+#, c-format
+msgid "Unexpected type in v3 arglist demangling\n"
+msgstr "Tipe tidak terduga dalam daftar argumen v3 demangling\n"
+
+#: stabs.c:5200
+#, c-format
+msgid "Unrecognized demangle component %d\n"
+msgstr "Komponen %d demangle tidak dikenal\n"
+
+#: stabs.c:5252
+#, c-format
+msgid "Failed to print demangled template\n"
+msgstr "Gagal untuk menampilkan template demangle\n"
+
+#: stabs.c:5332
+#, c-format
+msgid "Couldn't get demangled builtin type\n"
+msgstr "Tidak dapat memperoleh demangle tipe builtin\n"
+
+#: stabs.c:5381
+#, c-format
+msgid "Unexpected demangled varargs\n"
+msgstr "varags demangled tidak terduga\n"
+
+#: stabs.c:5388
+#, c-format
+msgid "Unrecognized demangled builtin type\n"
+msgstr "tipe builting demangle tidak dikenal\n"
+
+#: strings.c:251
+#, c-format
+msgid "invalid minimum string length %d"
+msgstr "panjang string minimal %d tidak valid"
+
+#: strings.c:648
+#, c-format
+msgid " Display printable strings in [file(s)] (stdin by default)\n"
+msgstr " Menampilkan string yang dapat dicetak dalam [berkas] (stdin secara baku)\n"
+
+#: strings.c:649
+#, c-format
+msgid ""
+" The options are:\n"
+"  -a - --all                Scan the entire file, not just the data section\n"
+"  -f --print-file-name      Print the name of the file before each string\n"
+"  -n --bytes=[number]       Locate & print any NUL-terminated sequence of at\n"
+"  -<number>                   least [number] characters (default 4).\n"
+"  -t --radix={o,d,x}        Print the location of the string in base 8, 10 or 16\n"
+"  -o                        An alias for --radix=o\n"
+"  -T --target=<BFDNAME>     Specify the binary file format\n"
+"  -e --encoding={s,S,b,l,B,L} Select character size and endianness:\n"
+"                            s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit\n"
+"  @<file>                   Read options from <file>\n"
+"  -h --help                 Display this information\n"
+"  -v --version              Print the program's version number\n"
+msgstr ""
+" Opsi adalah:\n"
+" -a --all                   Periksa seluruh berkas, tidak hanya daerah data\n"
+" -f --print-file-name       Tampilkan nama dari berkas sebelum setiap string\n"
+" -n --bytes=[nomor]         Lokasikan dan tampilkan urutan NUL-terakhiri apapun dari di\n"
+" -<nomor>                   akhir [nomor] karakter (baku 4).\n"
+" -t --radix={o,d,x}         Tampilkan lokasi dari string dalam basis 8, 10 atau 16\n"
+" -o                         Sebuah alias untuk --radix=o\n"
+" -T --target=<BFDNAME>      Spesifikasikan format berkas binari\n"
+" -e --encoding={s,S,b,l,B,L} Pilih ukuran karakter dan tipe endian:\n"
+"                            s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit\n"
+" @<berkas>                  Baca opsi dari <berkas>\n"
+" -h --help                  Tampilkan informasi ini\n"
+" -v --version               Tampilkan nomor versi aplikasi\n"
+
+#: sysdump.c:648
+#, c-format
+msgid "Print a human readable interpretation of a SYSROFF object file\n"
+msgstr "Menampilkan sebuah interpretasi mudah dibaca dari sebuah berkas objek SYSROFF\n"
+
+#: sysdump.c:649
+#, c-format
+msgid ""
+" The options are:\n"
+"  -h --help        Display this information\n"
+"  -v --version     Print the program's version number\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -h --help        Tampilkan informasi ini\n"
+"  -v --version     Tampilkan nomor versi aplikasi\n"
+
+#: sysdump.c:716
+#, c-format
+msgid "cannot open input file %s"
+msgstr "tidak dapat membuka berkas masukan %s"
+
+#: version.c:35
+#, c-format
+msgid "Copyright 2007 Free Software Foundation, Inc.\n"
+msgstr "Hak Cipta 2007 Free Software Foundation, Inc.\n"
+
+#: version.c:36
+#, c-format
+msgid ""
+"This program is free software; you may redistribute it under the terms of\n"
+"the GNU General Public License version 3 or (at your option) any later version.\n"
+"This program has absolutely no warranty.\n"
+msgstr ""
+"Aplikasi ini adalah software bebas; anda boleh meredistribusikannya dibawah ijin dari\n"
+"Lisensi GNU General Public  versi 3 atau (menurut opsi anda) mungkin versi selanjutnya.\n"
+"Aplikasi ini tidak memiliki garansi apapun.\n"
+
+#: windmc.c:195
+#, c-format
+msgid "can't create %s file ,%s' for output.\n"
+msgstr "tidak dapat membuat berkas %s, %s' untuk keluaran.\n"
+
+#: windmc.c:203
+#, c-format
+msgid "Usage: %s [option(s)] [input-file]\n"
+msgstr "Penggunaan: %s [opsi] [berkas-masukan]\n"
+
+#: windmc.c:205
+#, c-format
+msgid ""
+" The options are:\n"
+"  -a --ascii_in                Read input file as ASCII file\n"
+"  -A --ascii_out               Write binary messages as ASCII\n"
+"  -b --binprefix               .bin filename is prefixed by .mc filename_ for uniqueness.\n"
+"  -c --customflag              Set custom flags for messages\n"
+"  -C --codepage_in=<val>       Set codepage when reading mc text file\n"
+"  -d --decimal_values          Print values to text files decimal\n"
+"  -e --extension=<extension>   Set header extension used on export header file\n"
+"  -F --target <target>         Specify output target for endianess.\n"
+"  -h --headerdir=<directory>   Set the export directory for headers\n"
+"  -u --unicode_in              Read input file as UTF16 file\n"
+"  -U --unicode_out             Write binary messages as UFT16\n"
+"  -m --maxlength=<val>         Set the maximal allowed message length\n"
+"  -n --nullterminate           Automatic add a zero termination to strings\n"
+"  -o --hresult_use             Use HRESULT definition instead of status code definition\n"
+"  -O --codepage_out=<val>      Set codepage used for writing text file\n"
+"  -r --rcdir=<directory>       Set the export directory for rc files\n"
+"  -x --xdbg=<directory>        Where to create the .dbg C include file\n"
+"                               that maps message ID's to their symbolic name.\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -a --ascii_in                Baca berkas masukan sebagai berkas ASCII\n"
+"  -A --ascii_out               Tulis pesan binari sebagai ASCII\n"
+"  -b --binprefix               nama berkas .bin diawali sebagai nama berkas .mc supaya unik.\n"
+"  -c --customflag              Set tanda kustom untuk pesan\n"
+"  -C --codepage_in=<val>       Set kode halaman ketika membaca mc berkas teks\n"
+"  -d --decimal_values          Tampilkan nilai ke berkas teks desimal\n"
+"  -e --extension=<extension>   Set header extension digunakan dalam menekspor berkas header\n"
+"  -F --target <target>         Spesifikasikan target keluaran untuk tipe endian.\n"
+"  -h --headerdir=<direktori>   Set direktori ekspor untuk header\n"
+"  -u --unicode_in              Baca berkas masukan sebagai berkas UTF16\n"
+"  -U --unicode_out             Tulis pesan binari sebagai UTF16\n"
+"  -m --maxlength=<nilai>       Set maksimal panjang pesan yang diijinkan\n"
+"  -n --nullterminate           Otomatis tambahkan sebuah nol ke string\n"
+"  -o --hresult_use             Gunakan definisi HRESULT daripada kode status definisi\n"
+"  -O --codepage_out=<nilai>    Set kode halaman digunakn untuk menulis berkas teks\n"
+"  -r --rcdir=<direktori>       Set direktori ekspor untuk berkas rc\n"
+"  -x --xdbg=<direktori>        Dimana untuk membuat berkas .dbg C include\n"
+"                               yang memetakan pesan ID ke nama simboliknya.\n"
+
+#: windmc.c:225
+#, c-format
+msgid ""
+"  -H --help                    Print this help message\n"
+"  -v --verbose                 Verbose - tells you what it's doing\n"
+"  -V --version                 Print version information\n"
+msgstr ""
+"  -H --help                    Tampilkan pesan bantuan ini\n"
+"  -v --verbose                 Verbose - Beritahu anda apa yang sedang dikerjakan\n"
+"  -V --version                 Tampilkan informasi versi\n"
+
+#: windmc.c:296 windres.c:415
+#, c-format
+msgid "%s: warning: "
+msgstr "%s: peringatan: "
+
+#: windmc.c:297
+#, c-format
+msgid "A codepage was specified switch ,%s' and UTF16.\n"
+msgstr "Sebuah kode halaman telah dispesifikasikan perpindahan ,%s' dan UTF16.\n"
+
+#: windmc.c:298
+#, c-format
+msgid "\tcodepage settings are ignored.\n"
+msgstr "\tkonfigurasi kode halaman diabaikan.\n"
+
+#: windmc.c:342
+msgid "try to add a ill language."
+msgstr "coba tambahkan sebuah bahasa sakit."
+
+#: windmc.c:1151
+#, c-format
+msgid "unable to open file ,%s' for input.\n"
+msgstr "tidak dapat membuka berkas, %s' untuk masukan.\n"
+
+#: windmc.c:1170
+msgid "input file does not seems to be UFT16.\n"
+msgstr "berkas masukan tidak dapat terlihat sebagai UTF16.\n"
+
+#: windres.c:220
+#, c-format
+msgid "can't open %s `%s': %s"
+msgstr "tidak dapat membuka %s `%s': %s"
+
+#: windres.c:394
+#, c-format
+msgid ": expected to be a directory\n"
+msgstr ": diduga sebuah direktori\n"
+
+#: windres.c:406
+#, c-format
+msgid ": expected to be a leaf\n"
+msgstr ": diduga sebuah daun\n"
+
+#: windres.c:417
+#, c-format
+msgid ": duplicate value\n"
+msgstr ": nilai terduplikasi\n"
+
+#: windres.c:567
+#, c-format
+msgid "unknown format type `%s'"
+msgstr "tipe format `%s' tidak diketahui"
+
+#: windres.c:568
+#, c-format
+msgid "%s: supported formats:"
+msgstr "%s: format yang didukung:"
+
+#. Otherwise, we give up.
+#: windres.c:651
+#, c-format
+msgid "can not determine type of file `%s'; use the -J option"
+msgstr "tidak dapat menentukan tipe dari berkas `%s'; gunakan opsi -J"
+
+#: windres.c:663
+#, c-format
+msgid "Usage: %s [option(s)] [input-file] [output-file]\n"
+msgstr "Penggunaan: %s [opsi] [berkas-masukan] [berkas-keluaran]\n"
+
+#: windres.c:665
+#, c-format
+msgid ""
+" The options are:\n"
+"  -i --input=<file>            Name input file\n"
+"  -o --output=<file>           Name output file\n"
+"  -J --input-format=<format>   Specify input format\n"
+"  -O --output-format=<format>  Specify output format\n"
+"  -F --target=<target>         Specify COFF target\n"
+"     --preprocessor=<program>  Program to use to preprocess rc file\n"
+"  -I --include-dir=<dir>       Include directory when preprocessing rc file\n"
+"  -D --define <sym>[=<val>]    Define SYM when preprocessing rc file\n"
+"  -U --undefine <sym>          Undefine SYM when preprocessing rc file\n"
+"  -v --verbose                 Verbose - tells you what it's doing\n"
+"  -c --codepage=<codepage>     Specify default codepage\n"
+"  -l --language=<val>          Set language when reading rc file\n"
+"     --use-temp-file           Use a temporary file instead of popen to read\n"
+"                               the preprocessor output\n"
+"     --no-use-temp-file        Use popen (default)\n"
+msgstr ""
+" Opsi adalah:\n"
+"  -i --input=<berkas>          Nama berkas masukan\n"
+"  -o --output=<berkas>         Nama berkas keluaran\n"
+"  -J --input-format=<format>   Spesifikasikan format masukan\n"
+"  -O --output-format=<format>  Spesifikasikan format keluaran\n"
+"  -F --target=<target>         Spesifikasikan target COFF\n"
+"     --preprocessor=<program>  Aplikasi yang digunakan untuk memproses berkas rc\n"
+"  -I --include-dir=<dir>       Masukan direktori ketika memproses berkas rc\n"
+"  -D --define <sym>[=<val>]    Definisikan SYM ketika memproses berkas rc\n"
+"  -U --undefine <sym>          Undefine SYM ketika memproses berkas rc\n"
+"  -v --verbose                 Verbose - beritahu anda apa yang sedang dikerjakan\n"
+"  -c --codepage=<codepage>     Spesifikasikan kode halaman baku\n"
+"  -l --language=<val>          Set bahasa ketika membaca berkas rc\n"
+"     --use-temp-file           Gunakan sebuah berkas sementara daripada popen untuk membaca\n"
+"                               keluaran preprosesor\n"
+"     --no-use-temp-file        Use popen (baku)\n"
+
+#: windres.c:682
+#, c-format
+msgid "     --yydebug                 Turn on parser debugging\n"
+msgstr "     --yydebug                 Aktifkan parse debugging\n"
+
+#: windres.c:685
+#, c-format
+msgid ""
+"  -r                           Ignored for compatibility with rc\n"
+"  @<file>                      Read options from <file>\n"
+"  -h --help                    Print this help message\n"
+"  -V --version                 Print version information\n"
+msgstr ""
+"  -r                           Mengabaikan untuk kompabilitas dengan rc\n"
+"  @<berkas>                    Baca opsi dari <berkas>\n"
+"  -h --help                    Tampilkan pesan bantuan ini\n"
+"  -V --version                 Tampilkan informasi versi\n"
+
+#: windres.c:690
+#, c-format
+msgid ""
+"FORMAT is one of rc, res, or coff, and is deduced from the file name\n"
+"extension if not specified.  A single file name is an input file.\n"
+"No input-file is stdin, default rc.  No output-file is stdout, default rc.\n"
+msgstr ""
+"FORMAR adalah salah satu dari rc, res, atau coff,, dan dideduksi dari nama berkas\n"
+"ekstensi jika tidak dispesifikasikan. Sebuah nama berkas tunggal adalah sebuah berkas masukan.\n"
+"Tidak ada berkas-masukan adalah stdin, default rc. Tidak ada berkas-keluaraan adalah stdout, default rc.\n"
+
+#: windres.c:848
+msgid "invalid codepage specified.\n"
+msgstr "kode halaman yang dispesifikasikan tidak valid.\n"
+
+#: windres.c:863
+msgid "invalid option -f\n"
+msgstr "opsi -f tidak valid\n"
+
+#: windres.c:868
+msgid "No filename following the -fo option.\n"
+msgstr "Tidak ada nama berkas yang mengikuti opsi -fo.\n"
+
+#: windres.c:927
+#, c-format
+msgid "Option -I is deprecated for setting the input format, please use -J instead.\n"
+msgstr "Opsi -I kadaluarsa untuk konfigurasi format masukan, tolong gunakan -J lebih baik.\n"
+
+#: windres.c:1037
+msgid "no resources"
+msgstr "tidak ada sumber daya"
+
+#: wrstabs.c:353 wrstabs.c:1916
+#, c-format
+msgid "string_hash_lookup failed: %s"
+msgstr "string_hash_lookup gagal: %s"
+
+#: wrstabs.c:636
+#, c-format
+msgid "stab_int_type: bad size %u"
+msgstr "stab_int_type: ukuran %u buruk"
+
+#: wrstabs.c:1394
+#, c-format
+msgid "%s: warning: unknown size for field `%s' in struct"
+msgstr "%s: peringatan: ukuran tidak diketahui untuk field `%s' dalam struktur"
diff --git a/binutils/po/sv.po b/binutils/po/sv.po
index 5f37fb5..9a0f707 100644
--- a/binutils/po/sv.po
+++ b/binutils/po/sv.po
@@ -1,235 +1,230 @@
 # Swedish messages for binutils.
 # Copyright (C) 2001, 2002 Free Software Foundation, Inc.
-# Tommy Pettersson <ptp@lysator.liu.se>, 2001, 2002.
+# Tommy Pettersson <ptp@lysator.liu.se>, 2001, 2002, 2004.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: binutils 2.12.1\n"
-"POT-Creation-Date: 2002-01-17 13:58+0000\n"
-"PO-Revision-Date: 2002-08-05 00:03+0200\n"
+"Project-Id-Version: binutils 2.14rel030712\n"
+"POT-Creation-Date: 2003-07-11 13:56+0930\n"
+"PO-Revision-Date: 2004-10-08 17:18+0200\n"
 "Last-Translator: Tommy Pettersson <ptp@lysator.liu.se>\n"
 "Language-Team: Swedish <sv@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#
-#: addr2line.c:73
+#: addr2line.c:74
 #, c-format
-msgid ""
-"Usage: %s [-CfsHV] [-b bfdname] [--target=bfdname]\n"
-"       [-e executable] [--exe=executable] [--demangle[=style]]\n"
-"       [--basenames] [--functions] [addr addr ...]\n"
-msgstr ""
-"Användning: %s [-CfsHV] [-b bfd-namn] [--target=bfd-namn]\n"
-"       [-e programfil] [--exe=programfil] [--demangle[=stil]]\n"
-"       [--basenames] [--functions] [adress adress ...]\n"
+msgid "Usage: %s [option(s)] [addr(s)]\n"
+msgstr "Användning: %s [flaggor] [adress(er)]]\n"
 
-#
-#: addr2line.c:80 ar.c:289 nlmconv.c:1121 objcopy.c:423 objcopy.c:455
-#: readelf.c:2181 size.c:91 strings.c:655 windres.c:737
+#: addr2line.c:75
+msgid " Convert addresses into line number/file name pairs.\n"
+msgstr " Konvertera adresser till radnummer/filnamn-par.\n"
+
+#: addr2line.c:76
+msgid " If no addresses are specified on the command line, they will be read from stdin\n"
+msgstr " Om inga adresser är valda på kommandoraden läses de från standard in\n"
+
+#: addr2line.c:77
+msgid ""
+" The options are:\n"
+"  -b --target=<bfdname>  Set the binary file format\n"
+"  -e --exe=<executable>  Set the input file name (default is a.out)\n"
+"  -s --basenames         Strip directory names\n"
+"  -f --functions         Show function names\n"
+"  -C --demangle[=style]  Demangle function names\n"
+"  -h --help              Display this information\n"
+"  -v --version           Display the program's version\n"
+"\n"
+msgstr ""
+" Flaggorna är:\n"
+"  -b --target=<bfdnamn>  Välj format på binärfilen\n"
+"  -e --exe=<körfil>      Ange infilens namn (standard är a.out)\n"
+"  -s --basenames         Visa inte katalognamn\n"
+"  -f --functions         Visa funktionsnamn\n"
+"  -C --demangle[=stil]   Avkoda manglade funktionsnamn\n"
+"  -h --help              Visa denna hjälp\n"
+"  -v --version           Visa programmets versionsinformation\n"
+"\n"
+
+#: addr2line.c:89 ar.c:297 coffdump.c:479 nlmconv.c:1121 objcopy.c:484
+#: objcopy.c:518 readelf.c:2649 size.c:104 srconv.c:1962 strings.c:673
+#: sysdump.c:774 windres.c:702
 #, c-format
 msgid "Report bugs to %s\n"
 msgstr ""
 "Rapportera fel till %s\n"
-"Skicka synpunkter på översättningen till sv@li.org\n"
+"Rapportera synpunkter på översättningen till sv@li.org\n"
 
-#
-#: addr2line.c:240
+#: addr2line.c:245
 #, c-format
 msgid "%s: can not get addresses from archive"
-msgstr "%s: kommer inte åt adresserna i arkivet"
+msgstr "%s: kommer inte åt adresserna i arkivet"
 
-#
-#: addr2line.c:312 nm.c:447 objdump.c:2800
+#: addr2line.c:317 nm.c:433 objdump.c:2693
 #, c-format
 msgid "unknown demangling style `%s'"
-msgstr "okänd avkodningsstil \"%s\""
+msgstr "okänd avkodningsstil \"%s\""
 
-#
-#: ar.c:237
+#: ar.c:238
 #, c-format
 msgid "no entry %s in archive\n"
 msgstr "ingen post %s i arkivet\n"
 
-#
-#: ar.c:254
+#: ar.c:255
 #, c-format
-msgid "Usage: %s [-X32_64] [-]{dmpqrstx}[abcfilNoPsSuvV] [member-name] [count] archive-file file...\n"
-msgstr "Användning: %s [-X32_64] [-]{dmpqrstx}[abcfilNoPsSuvV] [medlemsnamn] [nummer] arkivfil fil...\n"
+msgid "Usage: %s [emulation options] [-]{dmpqrstx}[abcfilNoPsSuvV] [member-name] [count] archive-file file...\n"
+msgstr "Användning: %s [emuleringsflaggor] [-]{dmpqrstx}[abcfilNoPsSuvV] [medlemsnamn] [nummer] arkivfil fil...\n"
 
-#
-#: ar.c:257
+#: ar.c:258
 #, c-format
 msgid "       %s -M [<mri-script]\n"
 msgstr "       %s -M [<mri-skript]\n"
 
-#
-#: ar.c:258
+#: ar.c:259
 msgid " commands:\n"
 msgstr " kommandon:\n"
 
-#
-#: ar.c:259
-msgid "  d            - delete file(s) from the archive\n"
-msgstr "  d            - ta bort fil(er) i arkivet\n"
-
-#
 #: ar.c:260
+msgid "  d            - delete file(s) from the archive\n"
+msgstr "  d            - radera fil(er) i arkivet\n"
+
+#: ar.c:261
 msgid "  m[ab]        - move file(s) in the archive\n"
 msgstr "  m[ab]        - flytta fil(er) i arkivet\n"
 
-#
-#: ar.c:261
-msgid "  p            - print file(s) found in the archive\n"
-msgstr "  p            - skriv ut fil(er) som påträffas i arkivet\n"
-
-#
 #: ar.c:262
+msgid "  p            - print file(s) found in the archive\n"
+msgstr "  p            - skriv ut fil(er) som påträffas i arkivet\n"
+
+#: ar.c:263
 msgid "  q[f]         - quick append file(s) to the archive\n"
 msgstr "  q[f]         - snabbfoga fil(er) till slutet av arkivet\n"
 
-#
-#: ar.c:263
-msgid "  r[ab][f][u]  - replace existing or insert new file(s) into the archive\n"
-msgstr "  r[ab][f][u]  - ersätt existerande eller infoga ny(a) fil(er) i arkivet\n"
-
-#
 #: ar.c:264
-msgid "  t            - display contents of archive\n"
-msgstr "  t            - visa innehållet i arkivet\n"
+msgid "  r[ab][f][u]  - replace existing or insert new file(s) into the archive\n"
+msgstr "  r[ab][f][u]  - ersätt existerande eller infoga ny(a) fil(er) i arkivet\n"
 
-#
 #: ar.c:265
-msgid "  x[o]         - extract file(s) from the archive\n"
-msgstr "  x[o]         - hämta fil(er) från arkivet\n"
+msgid "  t            - display contents of archive\n"
+msgstr "  t            - visa innehållet i arkivet\n"
 
-#
 #: ar.c:266
-msgid " command specific modifiers:\n"
-msgstr " modifierare specifika för kommandona:\n"
+msgid "  x[o]         - extract file(s) from the archive\n"
+msgstr "  x[o]         - hämta fil(er) från arkivet\n"
 
-#
 #: ar.c:267
+msgid " command specific modifiers:\n"
+msgstr " modifierare specifika för kommandona:\n"
+
+#: ar.c:268
 msgid "  [a]          - put file(s) after [member-name]\n"
 msgstr "  [a]          - infoga fil(er) efter [medlemsnamn]\n"
 
-#
-#: ar.c:268
-msgid "  [b]          - put file(s) before [member-name] (same as [i])\n"
-msgstr "  [b]          - infoga fil(er) före [medlemsnamn] (samma som [i])\n"
-
-#
 #: ar.c:269
-msgid "  [N]          - use instance [count] of name\n"
-msgstr "  [N]          - använd förekomst [nummer] av namn\n"
+msgid "  [b]          - put file(s) before [member-name] (same as [i])\n"
+msgstr "  [b]          - infoga fil(er) före [medlemsnamn] (samma som [i])\n"
 
-#
 #: ar.c:270
+msgid "  [N]          - use instance [count] of name\n"
+msgstr "  [N]          - använd förekomst [nummer] av namn\n"
+
+#: ar.c:271
 msgid "  [f]          - truncate inserted file names\n"
 msgstr "  [f]          - korta av infogade filnamn\n"
 
-#
-#: ar.c:271
-msgid "  [P]          - use full path names when matching\n"
-msgstr "  [P]          - använd fullständiga sökvägen vid jämförelser\n"
-
-#
 #: ar.c:272
+msgid "  [P]          - use full path names when matching\n"
+msgstr "  [P]          - mönsterpassa mot namnets hela sökväg\n"
+
+#: ar.c:273
 msgid "  [o]          - preserve original dates\n"
 msgstr "  [o]          - bevara ursprungliga datum\n"
 
-#
-#: ar.c:273
-msgid "  [u]          - only replace files that are newer than current archive contents\n"
-msgstr "  [u]          - ersätt bara filer som är nyare än i arkivet\n"
-
-#
 #: ar.c:274
+msgid "  [u]          - only replace files that are newer than current archive contents\n"
+msgstr "  [u]          - ersätt bara filer som är nyare än i arkivet\n"
+
+#: ar.c:275
 msgid " generic modifiers:\n"
 msgstr " generella modifierare:\n"
 
-#
-#: ar.c:275
-msgid "  [c]          - do not warn if the library had to be created\n"
-msgstr "  [c]          - varna inte om biblioteket måste skapas\n"
-
-#
 #: ar.c:276
-msgid "  [s]          - create an archive index (cf. ranlib)\n"
-msgstr "  [s]          - skapa ett index över arkivet (jfr. ranlib)\n"
+msgid "  [c]          - do not warn if the library had to be created\n"
+msgstr "  [c]          - varna inte om biblioteket måste skapas\n"
 
-#
 #: ar.c:277
-msgid "  [S]          - do not build a symbol table\n"
-msgstr "  [S]          - skapa inget index över arkivet\n"
+msgid "  [s]          - create an archive index (cf. ranlib)\n"
+msgstr "  [s]          - skapa ett index över arkivet (jfr. ranlib)\n"
 
-#
 #: ar.c:278
-msgid "  [v]          - be verbose\n"
-msgstr "  [v]          - var mångordig\n"
+msgid "  [S]          - do not build a symbol table\n"
+msgstr "  [S]          - skapa inget index över arkivet\n"
 
-#
 #: ar.c:279
+msgid "  [v]          - be verbose\n"
+msgstr "  [v]          - beskriv utförligt\n"
+
+#: ar.c:280
 msgid "  [V]          - display the version number\n"
 msgstr "  [V]          - visa versionsinformation\n"
 
-#
-#: ar.c:280
-msgid "  [-X32_64]    - (ignored)\n"
-msgstr "  [-X32_64]    - (ignorerad)\n"
-
-#
-#: ar.c:284
+#: ar.c:287
 #, c-format
-msgid "Usage: %s [-vV] archive\n"
-msgstr "Användning: %s [-vV] arkiv\n"
+msgid "Usage: %s [options] archive\n"
+msgstr "Användning: %s [flaggor] arkiv\n"
 
-#
-#: ar.c:505
+#: ar.c:288
+msgid " Generate an index to speed access to archives\n"
+msgstr " Generera ett index för att snabba upp uppslagningar i arkivet\n"
+
+#: ar.c:289
+msgid ""
+" The options are:\n"
+"  -h --help                    Print this help message\n"
+"  -V --version                 Print version information\n"
+msgstr ""
+" Flaggorna är:\n"
+"  --help                       Visa denna hjälp\n"
+"  --version                    Visa versionsinformation\n"
+
+#: ar.c:512
 msgid "two different operation options specified"
-msgstr "två olika kommandoflaggor angavs"
+msgstr "två olika kommandoflaggor gavs"
 
-#
-#: ar.c:580
+#: ar.c:587
 #, c-format
 msgid "illegal option -- %c"
-msgstr "otillåten flagga -- %c"
+msgstr "otillåten flagga -- %c"
 
-#
-#: ar.c:612
+#: ar.c:619
 msgid "no operation specified"
-msgstr "inget kommando angavs"
+msgstr "ingen kommandoflagga gavs"
 
-#
-#: ar.c:615
+#: ar.c:622
 msgid "`u' is only meaningful with the `r' option."
-msgstr "\"u\" är bara meningsfull tillsammans med flaggan \"r\"."
+msgstr "\"u\" är bara meningsfull tillsammans med \"r\"."
 
-#
-#: ar.c:625
+#: ar.c:632
 msgid "`N' is only meaningful with the `x' and `d' options."
-msgstr "\"N\" är bara meningsfull tillsammans med flaggan \"x\" eller \"d\"."
+msgstr "\"N\" är bara meningsfull tillsammans med \"x\" eller \"d\"."
 
-#
-#: ar.c:628
+#: ar.c:635
 msgid "Value for `N' must be positive."
-msgstr "Argument till \"N\" måste vara positivt."
+msgstr "Argumentet till \"N\" måste vara positivt."
 
-#
-#: ar.c:711
+#: ar.c:718
 #, c-format
 msgid "internal error -- this option not implemented"
-msgstr "internt fel -- denna flagga är inte implementerad"
+msgstr "internt fel -- flaggan är inte implementerad"
 
-#
-#: ar.c:830 ar.c:881 ar.c:1327 objcopy.c:1322
+#: ar.c:837 ar.c:888 ar.c:1333 objcopy.c:1579
 #, c-format
 msgid "internal stat error on %s"
-msgstr "internt stat-fel för %s"
+msgstr "internt stat-fel för %s"
 
-#
-#: ar.c:834
+#: ar.c:841
 #, c-format
 msgid ""
 "\n"
@@ -240,1487 +235,1269 @@
 "<medlem %s>\n"
 "\n"
 
-#
-#: ar.c:850 ar.c:918
+#: ar.c:857 ar.c:925
 #, c-format
 msgid "%s is not a valid archive"
-msgstr "%s är inte ett giltigt arkiv"
+msgstr "%s är inte ett giltigt arkiv"
 
-#
-#: ar.c:886
+#: ar.c:893
 #, c-format
 msgid "stat returns negative size for %s"
-msgstr "stat returnerar negativ storlek på %s"
+msgstr "stat returnerar negativ storlek på %s"
 
-#
-#: ar.c:1013
+#: ar.c:1020
 #, c-format
 msgid "%s is not an archive"
-msgstr "%s är inte ett arkiv"
+msgstr "%s är inte ett arkiv"
 
-#
-#: ar.c:1020
+#: ar.c:1027
 #, c-format
 msgid "creating %s"
 msgstr "skapar %s"
 
-#
-#: ar.c:1226
+#: ar.c:1233
 #, c-format
 msgid "No member named `%s'\n"
 msgstr "Ingen medlem heter \"%s\"\n"
 
-#
-#: ar.c:1278
+#: ar.c:1285
 #, c-format
 msgid "no entry %s in archive %s!"
 msgstr "ingen post %s i arkiv %s!"
 
-#
-# archive map verkar vara vad indexet kallas i källkoden
-#: ar.c:1439
+# archive map verkar vara vad indexet kallas i källkoden
+#: ar.c:1422
 #, c-format
 msgid "%s: no archive map to update"
-msgstr "%s: inget arkivindex att uppdatera"
+msgstr "%s: inget index att uppdatera"
 
-#
-#: arsup.c:88
+#: arsup.c:86
 #, c-format
 msgid "No entry %s in archive.\n"
 msgstr "Ingen post %s i arkivet.\n"
 
-#
-#: arsup.c:120
+#: arsup.c:117
 #, c-format
 msgid "Can't open file %s\n"
-msgstr "Kan inte öppna fil %s\n"
+msgstr "Kan inte öppna fil %s\n"
 
-#
-#: arsup.c:171
+#: arsup.c:172
 #, c-format
 msgid "%s: Can't open output archive %s\n"
-msgstr "%s: Kan inte öppna utdataarkiv %s\n"
+msgstr "%s: Kan inte öppna utdataakrivet %s\n"
 
-#
-#: arsup.c:183
-#, c-format
-msgid "%s: Can't open input archive %s\n"
-msgstr "%s: Kan inte öppna indataarkiv %s\n"
-
-#
 #: arsup.c:189
 #, c-format
-msgid "%s: file %s is not an archive\n"
-msgstr "%s: fil %s är inte ett arkiv\n"
+msgid "%s: Can't open input archive %s\n"
+msgstr "%s: Kan inte öppna indataarkivet %s\n"
 
-#
-#: arsup.c:230
+#: arsup.c:198
+#, c-format
+msgid "%s: file %s is not an archive\n"
+msgstr "%s: fil %s är inte ett arkiv\n"
+
+#: arsup.c:241
 #, c-format
 msgid "%s: no output archive specified yet\n"
-msgstr "%s: inget utdataarkiv angivet än\n"
+msgstr "%s: inget utdataarkiv anvisat än\n"
 
-#
-#: arsup.c:250 arsup.c:285 arsup.c:321 arsup.c:341 arsup.c:399
+#: arsup.c:262 arsup.c:301 arsup.c:343 arsup.c:364 arsup.c:430
 #, c-format
 msgid "%s: no open output archive\n"
-msgstr "%s: inget öppet utdataarkiv\n"
+msgstr "%s: inget öppet utdataarkiv\n"
 
-#
-#: arsup.c:258 arsup.c:359 arsup.c:379
+#: arsup.c:273 arsup.c:385 arsup.c:411
 #, c-format
 msgid "%s: can't open file %s\n"
-msgstr "%s: kan inte öppna fil %s\n"
+msgstr "%s: kan inte öppna fil %s\n"
 
-#
-# module file är detsamma som member
-#: arsup.c:306 arsup.c:375 arsup.c:454
+# module file är detsamma som member
+#: arsup.c:328 arsup.c:407 arsup.c:489
 #, c-format
 msgid "%s: can't find module file %s\n"
-msgstr "%s: hittar inte modulfil %s\n"
+msgstr "%s: hittar inte medlem %s\n"
 
-#
-#: arsup.c:406
+#: arsup.c:439
 #, c-format
 msgid "Current open archive is %s\n"
-msgstr "Det aktuella öppna arkivet är %s\n"
+msgstr "Det aktuella öppna arkivet är %s\n"
 
-#
-#  BUGG: dubbelt blanksteg
-#: arsup.c:433
+#: arsup.c:464
 #, c-format
-msgid "%s: no open  archive\n"
-msgstr "%s: inget öppet arkiv\n"
+msgid "%s: no open archive\n"
+msgstr "%s: inget öppet arkiv\n"
 
-#
-#: bucomm.c:106
+#: binemul.c:39
+#, c-format
+msgid "  No emulation specific options\n"
+msgstr "  Inga emuleringsspecifika flaggor\n"
+
+#. Macros for common output.
+#: binemul.h:52
+#, c-format
+msgid " emulation options: \n"
+msgstr "  emuleringsflaggor:\n"
+
+#: bucomm.c:113
 #, c-format
 msgid "can't set BFD default target to `%s': %s"
-msgstr "kan inte sätta BFD:s standardmål till \"%s\": %s"
+msgstr "kan inte sätta BFD:s standardmål till \"%s\": %s"
 
-#
-#: bucomm.c:118
+#: bucomm.c:125
 #, c-format
 msgid "%s: Matching formats:"
 msgstr "%s: Passande format:"
 
-#
-#: bucomm.c:135
+#: bucomm.c:142
 msgid "Supported targets:"
-msgstr "Mål som hanteras:"
+msgstr "Mål som hanteras:"
 
-#
-#: bucomm.c:137
+#: bucomm.c:144
 #, c-format
 msgid "%s: supported targets:"
-msgstr "%s: mål som hanteras:"
+msgstr "%s: mål som hanteras:"
 
-#
-#: bucomm.c:153
+#: bucomm.c:162
 msgid "Supported architectures:"
 msgstr "Arkitekturer som hanteras:"
 
-#
-#: bucomm.c:155
+#: bucomm.c:164
 #, c-format
 msgid "%s: supported architectures:"
 msgstr "%s: arkitekturer som hanteras:"
 
-#
-#: bucomm.c:262
+#: bucomm.c:360
+#, c-format
+msgid "BFD header file version %s\n"
+msgstr "BFD-huvudfil version %s\n"
+
+#: bucomm.c:467
 #, c-format
 msgid "%s: bad number: %s"
 msgstr "%s: felaktigt tal: %s"
 
-#
-#: coffdump.c:106
+#: coffdump.c:107
 #, c-format
 msgid "#lines %d "
 msgstr "#rader %d "
 
-#
-#: coffdump.c:468 sysdump.c:740
+#: coffdump.c:471 sysdump.c:767
 #, c-format
-msgid "%s: Print a human readable interpretation of a SYSROFF object file\n"
-msgstr "%s: Skriv en mänskligt läsbar tolkning av en SYSROFF-objektfil\n"
+msgid "Usage: %s [option(s)] in-file\n"
+msgstr "Användning: %s [flaggor] infil\n"
 
-#
-#: coffdump.c:531 srconv.c:2029 sysdump.c:799
+#: coffdump.c:472
+msgid " Print a human readable interpretation of a SYSROFF object file\n"
+msgstr " Skriv en mänskligt läsbar tolkning av en SYSROFF-objektfil\n"
+
+#: coffdump.c:473
+msgid ""
+" The options are:\n"
+"  -h --help              Display this information\n"
+"  -v --version           Display the program's version\n"
+"\n"
+msgstr ""
+" Flaggorna är:\n"
+"  -h --help              Visa denna hjälp\n"
+"  -v --version           Visa programmets versionsinformation\n"
+"\n"
+
+#: coffdump.c:541 srconv.c:2052 sysdump.c:831
 msgid "no input file specified"
-msgstr "ingen indatafil angavs"
+msgstr "ingen infil valdes"
 
-#
-#: debug.c:653
+#: debug.c:654
 msgid "debug_add_to_current_namespace: no current file"
 msgstr "debug_add_to_current_namespace: ingen aktuell fil"
 
-#
-#: debug.c:736
+#: debug.c:737
 msgid "debug_start_source: no debug_set_filename call"
 msgstr "debug_start_source: inget anrop till debug_set_filename"
 
-#
-#: debug.c:795
+#: debug.c:796
 msgid "debug_record_function: no debug_set_filename call"
 msgstr "debug_record_function: inget anrop till debug_set_filename"
 
-#
-#: debug.c:851
+#: debug.c:852
 msgid "debug_record_parameter: no current function"
 msgstr "debug_record_parameter: ingen aktuell funktion"
 
-#
-#: debug.c:885
+#: debug.c:886
 msgid "debug_end_function: no current function"
 msgstr "debug_end_function: ingen aktuell funktion"
 
-#
-#: debug.c:891
+#: debug.c:892
 msgid "debug_end_function: some blocks were not closed"
-msgstr "debug_end_function: några block avslutades inte"
+msgstr "debug_end_function: några block avslutades inte"
 
-#
-#: debug.c:921
+#: debug.c:922
 msgid "debug_start_block: no current block"
 msgstr "debug_start_block: inget aktuellt block"
 
-#
-#: debug.c:959
+#: debug.c:960
 msgid "debug_end_block: no current block"
 msgstr "debug_end_block: inget aktuellt block"
 
-#
-#: debug.c:966
+#: debug.c:967
 msgid "debug_end_block: attempt to close top level block"
-msgstr "debug_end_block: försök gjordes att avsluta yttersta blocket"
+msgstr "debug_end_block: försök gjordes att avsluta yttersta blocket"
 
-#
-#: debug.c:992
+#: debug.c:993
 msgid "debug_record_line: no current unit"
 msgstr "debug_record_line: ingen aktuell kompileringsenhet"
 
-#
 #. FIXME
-#: debug.c:1046
+#: debug.c:1047
 msgid "debug_start_common_block: not implemented"
 msgstr "debug_start_common_block: inte implementerat"
 
-#
 #. FIXME
-#: debug.c:1058
+#: debug.c:1059
 msgid "debug_end_common_block: not implemented"
 msgstr "debug_end_common_block: inte implementerat"
 
-#
-#  BUGG: Kolon saknas antagligen
 #. FIXME.
-#: debug.c:1152
-msgid "debug_record_label not implemented"
+#: debug.c:1153
+msgid "debug_record_label: not implemented"
 msgstr "debug_record_label: inte implementerat"
 
-#
-#: debug.c:1178
+#: debug.c:1179
 msgid "debug_record_variable: no current file"
 msgstr "debug_record_variable: ingen aktuell fil"
 
-#
-#: debug.c:1194
-msgid "debug_record_variable: no current block"
-msgstr "debug_record_variable: inget aktuellt block"
-
-#
-#: debug.c:1764
+#: debug.c:1762
 msgid "debug_make_undefined_type: unsupported kind"
-msgstr "debug_make_undefined_type: sorten kan inte hanteras"
+msgstr "debug_make_undefined_type: sorten hanteras inte"
 
-#
-#: debug.c:1970
+#: debug.c:1963
 msgid "debug_name_type: no current file"
 msgstr "debug_name_type: ingen aktuell fil"
 
-#
-#: debug.c:2018
+#: debug.c:2011
 msgid "debug_tag_type: no current file"
 msgstr "debug_tag_type: ingen aktuell fil"
 
-#
-#: debug.c:2026
+#: debug.c:2019
 msgid "debug_tag_type: extra tag attempted"
-msgstr "debug_tag_type: försök gjordes att sätta en extra tagg"
+msgstr "debug_tag_type: försök gjordes att sätta en extra tagg"
 
-#
-#: debug.c:2066
+#: debug.c:2058
 #, c-format
 msgid "Warning: changing type size from %d to %d\n"
-msgstr "Varning: ändrar datatypens storlek från %d till %d\n"
+msgstr "Varning: ändrar datatypens storlek från %d till %d\n"
 
-#
-#: debug.c:2090
+#: debug.c:2082
 msgid "debug_find_named_type: no current compilation unit"
 msgstr "debug_find_named_type: ingen aktuell kompileringsenhet"
 
-#
-#: debug.c:2197
+#: debug.c:2189
 #, c-format
 msgid "debug_get_real_type: circular debug information for %s\n"
-msgstr "debug_get_real_type: %s har cirkulär felsökningsinformation\n"
+msgstr "debug_get_real_type: %s har cirkulär felsökningsinformation\n"
 
-#
-#: debug.c:2662
+#: debug.c:2650
 msgid "debug_write_type: illegal type encountered"
-msgstr "debug_write_type: påträffade en ogiltig typ"
+msgstr "debug_write_type: påträffade en ogiltig typ"
 
-#
-#: dlltool.c:743 dlltool.c:768 dlltool.c:794
+#: dlltool.c:812 dlltool.c:837 dlltool.c:863
 #, c-format
 msgid "Internal error: Unknown machine type: %d"
-msgstr "Internt fel: Okänd maskintyp: %d"
+msgstr "Internt fel: Okänd maskintyp: %d"
 
-#
-#: dlltool.c:831
+#: dlltool.c:900
 #, c-format
 msgid "Can't open def file: %s"
-msgstr "Kan inte öppna def-fil: %s"
+msgstr "Kan inte öppna def-fil: %s"
 
-#
-# Här parsas def-filen bara, så den bearbetas inte
-#: dlltool.c:836
+#: dlltool.c:905
 #, c-format
 msgid "Processing def file: %s"
-msgstr "Behandlar def-fil: %s"
+msgstr "Bearbetar def-fil: %s"
 
-#
-#: dlltool.c:840
+#: dlltool.c:909
 msgid "Processed def file"
-msgstr "Def-filen är behandlad"
+msgstr "Def-filen är bearbetad"
 
-#
-#: dlltool.c:866
+#: dlltool.c:935
 #, c-format
 msgid "Syntax error in def file %s:%d"
 msgstr "Syntaktiskt fel i def-fil %s:%d"
 
-#
-#: dlltool.c:905
+#: dlltool.c:974
 #, c-format
 msgid "NAME: %s base: %x"
 msgstr "NAME: %s bas: %x"
 
-#
-#: dlltool.c:908 dlltool.c:927
+#: dlltool.c:977 dlltool.c:996
 msgid "Can't have LIBRARY and NAME"
-msgstr "Kan inte ha både LIBRARY och NAME"
+msgstr "Kan inte ha både LIBRARY och NAME"
 
-#
-#: dlltool.c:924
+#: dlltool.c:993
 #, c-format
 msgid "LIBRARY: %s base: %x"
 msgstr "LIBRARY: %s bas: %x"
 
-#
-#: dlltool.c:1182 resrc.c:271
+#: dlltool.c:1251 resrc.c:271
 #, c-format
 msgid "wait: %s"
 msgstr "wait: %s"
 
-#
-#: dlltool.c:1187 dllwrap.c:455 resrc.c:276
+#: dlltool.c:1256 dllwrap.c:430 resrc.c:276
 #, c-format
 msgid "subprocess got fatal signal %d"
-msgstr "barnprocessen fick fatal signal %d"
+msgstr "subprocessen fick fatal signal %d"
 
-#
-#: dlltool.c:1193 dllwrap.c:462 resrc.c:283
+#: dlltool.c:1262 dllwrap.c:437 resrc.c:283
 #, c-format
 msgid "%s exited with status %d"
 msgstr "%s avslutade med status %d"
 
-#
-#: dlltool.c:1225
+#: dlltool.c:1294
 #, c-format
 msgid "Sucking in info from %s section in %s"
-msgstr "Suger åt mig info från sektion %s i %s"
+msgstr "Suger åt mig info från sektion %s i %s"
 
-#
-#: dlltool.c:1349
+#: dlltool.c:1423
 #, c-format
 msgid "Excluding symbol: %s"
 msgstr "Undantar symbol: %s"
 
-#
-#: dlltool.c:1444 dlltool.c:1455 nm.c:958 nm.c:969 objdump.c:383 objdump.c:400
+#: dlltool.c:1518 dlltool.c:1529 nm.c:1004 nm.c:1015
 #, c-format
 msgid "%s: no symbols"
 msgstr "%s: inga symboler"
 
-#
-#. FIXME: we ought to read in and block out the base relocations
-#: dlltool.c:1482
+#. FIXME: we ought to read in and block out the base relocations.
+#: dlltool.c:1556
 #, c-format
 msgid "Done reading %s"
-msgstr "Klar med att läsa %s"
+msgstr "Klar med att läsa %s"
 
-#
-#: dlltool.c:1493
+#: dlltool.c:1567
 #, c-format
 msgid "Unable to open object file: %s"
-msgstr "Kan inte öppna objektfil: %s"
+msgstr "Kan inte öppna objektfil: %s"
 
-#
-#: dlltool.c:1496
+#: dlltool.c:1570
 #, c-format
 msgid "Scanning object file %s"
-msgstr "Genomsöker objektfil %s"
+msgstr "Avläser objektfil %s"
 
-#
-#: dlltool.c:1511
+#: dlltool.c:1585
 #, c-format
 msgid "Cannot produce mcore-elf dll from archive file: %s"
-msgstr "Kan inte producera en mcore-elf-dll från arkivfil: %s"
+msgstr "Kan inte producera en mcore-elf-dll från arkivfil: %s"
 
-#
-#: dlltool.c:1603
+#: dlltool.c:1677
 msgid "Adding exports to output file"
-msgstr "Lägger till exporter till utdatafilen"
+msgstr "Lägger till exporter till utfilen"
 
-#
-#: dlltool.c:1648
+#: dlltool.c:1724
 msgid "Added exports to output file"
-msgstr "La till exporter till utdatafilen"
+msgstr "La till exporter till utfilen"
 
-#
-#: dlltool.c:1772
+#: dlltool.c:1848
 #, c-format
 msgid "Generating export file: %s"
 msgstr "Genererar exportfil: %s"
 
-#
-#: dlltool.c:1777
+#: dlltool.c:1853
 #, c-format
 msgid "Unable to open temporary assembler file: %s"
-msgstr "Kan inte öppna temporär assemblerfil: %s"
+msgstr "Kan inte öppna temporär assemblerfil: %s"
 
-#
-#: dlltool.c:1780
+#: dlltool.c:1856
 #, c-format
 msgid "Opened temporary file: %s"
-msgstr "Öppnade temporär fil: %s"
+msgstr "Öppnade temporär fil: %s"
 
-#
-#: dlltool.c:2004
+#: dlltool.c:2086
 msgid "Generated exports file"
 msgstr "Genererade exportfil"
 
-#
-#: dlltool.c:2266
+#: dlltool.c:2378
 #, c-format
 msgid "bfd_open failed open stub file: %s"
-msgstr "bfd_open misslyckades att öppna stubbfil: %s"
+msgstr "bfd_open lyckades inte öppna stubbfil: %s"
 
-#
-#: dlltool.c:2269
+#: dlltool.c:2381
 #, c-format
 msgid "Creating stub file: %s"
 msgstr "Skapar stubbfil: %s"
 
-#
-#: dlltool.c:2658
+#: dlltool.c:2766
 #, c-format
 msgid "failed to open temporary head file: %s"
-msgstr "misslyckades att öppna temporär huvudfil: %s"
+msgstr "lyckades inte öppna temporär huvudfil: %s"
 
-#
-#: dlltool.c:2717
+#: dlltool.c:2825
 #, c-format
 msgid "failed to open temporary tail file: %s"
-msgstr "misslyckades att öppna temporär svansfil: %s"
+msgstr "lyckades inte öppna temporär svansfil: %s"
 
-#
-#: dlltool.c:2785
+#: dlltool.c:2892
 #, c-format
 msgid "Can't open .lib file: %s"
-msgstr "Kan inte öppna .lib-fil: %s"
+msgstr "Kan inte öppna .lib-fil: %s"
 
-#
-#: dlltool.c:2788
+#: dlltool.c:2895
 #, c-format
 msgid "Creating library file: %s"
 msgstr "Skapar biblioteksfil: %s"
 
-#
-#: dlltool.c:2847
+#: dlltool.c:2951
 #, c-format
 msgid "cannot delete %s: %s"
-msgstr "kan inte ta bort %s: %s"
+msgstr "kan inte radera %s: %s"
 
-#
-#: dlltool.c:2851
+#: dlltool.c:2955
 msgid "Created lib file"
 msgstr "Skapade biblioteksfilen"
 
-#
-#: dlltool.c:2956
+#: dlltool.c:3062
 #, c-format
 msgid "Warning, ignoring duplicate EXPORT %s %d,%d"
 msgstr "Varning, ignorerar dubbel EXPORT %s %d,%d"
 
-#
-#: dlltool.c:2962
+#: dlltool.c:3068
 #, c-format
 msgid "Error, duplicate EXPORT with oridinals: %s"
 msgstr "Fel, dubbel EXPORT med ordningstal: %s"
 
-#
-# Här bearbetas definitionerna (sorteras bl.a.)
-#: dlltool.c:3089
+#: dlltool.c:3191
 msgid "Processing definitions"
 msgstr "Bearbetar definitioner"
 
-#
-#: dlltool.c:3127
+#: dlltool.c:3223
 msgid "Processed definitions"
-msgstr "Definitionerna är bearbetade"
+msgstr "Definitionerna är bearbetade"
 
-#
-#  BUGG: Kolon fattas
 #. xgetext:c-format
-#: dlltool.c:3138 dllwrap.c:519
+#: dlltool.c:3234 dllwrap.c:495
 #, c-format
-msgid "Usage %s <options> <object-files>\n"
-msgstr "Användning: %s <flaggor> <objektfiler>\n"
+msgid "Usage %s <option(s)> <object-file(s)>\n"
+msgstr "Användning: %s <flaggor> <objektfil(er)>\n"
 
-#
 #. xgetext:c-format
-#: dlltool.c:3140
+#: dlltool.c:3236
 #, c-format
 msgid "   -m --machine <machine>    Create as DLL for <machine>.  [default: %s]\n"
-msgstr "   -m --machine <maskin>     Skapa som DLL för <maskin>.  [förval: %s]\n"
+msgstr "   -m --machine <maskin>     Skapa som DLL för <maskin>.  [förval: %s]\n"
 
-#
-#: dlltool.c:3141
+#: dlltool.c:3237
 msgid "        possible <machine>: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"
-msgstr "        möjliga <maskin>: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"
+msgstr "        möjliga <maskin>: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"
 
-#
-#: dlltool.c:3142
+#: dlltool.c:3238
 msgid "   -e --output-exp <outname> Generate an export file.\n"
 msgstr "   -e --output-exp <utnamn> Generera en exportfil.\n"
 
-#
-#: dlltool.c:3143
+#: dlltool.c:3239
 msgid "   -l --output-lib <outname> Generate an interface library.\n"
-msgstr "   -l --output-lib <utnamn> Generera ett gränssnittsbibliotek.\n"
+msgstr "   -l --output-lib <utnamn> Generera ett gränssnittsbibliotek.\n"
 
-#
-#: dlltool.c:3144
+#: dlltool.c:3240
 msgid "   -a --add-indirect         Add dll indirects to export file.\n"
-msgstr "   -a --add-indirect         Lägg till indirekta dll till exportfilen.\n"
+msgstr "   -a --add-indirect         Lägg till indirekta dll till exportfilen.\n"
 
-#
-#: dlltool.c:3145
+#: dlltool.c:3241
 msgid "   -D --dllname <name>       Name of input dll to put into interface lib.\n"
-msgstr "   -D --dllname <namn>       Namn på indata-dll att infoga i gränssnittsbiblioteket.\n"
+msgstr "   -D --dllname <namn>       Namn på indata-dll att infoga i gränssnittsbiblioteket.\n"
 
-#
-#: dlltool.c:3146
+#: dlltool.c:3242
 msgid "   -d --input-def <deffile>  Name of .def file to be read in.\n"
-msgstr "   -d --input-def <def-fil>  Namn på .def-fil att läsa in.\n"
+msgstr "   -d --input-def <def-fil>  Namn på .def-fil att läsa in.\n"
 
-#
-#: dlltool.c:3147
+#: dlltool.c:3243
 msgid "   -z --output-def <deffile> Name of .def file to be created.\n"
-msgstr "   -z --output-def <def-fil> Namn på .def-fil att skapa.\n"
+msgstr "   -z --output-def <def-fil> Namn på .def-fil att skapa.\n"
 
-#
-#: dlltool.c:3148
+#: dlltool.c:3244
 msgid "      --export-all-symbols   Export all symbols to .def\n"
 msgstr "      --export-all-symbols   Exportera alla symboler till .def\n"
 
-#
-#  Följande sträng har den beskrivande delen indenterad två tecken
-#  extra i den engelska texten för att två flaggor är för långa. I den
-#  svenska översättningen är de indenterade tre tecken extra för att
-#  den ena flaggan blev ytterligare ett tecken för lång.
-#: dlltool.c:3149
+#  Följande sträng har den beskrivande delen indenterad två tecken
+#  extra i den engelska texten för att två flaggor är för långa. I den
+#  svenska översättningen är de indenterade tre tecken extra för att
+#  den ena flaggan blev ytterligare ett tecken för lång.
+#: dlltool.c:3245
 msgid "      --no-export-all-symbols  Only export listed symbols\n"
 msgstr "      --no-export-all-symbols   Exportera endast anvisade symboler\n"
 
-#
-#  Följande sträng har den beskrivande delen indenterad två tecken
-#  extra i den engelska texten för att två flaggor är för långa. I den
-#  svenska översättningen är de indenterade tre tecken extra för att
-#  den ena flaggan blev ytterligare ett tecken för lång.
-#: dlltool.c:3150
+#  Följande sträng har den beskrivande delen indenterad två tecken
+#  extra i den engelska texten för att två flaggor är för långa. I den
+#  svenska översättningen är de indenterade tre tecken extra för att
+#  den ena flaggan blev ytterligare ett tecken för lång.
+#: dlltool.c:3246
 msgid "      --exclude-symbols <list> Don't export <list>\n"
 msgstr "      --exclude-symbols <lista> Exportera inte symboler i <lista>\n"
 
-#
-#: dlltool.c:3151
+#: dlltool.c:3247
 msgid "      --no-default-excludes  Clear default exclude symbols\n"
-msgstr "      --no-default-excludes  Inga automatiskt undantagna symboler\n"
+msgstr "      --no-default-excludes  Låt bli att inte exportera vissa standardsymboler\n"
 
-#
-#: dlltool.c:3152
+#: dlltool.c:3248
 msgid "   -b --base-file <basefile> Read linker generated base file.\n"
-msgstr "   -b --base-file <basfil>   Läs den länkargenererade basfilen.\n"
+msgstr "   -b --base-file <basfil>   Läs den länkgenererade basfilen.\n"
 
-#
-#: dlltool.c:3153
+#: dlltool.c:3249
 msgid "   -x --no-idata4            Don't generate idata$4 section.\n"
 msgstr "   -x --no-idata4            Generera ingen idata$4-sektion.\n"
 
-#
-#: dlltool.c:3154
+#: dlltool.c:3250
 msgid "   -c --no-idata5            Don't generate idata$5 section.\n"
 msgstr "   -c --no-idata5            Generera ingen idata$5-sektion.\n"
 
-#
-#: dlltool.c:3155
+#: dlltool.c:3251
 msgid "   -U --add-underscore       Add underscores to symbols in interface library.\n"
-msgstr "   -U --add-underscore       Lägg till understreck på symboler i gränssnittsbiblioteket.\n"
+msgstr "   -U --add-underscore       Sätt dit understreck på symboler i gränssnittsbiblioteket.\n"
 
-#
-#: dlltool.c:3156
+#: dlltool.c:3252
 msgid "   -k --kill-at              Kill @<n> from exported names.\n"
-msgstr "   -k --kill-at              Utplåna @<n> från exporterade namn.\n"
+msgstr "   -k --kill-at              Utplåna @<n> från exporterade namn.\n"
 
-#
-#: dlltool.c:3157
+#: dlltool.c:3253
 msgid "   -A --add-stdcall-alias    Add aliases without @<n>.\n"
-msgstr "   -A --add-stdcall-alias    Lägg till alias utan @<n>.\n"
+msgstr "   -A --add-stdcall-alias    Tillför alias utan @<n>.\n"
 
-#
-#: dlltool.c:3158
+#: dlltool.c:3254
 msgid "   -S --as <name>            Use <name> for assembler.\n"
-msgstr "   -S --as <namn>            Använd <namn> som assemblerare.\n"
+msgstr "   -S --as <namn>            Använd <namn> som assemblerare.\n"
 
-#
-#: dlltool.c:3159
+#: dlltool.c:3255
 msgid "   -f --as-flags <flags>     Pass <flags> to the assembler.\n"
 msgstr "   -f --as-flags <flaggor>   Skicka <flaggor> till assembleraren.\n"
 
-#
-#: dlltool.c:3160
+#: dlltool.c:3256
 msgid "   -C --compat-implib        Create backward compatible import library.\n"
-msgstr "   -C --compat-implib        Skapa bakåtkompatibelt importbibliotek.\n"
+msgstr "   -C --compat-implib        Skapa bakåtkompatibelt importbibliotek.\n"
 
-#
-#: dlltool.c:3161
+#: dlltool.c:3257
 msgid "   -n --no-delete            Keep temp files (repeat for extra preservation).\n"
-msgstr "   -n --no-delete            Behåll temp.-filer (repetera för ökat antal).\n"
+msgstr "   -n --no-delete            Behåll temporärfiler (repetera för ökat antal).\n"
 
-#
-#: dlltool.c:3162
+#: dlltool.c:3258
 msgid "   -v --verbose              Be verbose.\n"
-msgstr "   -v --verbose              Var mångordig.\n"
+msgstr "   -v --verbose              Beskriv utförligt.\n"
 
-#
-#: dlltool.c:3163
+#: dlltool.c:3259
 msgid "   -V --version              Display the program version.\n"
 msgstr "   -V --version              Visa versionsinformation om programmet.\n"
 
-#
-#: dlltool.c:3164
+#: dlltool.c:3260
 msgid "   -h --help                 Display this information.\n"
-msgstr "   -h --help                 Visa den här informationen.\n"
+msgstr "   -h --help                 Visa den här informationen.\n"
 
-#
-#: dlltool.c:3166
+#: dlltool.c:3262
 msgid "   -M --mcore-elf <outname>  Process mcore-elf object files into <outname>.\n"
 msgstr "   -M --mcore-elf <utnamn>   Behandla mcore-elf-objektfiler till <utnamn>.\n"
 
-#
-#: dlltool.c:3167
+#: dlltool.c:3263
 msgid "   -L --linker <name>        Use <name> as the linker.\n"
-msgstr "   -L --linker <namn>        Använd <namn> som länkare.\n"
+msgstr "   -L --linker <namn>        Använd <namn> som länkare.\n"
 
-#
-#  Justeringen blir fel här för flaggan är för lång.
-#: dlltool.c:3168
+#  Indenteringen blir fel här för <flaggor> är för lång.
+#: dlltool.c:3264
 msgid "   -F --linker-flags <flags> Pass <flags> to the linker.\n"
-msgstr "   -F --linker-flags <flaggor> Skicka <flaggor> till länkaren.\n"
+msgstr "   -F --linker-flags <flaggor> Skicka <flaggor> till länkaren.\n"
 
-#
-#: dlltool.c:3315
+#: dlltool.c:3418
 #, c-format
 msgid "Unable to open base-file: %s"
-msgstr "Kan inte öppna basfilen: %s"
+msgstr "Kan inte öppna basfilen: %s"
 
-#
-#: dlltool.c:3344
+#: dlltool.c:3450
 #, c-format
 msgid "Machine '%s' not supported"
 msgstr "Maskin \"%s\" hanteras inte"
 
-#
-#: dlltool.c:3447 dllwrap.c:240
+#: dlltool.c:3553 dllwrap.c:214
 #, c-format
 msgid "Tried file: %s"
 msgstr "Provade fil: %s"
 
-#
-#: dlltool.c:3454 dllwrap.c:247
+#: dlltool.c:3560 dllwrap.c:221
 #, c-format
 msgid "Using file: %s"
-msgstr "Använder fil: %s"
+msgstr "Använder fil: %s"
 
-#
-#: dllwrap.c:334
+#: dllwrap.c:308
 #, c-format
 msgid "Keeping temporary base file %s"
-msgstr "Behåller temporär basfil %s"
+msgstr "Behåller temporär basfil %s"
 
-#
-#: dllwrap.c:336
+#: dllwrap.c:310
 #, c-format
 msgid "Deleting temporary base file %s"
-msgstr "Tar bort temporär basfil %s"
+msgstr "Tar bort temporär basfil %s"
 
-#
-#: dllwrap.c:350
+#: dllwrap.c:324
 #, c-format
 msgid "Keeping temporary exp file %s"
-msgstr "Behåller temporär exportfil %s"
+msgstr "Behåller temporär exportfil %s"
 
-#
-#: dllwrap.c:352
+#: dllwrap.c:326
 #, c-format
 msgid "Deleting temporary exp file %s"
-msgstr "Tar bort temporär exportfil %s"
+msgstr "Tar bort temporär exportfil %s"
 
-#
-#: dllwrap.c:365
+#: dllwrap.c:339
 #, c-format
 msgid "Keeping temporary def file %s"
-msgstr "Behåller temporär def-fil %s"
+msgstr "Behåller temporär def-fil %s"
 
-#
-#: dllwrap.c:367
+#: dllwrap.c:341
 #, c-format
 msgid "Deleting temporary def file %s"
-msgstr "Tar bort temporär def-fil %s"
+msgstr "Tar bort temporär def-fil %s"
 
-#
-#: dllwrap.c:520
+#: dllwrap.c:496
 msgid "  Generic options:\n"
 msgstr "  Generella flaggor:\n"
 
-#
-#: dllwrap.c:521
+#: dllwrap.c:497
 msgid "   --quiet, -q            Work quietly\n"
 msgstr "   --quiet, -q            Arbeta under tystnad\n"
 
-#
-#: dllwrap.c:522
+#: dllwrap.c:498
 msgid "   --verbose, -v          Verbose\n"
-msgstr "   --verbose, -v          Mångordig\n"
+msgstr "   --verbose, -v          Utförlig\n"
 
-#
-#: dllwrap.c:523
+#: dllwrap.c:499
 msgid "   --version              Print dllwrap version\n"
-msgstr "   --version              Visa versionsinformation för dllwrap\n"
+msgstr "   --version              Visa versionsinformation för dllwrap\n"
 
-#
-#: dllwrap.c:524
+#: dllwrap.c:500
 msgid "   --implib <outname>     Synonym for --output-lib\n"
-msgstr "   --implib <utnamn>      Synonym för --output-lib\n"
+msgstr "   --implib <utnamn>      Synonym för --output-lib\n"
 
-#
-#: dllwrap.c:525
+#: dllwrap.c:501
 #, c-format
 msgid "  Options for %s:\n"
-msgstr "  Flaggor för %s:\n"
+msgstr "  Flaggor för %s:\n"
 
-#
-#: dllwrap.c:526
+#: dllwrap.c:502
 msgid "   --driver-name <driver> Defaults to \"gcc\"\n"
-msgstr "   --driver-name <enhet>  Förvald till \"gcc\"\n"
+msgstr "   --driver-name <enhet>  Förvald till \"gcc\"\n"
 
-#
-#: dllwrap.c:527
+#: dllwrap.c:503
 msgid "   --driver-flags <flags> Override default ld flags\n"
-msgstr "   --driver-flags <flaggor> Förbigå förvalda flaggor för ld\n"
+msgstr "   --driver-flags <flaggor> Förbigå förvalda flaggor för ld\n"
 
-#
-#: dllwrap.c:528
+#: dllwrap.c:504
 msgid "   --dlltool-name <dlltool> Defaults to \"dlltool\"\n"
-msgstr "   --dlltool-name <dllverktyg> Förvalt till \"dlltool\"\n"
+msgstr "   --dlltool-name <dllverktyg> Förvalt till \"dlltool\"\n"
 
-#
-#: dllwrap.c:529
+#: dllwrap.c:505
 msgid "   --entry <entry>        Specify alternate DLL entry point\n"
-msgstr "   --entry <ingång>       Ange alternativ ingångspunkt i DLL:en\n"
+msgstr "   --entry <ingång>       Ge alternativ ingångspunkt i DLL:en\n"
 
-#
-#: dllwrap.c:530
+#: dllwrap.c:506
 msgid "   --image-base <base>    Specify image base address\n"
-msgstr "   --image-base <bas>     Ange bildens basadress\n"
+msgstr "   --image-base <bas>     Ge avbildens basadress\n"
 
-#
-#: dllwrap.c:531
+#: dllwrap.c:507
 msgid "   --target <machine>     i386-cygwin32 or i386-mingw32\n"
 msgstr "   --target <maskin>      i386-cygwin32 eller i386-mingw32\n"
 
-#
-#: dllwrap.c:532
+#: dllwrap.c:508
 msgid "   --dry-run              Show what needs to be run\n"
-msgstr "   --dry-run              Gör inget annat än att visa vad som måste köras\n"
+msgstr "   --dry-run              Visa endast vad som behöver göras, verkställ inte\n"
 
-#
-#: dllwrap.c:533
+#: dllwrap.c:509
 msgid "   --mno-cygwin           Create Mingw DLL\n"
 msgstr "   --mno-cygwin           Skapa Mingw-DLL\n"
 
-#
-#: dllwrap.c:534
+#: dllwrap.c:510
 msgid "  Options passed to DLLTOOL:\n"
 msgstr "  Flaggor som skickas till DLLVERKTYG:\n"
 
-#
-#: dllwrap.c:535
+#: dllwrap.c:511
 msgid "   --machine <machine>\n"
 msgstr "   --machine <maskin>\n"
 
-#
-#: dllwrap.c:536
+#: dllwrap.c:512
 msgid "   --output-exp <outname> Generate export file.\n"
 msgstr "   --output-exp <utnamn>  Generera exportfil.\n"
 
-#
-#: dllwrap.c:537
+#: dllwrap.c:513
 msgid "   --output-lib <outname> Generate input library.\n"
 msgstr "   --output-lib <utnamn>  Generera indatabibliotek.\n"
 
-#
-#: dllwrap.c:538
+#: dllwrap.c:514
 msgid "   --add-indirect         Add dll indirects to export file.\n"
-msgstr "   --add-indirect         Lägg till indirekta dll till exportfilen.\n"
+msgstr "   --add-indirect         Lägg till indirekta dll till exportfilen.\n"
 
-#
-#: dllwrap.c:539
+#: dllwrap.c:515
 msgid "   --dllname <name>       Name of input dll to put into output lib.\n"
-msgstr "   --dllname <namn>       Namn på indata-dll som ska infogas i utdatabiblioteket.\n"
+msgstr "   --dllname <namn>       Namn på indata-dll som ska infogas i utdatabiblioteket.\n"
 
-#
-#: dllwrap.c:540
+#: dllwrap.c:516
 msgid "   --def <deffile>        Name input .def file\n"
-msgstr "   --def <deffil>         Namnge .def-indatafilen\n"
+msgstr "   --def <deffil>         Välj .def-infil\n"
 
-#
-#: dllwrap.c:541
+#: dllwrap.c:517
 msgid "   --output-def <deffile> Name output .def file\n"
-msgstr "   --output-def <deffil>  Namnge .def-utdatafilen\n"
+msgstr "   --output-def <deffil>  Välj .def-utfil\n"
 
-#
-#: dllwrap.c:542
+#: dllwrap.c:518
 msgid "   --export-all-symbols     Export all symbols to .def\n"
 msgstr "   --export-all-symbols     Exportera alla symboler till .def\n"
 
-#
-#: dllwrap.c:543
+#: dllwrap.c:519
 msgid "   --no-export-all-symbols  Only export .drectve symbols\n"
 msgstr "   --no-export-all-symbols  Exportera endast .drectve-symboler\n"
 
-#
-#: dllwrap.c:544
+#: dllwrap.c:520
 msgid "   --exclude-symbols <list> Exclude <list> from .def\n"
-msgstr "   --exclude-symbols <lista> Undanta symbolerna i <lista> från .def\n"
+msgstr "   --exclude-symbols <lista> Undanta symbolerna i <lista> från .def\n"
 
-#
-#: dllwrap.c:545
+#: dllwrap.c:521
 msgid "   --no-default-excludes    Zap default exclude symbols\n"
-msgstr "   --no-default-excludes    Inga automatiskt undantagna symboler\n"
+msgstr "   --no-default-excludes    Bortse från förvalt undantagna symboler\n"
 
-#
-#: dllwrap.c:546
+#: dllwrap.c:522
 msgid "   --base-file <basefile> Read linker generated base file\n"
-msgstr "   --base-file <basfil>   Läs länkargenererad basfil\n"
+msgstr "   --base-file <basfil>   Läs den länkgenererad basfil\n"
 
-#
-#: dllwrap.c:547
+#: dllwrap.c:523
 msgid "   --no-idata4           Don't generate idata$4 section\n"
 msgstr "   --no-idata4           Generera ingen idata$4-sektion\n"
 
-#
-#: dllwrap.c:548
+#: dllwrap.c:524
 msgid "   --no-idata5           Don't generate idata$5 section\n"
 msgstr "   --no-idata5           Generera ingen idata$5-sektion\n"
 
-#
-#: dllwrap.c:549
+#: dllwrap.c:525
 msgid "   -U                     Add underscores to .lib\n"
-msgstr "   -U                     Lägg till understreck i .lib\n"
+msgstr "   -U                     Sätt dit understreck i .lib\n"
 
-#
-#: dllwrap.c:550
+#: dllwrap.c:526
 msgid "   -k                     Kill @<n> from exported names\n"
-msgstr "   -k                     Utplåna @<n> från exporterade namn\n"
+msgstr "   -k                     Utplåna @<n> från exporterade namn\n"
 
-#
-#: dllwrap.c:551
+#: dllwrap.c:527
 msgid "   --add-stdcall-alias    Add aliases without @<n>\n"
-msgstr "   --add-stdcall-alias    Lägg till alias utan @<n>\n"
+msgstr "   --add-stdcall-alias    Tillför alias utan @<n>\n"
 
-#
-#: dllwrap.c:552
+#: dllwrap.c:528
 msgid "   --as <name>            Use <name> for assembler\n"
-msgstr "   --as <namn>            Använd <namn> som assemblerare\n"
+msgstr "   --as <namn>            Använd <namn> som assemblerare\n"
 
-#
-#: dllwrap.c:553
+#: dllwrap.c:529
 msgid "   --nodelete             Keep temp files.\n"
-msgstr "   --nodelete             Behåll temporära filer.\n"
+msgstr "   --nodelete             Behåll temporära filer.\n"
 
-#
-#: dllwrap.c:554
+#: dllwrap.c:530
 msgid "  Rest are passed unmodified to the language driver\n"
-msgstr "  Övriga flaggor skickas oförändrade till programspråksenheten\n"
+msgstr "  Övriga flaggor skickas oförändrade till programspråksenheten\n"
 
-#
-#: dllwrap.c:824
+#: dllwrap.c:802
 msgid "Must provide at least one of -o or --dllname options"
-msgstr "Ange minst en av flaggorna -o eller --dllname"
+msgstr "Du måste ange minst en av flaggorna -o och --dllname"
 
-#
-#: dllwrap.c:852
+#: dllwrap.c:830
 msgid ""
 "no export definition file provided.\n"
 "Creating one, but that may not be what you want"
 msgstr ""
-"ingen export-definitionsfil angavs.\n"
-"En sådan skapas, men det är kanske inte vad du vill"
+"ingen export-definitionsfil gavs.\n"
+"En sådan skapas, men det är kanske inte vad du vill"
 
-#
-# Indenteringen är ökad för att översättningen ska få plats framför
-# kolonet på alla 4 strängar.
-#: dllwrap.c:1014
+# Indenteringen är ökad för att översättningen ska få plats framför
+# kolonet på alla 4 strängar.
+#: dllwrap.c:992
 #, c-format
 msgid "DLLTOOL name    : %s\n"
 msgstr "DLLVERKTYG namn   : %s\n"
 
-#
-# Indenteringen är ökad för att översättningen ska få plats framför
-# kolonet på alla 4 strängar.
-#: dllwrap.c:1015
+# Indenteringen är ökad för att översättningen ska få plats framför
+# kolonet på alla 4 strängar.
+#: dllwrap.c:993
 #, c-format
 msgid "DLLTOOL options : %s\n"
 msgstr "DLLVERKTYG flaggor: %s\n"
 
-#
-# Indenteringen är ökad för att översättningen ska få plats framför
-# kolonet på alla 4 strängar.
-#: dllwrap.c:1016
+# Indenteringen är ökad för att översättningen ska få plats framför
+# kolonet på alla 4 strängar.
+#: dllwrap.c:994
 #, c-format
 msgid "DRIVER name     : %s\n"
-msgstr "DRIVRUTIN namn    : %s\n"
+msgstr "ENHET namn        : %s\n"
 
-#
-# Indenteringen är ökad för att översättningen ska få plats framför
-# kolonet på alla 4 strängar.
-#: dllwrap.c:1017
+# Indenteringen är ökad för att översättningen ska få plats framför
+# kolonet på alla 4 strängar.
+#: dllwrap.c:995
 #, c-format
 msgid "DRIVER options  : %s\n"
-msgstr "DRIVRUTIN flaggor : %s\n"
+msgstr "ENHET flaggor     : %s\n"
 
-#
-#: ieee.c:317
+#: emul_aix.c:58
+#, c-format
+msgid "  [-g]         - 32 bit small archive\n"
+msgstr "  [-g]         - 32-bitars litet arkiv\n"
+
+#: emul_aix.c:59
+msgid "  [-X32]       - ignores 64 bit objects\n"
+msgstr "  [-X32]       - ignorerar 64-bitarsobjekt\n"
+
+#: emul_aix.c:60
+msgid "  [-X64]       - ignores 32 bit objects\n"
+msgstr "  [-X64]       - ignorerar 32-bitarsobject\n"
+
+#: emul_aix.c:61
+msgid "  [-X32_64]    - accepts 32 and 64 bit objects\n"
+msgstr "  [-X32_64]    - accepterar 32- och 64-bitarsobjekt\n"
+
+#: ieee.c:326
 msgid "unexpected end of debugging information"
-msgstr "oväntat slut på felsökningsinformationen"
+msgstr "oväntat slut på felsökningsinformationen"
 
-#
-#: ieee.c:412
+#: ieee.c:421
 msgid "invalid number"
 msgstr "ogiltigt tal"
 
-#
-#: ieee.c:471
+#: ieee.c:480
 msgid "invalid string length"
-msgstr "ogiltig stränglängd"
+msgstr "ogiltig stränglängd"
 
-#
-#: ieee.c:528 ieee.c:569
+#: ieee.c:537 ieee.c:578
 msgid "expression stack overflow"
-msgstr "överspill i uttrycksstacken"
+msgstr "överspill i uttrycksstacken"
 
-#
-#: ieee.c:548
+#: ieee.c:557
 msgid "unsupported IEEE expression operator"
-msgstr "IEEE-uttrycksoperator som inte stöds"
+msgstr "IEEE-uttrycksoperator som inte hanteras"
 
-#
-#: ieee.c:563
+#: ieee.c:572
 msgid "unknown section"
-msgstr "okänd sektion"
+msgstr "okänd sektion"
 
-#
-#: ieee.c:584
+#: ieee.c:593
 msgid "expression stack underflow"
 msgstr "underspill i uttrycksstacken"
 
-#
-#: ieee.c:598
+#: ieee.c:607
 msgid "expression stack mismatch"
 msgstr "felbalanserad uttrycksstack"
 
-#
-#: ieee.c:637
+#: ieee.c:646
 msgid "unknown builtin type"
-msgstr "okänd inbyggd typ"
+msgstr "okänd inbyggd typ"
 
-#
-#: ieee.c:782
+#: ieee.c:791
 msgid "BCD float type not supported"
-msgstr "flyttalstyp BCD stöds inte"
+msgstr "flyttalstypen BCD hanteras inte"
 
-#
-#: ieee.c:928
+#: ieee.c:937
 msgid "unexpected number"
-msgstr "oväntat tal"
+msgstr "oväntat tal"
 
-#
-#: ieee.c:935
+#: ieee.c:944
 msgid "unexpected record type"
-msgstr "oväntad posttyp"
+msgstr "oväntad posttyp"
 
-#
-#: ieee.c:968
+#: ieee.c:977
 msgid "blocks left on stack at end"
-msgstr "block kvar på stacken på slutet"
+msgstr "block kvar på stacken på slutet"
 
-#
-#: ieee.c:1233
-msgid "unknown BB type"
-msgstr "okänd BB-typ"
-
-#
 #: ieee.c:1242
-msgid "stack overflow"
-msgstr "överspill i stacken"
+msgid "unknown BB type"
+msgstr "okänd BB-typ"
 
-#
-#: ieee.c:1267
+#: ieee.c:1251
+msgid "stack overflow"
+msgstr "överspill i stacken"
+
+#: ieee.c:1276
 msgid "stack underflow"
 msgstr "underspill i stacken"
 
-#
-#: ieee.c:1381 ieee.c:1453 ieee.c:2152
+#: ieee.c:1390 ieee.c:1462 ieee.c:2161
 msgid "illegal variable index"
-msgstr "otillåtet variabelindex"
+msgstr "otillåtet variabelindex"
 
-#
-#: ieee.c:1431
+#: ieee.c:1440
 msgid "illegal type index"
-msgstr "otillåtet typindex"
+msgstr "otillåtet typindex"
 
-#
-#: ieee.c:1441 ieee.c:1478
+#: ieee.c:1450 ieee.c:1487
 msgid "unknown TY code"
-msgstr "okänd TY-kod"
+msgstr "okänd TY-kod"
 
-#
-#: ieee.c:1460
+#: ieee.c:1469
 msgid "undefined variable in TY"
 msgstr "odefinierad variabel i TY"
 
-#
 #. Pascal file name.  FIXME.
-#: ieee.c:1871
+#: ieee.c:1880
 msgid "Pascal file name not supported"
-msgstr "Pascal-filnamn stöds inte"
+msgstr "Pascalfilnamn hanteras inte"
 
-#
-#  BUGG: qualif>i<er
-#: ieee.c:1919
-msgid "unsupported qualifer"
-msgstr "bestämningen stöds inte"
+#: ieee.c:1928
+msgid "unsupported qualifier"
+msgstr "bestämningen hanteras inte"
 
-#
-#: ieee.c:2190
+#: ieee.c:2199
 msgid "undefined variable in ATN"
 msgstr "odefinierad variabel i ATN"
 
-#
-#: ieee.c:2233
+#: ieee.c:2242
 msgid "unknown ATN type"
-msgstr "okänd ATN-typ"
+msgstr "okänd ATN-typ"
 
-#
 #. Reserved for FORTRAN common.
-#: ieee.c:2355
+#: ieee.c:2364
 msgid "unsupported ATN11"
-msgstr "ATN11 stöds inte"
+msgstr "ATN11 hanteras inte"
 
-#
 #. We have no way to record this information.  FIXME.
-#: ieee.c:2382
+#: ieee.c:2391
 msgid "unsupported ATN12"
-msgstr "ATN12 stöds inte"
+msgstr "ATN12 hanteras inte"
 
-#
-#: ieee.c:2442
+#: ieee.c:2451
 msgid "unexpected string in C++ misc"
-msgstr "oväntad sträng i C++-misc"
+msgstr "oväntad sträng i C++-misc"
 
-#
-#: ieee.c:2455
+#: ieee.c:2464
 msgid "bad misc record"
 msgstr "felaktig misc-post"
 
-#
-#: ieee.c:2498
+#: ieee.c:2507
 msgid "unrecognized C++ misc record"
-msgstr "okänd C++-misc-post"
+msgstr "okänd C++-misc-post"
 
-#
-#: ieee.c:2615
+#: ieee.c:2624
 msgid "undefined C++ object"
 msgstr "odefinierat C++-objekt"
 
-#
-#: ieee.c:2649
+#: ieee.c:2658
 msgid "unrecognized C++ object spec"
-msgstr "okänd C++-objektspecifikation"
+msgstr "okänd C++-objektspecifikation"
 
-#
-#: ieee.c:2685
+#: ieee.c:2694
 msgid "unsupported C++ object type"
-msgstr "C++-objekttyp som inte stöds"
+msgstr "C++-objekttypen hanteras inte"
 
-#
-#: ieee.c:2695
+#: ieee.c:2704
 msgid "C++ base class not defined"
 msgstr "odefinierad C++-basklass"
 
-#
-#: ieee.c:2707 ieee.c:2812
+#: ieee.c:2716 ieee.c:2821
 msgid "C++ object has no fields"
-msgstr "C++-objektet har inga fält"
+msgstr "C++-objektet har inga fält"
 
-#
-#  FIXME: behållare??
-#: ieee.c:2726
+#: ieee.c:2735
 msgid "C++ base class not found in container"
-msgstr "Hittade inte C++-basklassen i behållaren"
+msgstr "Hittade inte C++-basklassen i behållaren"
 
-#
-#  FIXME: behållare??
-#: ieee.c:2833
+#: ieee.c:2842
 msgid "C++ data member not found in container"
-msgstr "Hittade inte C++-datamedlemmen i behållaren"
+msgstr "Hittade inte C++-datamedlemmen i behållaren"
 
-#
-#: ieee.c:2874 ieee.c:3024
+#: ieee.c:2883 ieee.c:3033
 msgid "unknown C++ visibility"
-msgstr "okänd C++-synlighet"
+msgstr "okänd C++-synlighet"
 
-#
-#: ieee.c:2908
+#: ieee.c:2917
 msgid "bad C++ field bit pos or size"
-msgstr "C++-fältets bitposition eller bitstorlek är felaktig"
+msgstr "C++-fältets bit-position eller bit-storlek är felaktig"
 
-#
-#: ieee.c:3000
+#: ieee.c:3009
 msgid "bad type for C++ method function"
-msgstr "felaktig typ på C++-metodfunktion"
+msgstr "felaktig typ på C++-metodfunktion"
 
-#
-#: ieee.c:3010
+#: ieee.c:3019
 msgid "no type information for C++ method function"
 msgstr "ingen typinformation om C++-metodfunktion"
 
-#
-#: ieee.c:3049
+#: ieee.c:3058
 msgid "C++ static virtual method"
 msgstr "statisk virtuell C++-metod"
 
-#
-#: ieee.c:3144
+#: ieee.c:3153
 msgid "unrecognized C++ object overhead spec"
-msgstr "okänd C++-objektöversiktsspec"
+msgstr "okänd C++-objektöversiktsspec"
 
-#
-#: ieee.c:3183
+#: ieee.c:3192
 msgid "undefined C++ vtable"
 msgstr "odefinierad C++-v-tabell"
 
-#
-#: ieee.c:3254
+#: ieee.c:3263
 msgid "C++ default values not in a function"
-msgstr "C++-standardvärden inte inom en funktion"
+msgstr "C++-standardvärden inte inom en funktion"
 
-#
-#: ieee.c:3294
+#: ieee.c:3303
 msgid "unrecognized C++ default type"
-msgstr "okänd C++-standardtyp"
+msgstr "okänd C++-standardtyp"
 
-#
-#: ieee.c:3325
+#: ieee.c:3334
 msgid "reference parameter is not a pointer"
-msgstr "referensparametern är inte en pekare"
+msgstr "referensparametern är inte en pekare"
 
-#
-#: ieee.c:3410
+#: ieee.c:3419
 msgid "unrecognized C++ reference type"
-msgstr "okänd C++-referenstyp"
+msgstr "okänd C++-referenstyp"
 
-#
-#: ieee.c:3492
+#: ieee.c:3501
 msgid "C++ reference not found"
 msgstr "hittade inte C++-referensen"
 
-#
-#: ieee.c:3500
+#: ieee.c:3509
 msgid "C++ reference is not pointer"
-msgstr "C++-referensen är ingen pekare"
+msgstr "C++-referensen är ingen pekare"
 
-#
-#: ieee.c:3529 ieee.c:3537
+#: ieee.c:3538 ieee.c:3546
 msgid "missing required ASN"
-msgstr "saknar nödvändig ASN"
+msgstr "saknar nödvändig ASN"
 
-#
-#: ieee.c:3567 ieee.c:3575
+#: ieee.c:3576 ieee.c:3584
 msgid "missing required ATN65"
-msgstr "saknar nödvändig ATN65"
+msgstr "saknar nödvändig ATN65"
 
-#
-#: ieee.c:3589
+#: ieee.c:3598
 msgid "bad ATN65 record"
 msgstr "felaktig ATN65-post"
 
-#
-#: ieee.c:4236
+#: ieee.c:4286
 msgid "IEEE numeric overflow: 0x"
-msgstr "IEEE numeriskt överspill: 0x"
+msgstr "IEEE numeriskt överspill: 0x"
 
-#
-#: ieee.c:4282
+#: ieee.c:4332
 #, c-format
 msgid "IEEE string length overflow: %u\n"
-msgstr "IEEE överspill i stränglängden: %u\n"
+msgstr "IEEE överspill i stränglängden: %u\n"
 
-#
-#: ieee.c:5333
+#: ieee.c:5382
 #, c-format
 msgid "IEEE unsupported integer type size %u\n"
 msgstr "IEEE klarar inte heltalstyper av storlek %u\n"
 
-#
-#: ieee.c:5369
+#: ieee.c:5418
 #, c-format
 msgid "IEEE unsupported float type size %u\n"
 msgstr "IEEE klarar inte flyttalstyper av storlek %u\n"
 
-#
-#: ieee.c:5405
+#: ieee.c:5454
 #, c-format
 msgid "IEEE unsupported complex type size %u\n"
 msgstr "IEEE klarar inte komplextyper av storlek %u\n"
 
-#
-#: nlmconv.c:278 srconv.c:2020
+#: nlmconv.c:282 srconv.c:2043
 msgid "input and output files must be different"
-msgstr "utdatafilen måste vara en annan än indatafilen"
+msgstr "in- och ut- måste vara olika filer"
 
-#
-#: nlmconv.c:325
+#: nlmconv.c:329
 msgid "input file named both on command line and with INPUT"
-msgstr "indatafilen nämnd både på kommandoraden och via INPUT"
+msgstr "infil är vald både på kommandoraden och via INPUT"
 
-#
-#: nlmconv.c:334
+#: nlmconv.c:338
 msgid "no input file"
-msgstr "ingen indatafil"
+msgstr "ingen infil"
 
-#
-#: nlmconv.c:364
+#: nlmconv.c:368
 msgid "no name for output file"
-msgstr "inget namn på utdatafilen"
+msgstr "inget namn på utfilen"
 
-#
-#: nlmconv.c:377
+#: nlmconv.c:382
 msgid "warning: input and output formats are not compatible"
-msgstr "varning: formaten för in- och utdata är inte kompatibla"
+msgstr "varning: formaten för in- och utdata är inte kompatibla"
 
-#
-#: nlmconv.c:406
+#: nlmconv.c:411
 msgid "make .bss section"
 msgstr "skapa .bss-sektion"
 
-#
-#: nlmconv.c:415
+#: nlmconv.c:420
 msgid "make .nlmsections section"
 msgstr "skapa .nlmsections-sektion"
 
-#
-#: nlmconv.c:417
+#: nlmconv.c:422
 msgid "set .nlmsections flags"
-msgstr "sätt .nlmsections-flaggor"
+msgstr "sätt flaggor i .nlmsections"
 
-#
-#: nlmconv.c:445
+#: nlmconv.c:450
 msgid "set .bss vma"
-msgstr "sätt vma för .bss"
+msgstr "sätt vma i .bss"
 
-#
-#: nlmconv.c:452
+#: nlmconv.c:457
 msgid "set .data size"
-msgstr "sätt .data-storlek"
+msgstr "sätt storlek på .data"
 
-#
-#: nlmconv.c:632
+#: nlmconv.c:637
 #, c-format
 msgid "warning: symbol %s imported but not in import list"
 msgstr "varning: symbolen %s importerades men finns inte med i importlistan"
 
-#
-#: nlmconv.c:652
+#: nlmconv.c:657
 msgid "set start address"
-msgstr "sätt startadress"
+msgstr "sätt startadress"
 
-#
-#: nlmconv.c:701
+#: nlmconv.c:706
 #, c-format
 msgid "warning: START procedure %s not defined"
-msgstr "varning: START-procedur %s är inte definierad"
+msgstr "varning: START-procedur %s är inte definierad"
 
-#
-#: nlmconv.c:703
+#: nlmconv.c:708
 #, c-format
 msgid "warning: EXIT procedure %s not defined"
-msgstr "varning: EXIT-procedur %s är inte definierad"
+msgstr "varning: EXIT-procedur %s är inte definierad"
 
-#
-#: nlmconv.c:705
+#: nlmconv.c:710
 #, c-format
 msgid "warning: CHECK procedure %s not defined"
-msgstr "varning: CHECK-procedur %s är inte definierad"
+msgstr "varning: CHECK-procedur %s är inte definierad"
 
-#
-#: nlmconv.c:726 nlmconv.c:915
+#: nlmconv.c:731 nlmconv.c:920
 msgid "custom section"
 msgstr "anpassningsbar sektion"
 
-#
-#: nlmconv.c:747 nlmconv.c:944
+#: nlmconv.c:752 nlmconv.c:949
 msgid "help section"
-msgstr "hjälpsektion"
+msgstr "hjälpsektion"
 
-#
-#: nlmconv.c:769 nlmconv.c:962
+#: nlmconv.c:774 nlmconv.c:967
 msgid "message section"
 msgstr "meddelandesektion"
 
-#
-#: nlmconv.c:785 nlmconv.c:995
+#: nlmconv.c:790 nlmconv.c:1000
 msgid "module section"
 msgstr "modulsektion"
 
-#
-#: nlmconv.c:805 nlmconv.c:1011
+#: nlmconv.c:810 nlmconv.c:1016
 msgid "rpc section"
 msgstr "rpc-section"
 
-#
 #. There is no place to record this information.
-#: nlmconv.c:841
+#: nlmconv.c:846
 #, c-format
 msgid "%s: warning: shared libraries can not have uninitialized data"
 msgstr "%s: varning: delade bibliotek kan inte ha oinitierad data"
 
-#
-#: nlmconv.c:862 nlmconv.c:1030
+#: nlmconv.c:867 nlmconv.c:1035
 msgid "shared section"
 msgstr "delad sektion"
 
-#
-#: nlmconv.c:870
+#: nlmconv.c:875
 msgid "warning: No version number given"
-msgstr "varning: Inget versionsnummer angivet"
+msgstr "varning: Inget versionsnummer givet"
 
-#
-#: nlmconv.c:910 nlmconv.c:939 nlmconv.c:957 nlmconv.c:1006 nlmconv.c:1025
+#: nlmconv.c:915 nlmconv.c:944 nlmconv.c:962 nlmconv.c:1011 nlmconv.c:1030
 #, c-format
 msgid "%s: read: %s"
-msgstr "%s: läsfel: %s"
+msgstr "%s: läsfel: %s"
 
-#
-#: nlmconv.c:932
+#: nlmconv.c:937
 msgid "warning: MAP and FULLMAP are not supported; try ld -M"
-msgstr "varning: MAP och FULLMAP stöds inte; försök med ld -M"
+msgstr "varning: MAP och FULLMAP hanteras inte; prova med ld -M"
 
-#
-#: nlmconv.c:1101
+#: nlmconv.c:1109
 #, c-format
-msgid "%s: Convert an object file into a NetWare Loadable Module\n"
-msgstr "%s: Konvertera en objektfil till en inläsningsbar NetWare-modul\n"
+msgid "Usage: %s [option(s)] [in-file [out-file]]\n"
+msgstr "Användning: %s [flaggor] [infil [utfil]]\n"
 
-#
-#: nlmconv.c:1113
-#, c-format
+#: nlmconv.c:1110
+msgid " Convert an object file into a NetWare Loadable Module\n"
+msgstr " Konvertera en objektfil till en laddbar NetWare-modul\n"
+
+#: nlmconv.c:1111
 msgid ""
-"Usage: %s [-dhV] [-I bfdname] [-O bfdname] [-T header-file] [-l linker]\n"
-"       [--input-target=bfdname] [--output-target=bfdname]\n"
-"       [--header-file=file] [--linker=linker] [--debug]\n"
-"       [--help] [--version]\n"
-"       [in-file [out-file]]\n"
+" The options are:\n"
+"  -I --input-target=<bfdname>   Set the input binary file format\n"
+"  -O --output-target=<bfdname>  Set the output binary file format\n"
+"  -T --header-file=<file>       Read <file> for NLM header information\n"
+"  -l --linker=<linker>          Use <linker> for any linking\n"
+"  -d --debug                    Display on stderr the linker command line\n"
+"  -h --help                     Display this information\n"
+"  -v --version                  Display the program's version\n"
 msgstr ""
-"Användning: %s [-dhV] [-I bfd-namn] [-O bfd-namn] [-T huvudfil] [-l länkare]\n"
-"       [--input-target=bfd-namn] [--output-target=bfd-namn]\n"
-"       [--header-file=fil] [--linker=länkare] [--debug]\n"
-"       [--help] [--version]\n"
-"       [indatafil [utdatafil]]\n"
+" Flaggorna är:\n"
+"  -I --input-target=<bfdnamn>   Sätt formatet på inbinärfilen\n"
+"  -O --output-target=<bfdnamn>  Sätt formatet på utbinärfilen\n"
+"  -T --header-file=<fil>        Läs NLM-huvuden från <fil>\n"
+"  -l --linker=<länkare>         Använd <länkare> för att länka\n"
+"  -d --debug                    Visa länkkommandot på standard error\n"
+"  -h --help                     Visa denna hjälp\n"
+"  -v --version                  Visa programmets versionsinformation\n"
 
-#
 #: nlmconv.c:1153
 #, c-format
 msgid "support not compiled in for %s"
-msgstr "inte kompilerad med stöd för %s"
+msgstr "hantering av %s uteslöts vid kompileringen"
 
-#
 #: nlmconv.c:1193
 msgid "make section"
 msgstr "skapa sektion"
 
-#
 #: nlmconv.c:1207
 msgid "set section size"
-msgstr "sätt sektionsstorlek"
+msgstr "sätt sektionsstorlek"
 
-#
 #: nlmconv.c:1213
 msgid "set section alignment"
-msgstr "sätt jämn gräns för sektion"
+msgstr "sätt sektionsjustering"
 
-#
 #: nlmconv.c:1217
 msgid "set section flags"
-msgstr "sätt sektionsflaggor"
+msgstr "sätt sektionsflaggor"
 
-#
 #: nlmconv.c:1228
 msgid "set .nlmsections size"
-msgstr "sätt storlek på .nlmsektionen"
+msgstr "sätt storlek på .nlmsections"
 
-#
 #: nlmconv.c:1316 nlmconv.c:1324 nlmconv.c:1333 nlmconv.c:1338
 msgid "set .nlmsection contents"
-msgstr "sätt inehåll i .nlmsektionen"
+msgstr "sätt inehåll i .nlmsection"
 
-#
-#: nlmconv.c:1841
+#: nlmconv.c:1839
 msgid "stub section sizes"
 msgstr "stubbsektionsstorlek"
 
-#
-#: nlmconv.c:1890
+#: nlmconv.c:1888
 msgid "writing stub"
 msgstr "skriver stubbe"
 
-#
-#: nlmconv.c:1980
+# FIXME
+#: nlmconv.c:1977
 #, c-format
 msgid "unresolved PC relative reloc against %s"
-msgstr "olöst PC-relativ omlokalisering mot %s"
+msgstr "ouppklarad programräknarrelativ relokering mot %s"
 
-#
-#: nlmconv.c:2044
+# FIXME
+#: nlmconv.c:2041
 #, c-format
 msgid "overflow when adjusting relocation against %s"
-msgstr "överspill vid justeringen av omlokalisering mot %s"
+msgstr "överspill vid justeringen av relokering mot %s"
 
-#
-#: nlmconv.c:2161
+#: nlmconv.c:2158
 #, c-format
 msgid "%s: execution of %s failed: "
-msgstr "%s: exekvering av %s misslyckades: "
+msgstr "%s: lyckades inte köra %s: "
 
-#
-#: nlmconv.c:2176
+#: nlmconv.c:2173
 #, c-format
 msgid "Execution of %s failed"
-msgstr "Exekvering av %s misslyckades"
+msgstr "Lyckades inte köra %s"
 
-#
-#: nm.c:300
+#: nm.c:283 size.c:85 strings.c:657
 #, c-format
-msgid "Usage: %s [OPTION]... [FILE]...\n"
-msgstr "Användning: %s [FLAGGA]... [FIL]...\n"
+msgid "Usage: %s [option(s)] [file(s)]\n"
+msgstr "Användning: %s [flaggor] [fil(er)]\n"
 
-#
-#: nm.c:301
-msgid "List symbols from FILEs (a.out by default).\n"
-msgstr "Lista symboler i FILerna (eller a.out).\n"
+#: nm.c:284
+msgid " List symbols in [file(s)] (a.out by default).\n"
+msgstr "Lista symboler i [fil(er)] (a.out som standard).\n"
 
-#
-#: nm.c:302
+#: nm.c:285
 msgid ""
-"\n"
+" The options are:\n"
 "  -a, --debug-syms       Display debugger-only symbols\n"
 "  -A, --print-file-name  Print name of the input file before every symbol\n"
 "  -B                     Same as --format=bsd\n"
 "  -C, --demangle[=STYLE] Decode low-level symbol names into user-level names\n"
 "                          The STYLE, if specified, can be `auto' (the default),\n"
-"                          `gnu', 'lucid', 'arm', 'hp', 'edg' or 'gnu-new-abi'\n"
+"                          `gnu', `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                          or `gnat'\n"
 "      --no-demangle      Do not demangle low-level symbol names\n"
 "  -D, --dynamic          Display dynamic symbols instead of normal symbols\n"
 "      --defined-only     Display only defined symbols\n"
@@ -1728,7 +1505,6 @@
 "  -f, --format=FORMAT    Use the output format FORMAT.  FORMAT can be `bsd',\n"
 "                           `sysv' or `posix'.  The default is `bsd'\n"
 "  -g, --extern-only      Display only external symbols\n"
-"  -h, --help             Display this information\n"
 "  -l, --line-numbers     Use debugging information to find a filename and\n"
 "                           line number for each symbol\n"
 "  -n, --numeric-sort     Sort symbols numerically by address\n"
@@ -1736,79 +1512,100 @@
 "  -p, --no-sort          Do not sort the symbols\n"
 "  -P, --portability      Same as --format=posix\n"
 "  -r, --reverse-sort     Reverse the sense of the sort\n"
+"  -S, --print-size       Print size of defined symbols\n"
 "  -s, --print-armap      Include index for symbols from archive members\n"
 "      --size-sort        Sort symbols by size\n"
 "  -t, --radix=RADIX      Use RADIX for printing symbol values\n"
 "      --target=BFDNAME   Specify the target object format as BFDNAME\n"
 "  -u, --undefined-only   Display only undefined symbols\n"
-"  -V, --version          Display this program's version number\n"
 "  -X 32_64               (ignored)\n"
+"  -h, --help             Display this information\n"
+"  -V, --version          Display this program's version number\n"
 "\n"
 msgstr ""
-"\n"
-"  -a, --debug-syms       Visa endast felsökningssymboler\n"
-"  -A, --print-file-name  Skriv namnet på indatafilen före varje symbol\n"
+" Flaggorna är:\n"
+"  -a, --debug-syms       Visa endast felsökningssymboler\n"
+"  -A, --print-file-name  Skriv infilens namn före varje symbol\n"
 "  -B                     Samma som --format=bsd\n"
-"  -C, --demangle[=STIL]  Avkoda lågnivåsymbolnamn till användarnivånamn\n"
-"                          STIL kan vara \"auto\" (det förvalda), \"gnu\",\n"
-"                          \"lucid\", \"arm\", \"hp\", \"edg\" eller \"gnu-new-abi\"\n"
-"      --no-demangle      Avkoda inte lågnivåsymbolnamn\n"
-"  -D, --dynamic          Visa dynamiska symboler istället för vanliga symboler\n"
+"  -C, --demangle[=STIL]  Omkoda manglade symbolnamn till användarform\n"
+"                          STIL kan vara \"auto\" (förval), \"gnu\", \"lucid\",\n"
+"                          \"arm\", \"hp\", \"edg\", \"gnu-v3\", \"java\",\n"
+"                         eller \"gnat\"\n"
+"      --no-demangle      Avkoda inte manglade symbolnamn\n"
+"  -D, --dynamic          Visa dynamiska symboler istället för vanliga symboler\n"
 "      --defined-only     Visa endast definierade symboler\n"
-"  -e                     (ignoreras)\n"
-"  -f, --format=FORMAT    Använd FORMAT som utdataformat.  FORMAT kan vara\n"
-"                           \"bsd\", \"sysv\" eller \"posix\".  Förvalet är \"bsd\"\n"
+"  -e                     (ignorerad)\n"
+"  -f, --format=FORMAT    Använd FORMAT som utdataformat.  FORMAT kan vara\n"
+"                           \"bsd\", \"sysv\" eller \"posix\".  Förvalet är \"bsd\"\n"
 "  -g, --extern-only      Visa endast externa symboler\n"
-"  -h, --help             Visa den här hjälpen\n"
-"  -l, --line-numbers     Använd felsökningsinformationen för att slå upp\n"
-"                           filnamn och radnummer för varje symbol\n"
+"  -l, --line-numbers     Använd felsökningsinformationen för att slå upp\n"
+"                           filnamn och radnummer för varje symbol\n"
 "  -n, --numeric-sort     Sortera symboler numeriskt efter adress\n"
 "  -o                     Samma som -A\n"
 "  -p, --no-sort          Sortera inte symbolerna\n"
 "  -P, --portability      Samma som --format=posix\n"
-"  -r, --reverse-sort     Sortera åt andra hållet\n"
-"  -s, --print-armap      Ta med index för symboler i arkivmedlemmar\n"
+"  -r, --reverse-sort     Sortera baklänges\n"
+"  -S, --print-size       Skriv ut storleken på definierade symboler\n"
+"  -s, --print-armap      Ta med index för symboler i arkivmedlemmar\n"
 "      --size-sort        Sortera symboler efter storlek\n"
-"  -t, --radix=BAS        Skriv tal i talbasen BAS\n"
-"      --target=BFD-NAMN  Ange målobjektets format som BFD-NAMN\n"
+"  -t, --radix=BAS        Skriv ut siffervärden i talbas BAS\n"
+"      --target=BFD-NAMN  Välj BFD-NAMN som målobjektets format\n"
 "  -u, --undefined-only   Visa endast odefinierade symboler\n"
+"  -X 32_64               (ignorerad)\n"
+"  -h, --help             Visa denna hjälptext\n"
 "  -V, --version          Visa programmets versionsinformation\n"
-"  -X 32_64               (ignoreras)\n"
 "\n"
 
-#
-#: nm.c:334 objdump.c:216
+#: nm.c:319 objdump.c:250
 #, c-format
 msgid "Report bugs to %s.\n"
 msgstr ""
 "Rapportera fel till %s.\n"
-"Skicka synpunkter på översättningen till sv@li.org.\n"
+"Rapportera synpunkter på översättningen till sv@li.org.\n"
 
-#
-#: nm.c:367
+#: nm.c:352
 #, c-format
 msgid "%s: invalid radix"
 msgstr "%s: ogiltig talbas"
 
-#
-#: nm.c:392
+#: nm.c:377
 #, c-format
 msgid "%s: invalid output format"
 msgstr "%s: ogiltigt utdataformat"
 
-#
-#: nm.c:504
+#: nm.c:494
 msgid "Only -X 32_64 is supported"
-msgstr "Endast -X 32_64 stöds"
+msgstr "Endast -X 32_64 hanteras"
 
-#
-#: nm.c:546
+#: nm.c:514
+msgid "Using the --size-sort and --undefined-only options together"
+msgstr "Användning av --size-sort och --undifined-only samtidigt"
+
+#: nm.c:515
+msgid "will produce no output, since undefined symbols have no size."
+msgstr "ger ingen utdata, eftersom odefinierade symboler inte har någon storlek"
+
+#: nm.c:543
 #, c-format
 msgid "data size %ld"
 msgstr "datastorlek %ld"
 
-#
-#: nm.c:1340
+#: nm.c:568 readelf.c:5809 readelf.c:5845
+#, c-format
+msgid "<processor specific>: %d"
+msgstr "<processorspecifik>: %d"
+
+#: nm.c:570 readelf.c:5811 readelf.c:5857
+#, c-format
+msgid "<OS specific>: %d"
+msgstr "<OS-specifik>: %d"
+
+#: nm.c:572 readelf.c:5813 readelf.c:5860
+#, c-format
+msgid "<unknown>: %d"
+msgstr "<okänd>: %d"
+
+#: nm.c:1376
 #, c-format
 msgid ""
 "\n"
@@ -1818,11 +1615,10 @@
 msgstr ""
 "\n"
 "\n"
-"Odefinierade symboler från %s:\n"
+"Odefinierade symboler från %s:\n"
 "\n"
 
-#
-#: nm.c:1342
+#: nm.c:1378
 #, c-format
 msgid ""
 "\n"
@@ -1832,20 +1628,26 @@
 msgstr ""
 "\n"
 "\n"
-"Symboler från %s:\n"
+"Symboler från %s:\n"
 "\n"
 
-#
-#: nm.c:1343 nm.c:1397
+#: nm.c:1380 nm.c:1438
 msgid ""
-"Name                  Value   Class        Type         Size   Line  Section\n"
+"Name                  Value   Class        Type         Size     Line  Section\n"
 "\n"
 msgstr ""
-"Namn                  Värde   Klass        Typ          Storl. Rad   Sektion\n"
+"Namn                  Värde   Klass        Typ          Storlek  Rad   Sektion\n"
 "\n"
 
-#
-#: nm.c:1394
+#: nm.c:1383 nm.c:1441
+msgid ""
+"Name                  Value           Class        Type         Size             Line  Section\n"
+"\n"
+msgstr ""
+"Namn                  Värde           Klass        Typ          Storlek          Rad   Sektion\n"
+"\n"
+
+#: nm.c:1434
 #, c-format
 msgid ""
 "\n"
@@ -1855,11 +1657,10 @@
 msgstr ""
 "\n"
 "\n"
-"Odefinierade symboler från %s[%s]:\n"
+"Odefinierade symboler från %s[%s]:\n"
 "\n"
 
-#
-#: nm.c:1396
+#: nm.c:1436
 #, c-format
 msgid ""
 "\n"
@@ -1869,11 +1670,10 @@
 msgstr ""
 "\n"
 "\n"
-"Symboler från %s[%s]:\n"
+"Symboler från %s[%s]:\n"
 "\n"
 
-#
-#: nm.c:1564
+#: nm.c:1658
 msgid ""
 "\n"
 "Archive index:\n"
@@ -1881,19 +1681,20 @@
 "\n"
 "Arkivindex:\n"
 
-#
-#: objcopy.c:363
+#: objcopy.c:414 srconv.c:1952
 #, c-format
-msgid "Usage: %s <options> in-file [out-file]\n"
-msgstr "Användning: %s <flaggor> indatafil [utdatafil]\n"
+msgid "Usage: %s [option(s)] in-file [out-file]\n"
+msgstr "Användning: %s [flaggor] infil [utfil]\n"
 
-#
-#: objcopy.c:364 objcopy.c:433
+#: objcopy.c:415
+msgid " Copies a binary file, possibly transforming it in the process\n"
+msgstr " Kopierar en binärfil, och formar möjligen om den\n"
+
+#: objcopy.c:416 objcopy.c:495
 msgid " The options are:\n"
-msgstr " Flaggorna är:\n"
+msgstr " Flaggorna är:\n"
 
-#
-#: objcopy.c:365
+#: objcopy.c:417
 msgid ""
 "  -I --input-target <bfdname>      Assume input file is in format <bfdname>\n"
 "  -O --output-target <bfdname>     Create an output file in format <bfdname>\n"
@@ -1902,9 +1703,10 @@
 "     --debugging                   Convert debugging information, if possible\n"
 "  -p --preserve-dates              Copy modified/access timestamps to the output\n"
 "  -j --only-section <name>         Only copy section <name> into the output\n"
+"     --add-gnu-debuglink=<file>    Add section .gnu_debuglink linking to <file>\n"
 "  -R --remove-section <name>       Remove section <name> from the output\n"
 "  -S --strip-all                   Remove all symbol and relocation information\n"
-"  -g --strip-debug                 Remove all debugging symbols\n"
+"  -g --strip-debug                 Remove all debugging symbols & sections\n"
 "     --strip-unneeded              Remove all symbols not needed by relocations\n"
 "  -N --strip-symbol <name>         Do not copy symbol <name>\n"
 "  -K --keep-symbol <name>          Only copy symbol <name>\n"
@@ -1938,6 +1740,8 @@
 "     --change-leading-char         Force output format's leading character style\n"
 "     --remove-leading-char         Remove leading character from global symbols\n"
 "     --redefine-sym <old>=<new>    Redefine symbol name <old> to <new>\n"
+"     --redefine-syms <file>        --redefine-sym for all symbol pairs \n"
+"                                     listed in <file>\n"
 "     --srec-len <number>           Restrict the length of generated Srecords\n"
 "     --srec-forceS3                Restrict the type of generated Srecords to S3\n"
 "     --strip-symbols <file>        -N for all symbols listed in <file>\n"
@@ -1946,364 +1750,355 @@
 "     --keep-global-symbols <file>  -G for all symbols listed in <file>\n"
 "     --weaken-symbols <file>       -W for all symbols listed in <file>\n"
 "     --alt-machine-code <index>    Use alternate machine code for output\n"
+"     --prefix-symbols <prefix>     Add <prefix> to start of every symbol name\n"
+"     --prefix-sections <prefix>    Add <prefix> to start of every section name\n"
+"     --prefix-alloc-sections <prefix>\n"
+"                                   Add <prefix> to start of every allocatable\n"
+"                                     section name\n"
 "  -v --verbose                     List all object files modified\n"
 "  -V --version                     Display this program's version number\n"
 "  -h --help                        Display this output\n"
+"     --info                        List object formats & architectures supported\n"
 msgstr ""
-"  -I --input-target <bfd-namn>    Antag indatafilens format är <bfd-namn>\n"
-"  -O --output-target <bfd-namn>   Skapa utdatafilen i formatet <bfd-namn>\n"
-"  -B --binary-architecture <ark>  Välj arkitektur för utfil när indata är binär\n"
-"  -F --target <bfd-namn>          Sätt både in- och utformatet till <bfd-namn>\n"
-"     --debugging                  Konvertera felsökningsinfo, om möjligt\n"
-"  -p --preserve-dates             Kopiera ändrings/åtkomsttider till utdatan\n"
+"  -I --input-target <bfd-namn>    Antag infilens format till <bfd-namn>\n"
+"  -O --output-target <bfd-namn>   Skapa utfilen i format <bfd-namn>\n"
+"  -B --binary-architecture <ark>  Välj arkitektur för utfil när indata är binär\n"
+"  -F --target <bfd-namn>          Sätt både in- och utformatet till <bfd-namn>\n"
+"     --debugging                  Konvertera felsökningsinfo, om möjligt\n"
+"  -p --preserve-dates             Kopiera ändrings/åtkomsttider till utdatan\n"
 "  -j --only-section <namn>        Kopiera endast sektion <namn> till utdatan\n"
-"  -R --remove-section <namn>      Ta bort sektion <namn> från utdatan\n"
-"  -S --strip-all                  Ta bort all symbol- och omlokaliseringsinfo\n"
-"  -g --strip-debug                Ta bort alla felsökningssymboler\n"
-"     --strip-unneeded             Ta bort symboler onödiga för omlokalisering\n"
+"     --add-gnu-debuglink=<fil>    Lägg till .gnu_debuglink-sektion till <fil>\n"
+"  -R --remove-section <namn>      Ta bort sektion <namn> från utdatan\n"
+"  -S --strip-all                  Rensa bort all symbol- och relokeringsinfo\n"
+"  -g --strip-debug                Rensa bort alla felsökssymboler och -sektioner\n"
+"     --strip-unneeded             Rensa bort alla symboler som inte behövs för\n"
+"                                  relokeringen\n"
 "  -N --strip-symbol <namn>        Kopiera inte symbol <namn>\n"
 "  -K --keep-symbol <namn>         Kopiera endast symbol <namn>\n"
 "  -L --localize-symbol <namn>     Markera symbol <namn> som lokal\n"
-"  -G --keep-global-symbol <namn>  Gör alla symboler lokala, förutom <namn>\n"
+"  -G --keep-global-symbol <namn>  Gör alla symboler lokala, förutom <namn>\n"
 "  -W --weaken-symbol <namn>       Markera symbol <namn> som vek\n"
 "     --weaken                     Markera alla globala symboler som veka\n"
 "  -x --discard-all                Ta bort alla icke-globala symboler\n"
 "  -X --discard-locals             Ta bort alla kompilatorgenererade symboler\n"
 "  -i --interleave <antal>         Kopiera endast en av varje <antal> byte\n"
-"  -b --byte <nr>                  Välj ut <nr>:e byten i varje intervall\n"
+"  -b --byte <nr>                  Välj ut <nr>:e byten i varje intervall\n"
 "     --gap-fill <tal>             Fyll luckor mellan sektionerna med <tal>\n"
 "     --pad-to <adr>               Fyll ut efter sista sektionen fram till <adr>\n"
-"     --set-start <adr>            Sätt startadressen till <adr>\n"
-"    {--change-start|--adjust-start} <ökn>\n"
-"                                  Lägg till <ökn> till startadressen\n"
-"    {--change-addresses|--adjust-vma} <ökn>\n"
-"                                  Lägg till <ökn> till LMA, VMA och startadr.\n"
+"     --set-start <adr>            Sätt startadressen till <adr>\n"
+"    {--change-start|--adjust-start} <ökn>\n"
+"                                  Lägg till <ökn> till startadressen\n"
+"    {--change-addresses|--adjust-vma} <ökn>\n"
+"                                  Lägg till <ökn> till LMA, VMA och startadr.\n"
 "    {--change-section-address|--adjust-section-vma} <namn>{=|+|-}<tal>\n"
-"                                  Ändra LMA och VMA på sektion <namn> med <tal>\n"
+"                                  Ändra LMA och VMA på sektion <namn> med <tal>\n"
 "     --change-section-lma <namn>{=|+|-}<tal>\n"
-"                                  Ändra LMA på sektion <namn> med <tal>\n"
+"                                  Ändra LMA på sektion <namn> med <tal>\n"
 "     --change-section-vma <namn>{=|+|-}<tal>\n"
-"                                  Ändra VMA på sektion <namn> med <tal>\n"
+"                                  Ändra VMA på sektion <namn> med <tal>\n"
 "    {--[no-]change-warnings|--[no-]adjust-warnings}\n"
 "                                  Varna (inte/[no-]) om en sektion inte finns\n"
 "     --set-section-flags <namn>=<flaggor>\n"
-"                                  Sätt sektion <namn>s attribut till <flaggor>\n"
-"     --add-section <namn>=<fil>   Lägg till sektion <namn> i <fil> till utdatan\n"
-"     --rename-section <gam>=<ny>[,<flaggor>] Byt namn på sektion <gam> till <ny>\n"
-"     --change-leading-char        Ändra till utformatets typ av inledningstecken\n"
-"     --remove-leading-char        Ta bort inledningstecken från globala symboler\n"
-"     --redefine-sym <gam>=<ny>    Definiera om symbolen med namn <gam> till <ny>\n"
-"     --srec-len <nr>              Begränsa längden på genererade S-poster\n"
-"     --srec-forceS3               Begränsa typen av genererade S-poster till S3\n"
-"     --strip-symbols <fil>        -N för alla symboler som listas i <fil>\n"
-"     --keep-symbols <fil>         -K för alla symboler som listas i <fil>\n"
-"     --localize-symbols <fil>     -L för alla symboler som listas i <fil>\n"
-"     --keep-global-symbols <fil>  -G för alla symboler som listas i <fil>\n"
-"     --weaken-symbols <fil>       -W för alla symboler som listas i <fil>\n"
-"     --alt-machine-code <index>   Använd alternativ maskinkod för utdata\n"
-"  -v --verbose                    Lista alla förändrade objektfiler\n"
+"                                  Sätt sektion <namn>s attribut till <flaggor>\n"
+"     --add-section <namn>=<fil>   Lägg till sektion <namn> i <fil> till utdatan\n"
+"     --rename-section <gam>=<ny>[,<flaggor>] Byt namn på sektion <gam> till <ny>\n"
+"     --change-leading-char        Framtvinga utformatets inledande teckentyp\n"
+"     --remove-leading-char        Ta bort inledningstecken från globala symboler\n"
+"     --redefine-sym <gam>=<ny>    Definiera om symbolnamn <gam> till <ny>\n"
+"     --redefine-syms <fil>        --redefine-sym för alla symbolpar i <fil>\n"
+"     --srec-len <nr>              Begränsa längden på genererade S-poster\n"
+"     --srec-forceS3               Begränsa typen av genererade S-poster till S3\n"
+"     --strip-symbols <fil>        -N för alla symboler som listas i <fil>\n"
+"     --keep-symbols <fil>         -K för alla symboler som listas i <fil>\n"
+"     --localize-symbols <fil>     -L för alla symboler som listas i <fil>\n"
+"     --keep-global-symbols <fil>  -G för alla symboler som listas i <fil>\n"
+"     --weaken-symbols <fil>       -W för alla symboler som listas i <fil>\n"
+"     --alt-machine-code <index>   Använd alternativ maskinkod för utdata\n"
+"     --prefix-symbols <prefix>     Börja varje symbolnamn med <prefix>\n"
+"     --prefix-sections <prefix>    Börja varje sektionsnamn med <prefix>\n"
+"     --prefix-alloc-sections <prefix>\n"
+"                                   Börja varje allokerbar sektions namn med\n"
+"                                      <prefix>\n"
+"  -v --verbose                    Lista alla förändrade objektfiler\n"
 "  -V --version                    Visa programmets versionsinformation\n"
-"  -h --help                       Visa denna hjälp\n"
+"  -h --help                       Visa denna hjälp\n"
+"     --info                        Lista objektformat & arkitekturer som stöds\n"
 
-#
-#: objcopy.c:432
+#: objcopy.c:493
 #, c-format
-msgid "Usage: %s <options> in-file(s)\n"
-msgstr "Användning: %s <flaggor> indatafil(er)\n"
+msgid "Usage: %s <option(s)> in-file(s)\n"
+msgstr "Användning: %s <flaggor> infil(er)\n"
 
-#
-#: objcopy.c:434
+#: objcopy.c:494
+msgid " Removes symbols and sections from files\n"
+msgstr " Tar bort symboler och sektioner från filer\n"
+
+#: objcopy.c:496
 msgid ""
-"  -I --input-target <bfdname>      Assume input file is in format <bfdname>\n"
-"  -O --output-target <bfdname>     Create an output file in format <bfdname>\n"
-"  -F --target <bfdname>            Set both input and output format to <bfdname>\n"
+"  -I --input-target=<bfdname>      Assume input file is in format <bfdname>\n"
+"  -O --output-target=<bfdname>     Create an output file in format <bfdname>\n"
+"  -F --target=<bfdname>            Set both input and output format to <bfdname>\n"
 "  -p --preserve-dates              Copy modified/access timestamps to the output\n"
-"  -R --remove-section <name>       Remove section <name> from the output\n"
+"  -R --remove-section=<name>       Remove section <name> from the output\n"
 "  -s --strip-all                   Remove all symbol and relocation information\n"
-"  -g -S --strip-debug              Remove all debugging symbols\n"
+"  -g -S -d --strip-debug           Remove all debugging symbols & sections\n"
 "     --strip-unneeded              Remove all symbols not needed by relocations\n"
-"  -N --strip-symbol <name>         Do not copy symbol <name>\n"
-"  -K --keep-symbol <name>          Only copy symbol <name>\n"
+"  -N --strip-symbol=<name>         Do not copy symbol <name>\n"
+"  -K --keep-symbol=<name>          Only copy symbol <name>\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"
 "  -V --version                     Display this program's version number\n"
 "  -h --help                        Display this output\n"
+"     --info                        List object formats & architectures supported\n"
 "  -o <file>                        Place stripped output into <file>\n"
 msgstr ""
-"  -I --input-target <bfd-namn>     Antag indatafilens format är <bfd-namn>\n"
-"  -O --output-target <bfd-namn>    Skapa utdatafilen i formatet <bfd-namn>\n"
-"  -F --target <bfd-namn>           Sätt både in- och utformatet till <bfd-namn>\n"
-"  -p --preserve-dates              Kopiera ändrings/åtkomsttider till utdatan\n"
-"  -R --remove-section <namn>       Ta bort sektion <namn> från utdatan\n"
-"  -s --strip-all                   Ta bort all symbol- och omlokaliseringsinfo\n"
-"  -g -S --strip-debug              Ta bort alla felsökningssymboler\n"
-"     --strip-unneeded              Ta bort symboler onödiga för omlokaliseringen\n"
-"  -N --strip-symbol <namn>         Kopiera inte symbol <namn>\n"
-"  -K --keep-symbol <namn>          Kopiera endast symbol <namn>\n"
+"  -I --input-target=<bfd-namn>     Antag infilens format till <bfd-namn>\n"
+"  -O --output-target=<bfd-namn>    Skapa utfilen i format <bfd-namn>\n"
+"  -F --target=<bfd-namn>           Sätt både in- och utformatet till <bfd-namn>\n"
+"  -p --preserve-dates              Kopiera ändrings/åtkomsttider till utdatan\n"
+"  -R --remove-section=<namn>       Ta bort sektion <namn> från utdatan\n"
+"  -s --strip-all                   Rensa bort all symbol- och relokeringsinfo\n"
+"  -g -S -d --strip-debug           Rensa bort alla felsökssymboler & -sektioner\n"
+"     --strip-unneeded              Rensa bort alla symboler som inte är\n"
+"                                   nödvändiga för relokeringen\n"
+"  -N --strip-symbol=<namn>         Kopiera inte symbol <namn>\n"
+"  -K --keep-symbol=<namn>          Kopiera endast symbol <namn>\n"
 "  -x --discard-all                 Ta bort alla icke-globala symboler\n"
 "  -X --discard-locals              Ta bort alla kompilatorgenererade symboler\n"
-"  -v --verbose                     Lista alla förändrade objektfiler\n"
+"  -v --verbose                     Lista alla förändrade objektfiler\n"
 "  -V --version                     Visa programmets versionsinformation\n"
-"  -h --help                        Visa denna hjälp\n"
-"  -o <fil>                         Spara den utrensade utdatan i <fil>\n"
+"  -h --help                        Visa denna hjälp\n"
+"     --info                        Lista objektformat & arkitekturer som stöds\n"
+"  -o <fil>                         Spara den rensade utdatan i <fil>\n"
 
-#
-#: objcopy.c:504
+#: objcopy.c:567
 #, c-format
 msgid "unrecognized section flag `%s'"
-msgstr "okänd sektionsflagga \"%s\""
+msgstr "okänd sektionsflagga \"%s\""
 
-#
-#: objcopy.c:505
+#: objcopy.c:568
 #, c-format
 msgid "supported flags: %s"
 msgstr "flaggor som hanteras: %s"
 
-#
-#: objcopy.c:582 objcopy.c:2206
+#: objcopy.c:645 objcopy.c:2526
 #, c-format
 msgid "cannot stat: %s: %s"
 msgstr "kan inte ta status: %s: %s"
 
-#
-#: objcopy.c:589 objcopy.c:2224
+#: objcopy.c:652 objcopy.c:2544
 #, c-format
 msgid "cannot open: %s: %s"
-msgstr "kan inte öppna: %s: %s"
+msgstr "kan inte öppna: %s: %s"
 
-#
-#: objcopy.c:592 objcopy.c:2228
+#: objcopy.c:655 objcopy.c:2548
 #, c-format
 msgid "%s: fread failed"
 msgstr "%s: fread misslyckades"
 
-#
-#: objcopy.c:665
+#: objcopy.c:728
 #, c-format
 msgid "Ignoring rubbish found on line %d of %s"
-msgstr "Ignorerar skräp hittat på rad %d i %s"
+msgstr "Ignorerar skräp hittat på rad %d i %s"
 
-#
-#: objcopy.c:886
+#: objcopy.c:979
 #, c-format
 msgid "%s: Multiple redefinition of symbol \"%s\""
 msgstr "%s: Flera omdefinieringar av symbol \"%s\""
 
-#
-#: objcopy.c:891
+#: objcopy.c:983
 #, c-format
 msgid "%s: Symbol \"%s\" is target of more than one redefinition"
-msgstr "%s: Symbol \"%s\" är mål för mer än en omdefiniering"
+msgstr "%s: Mer än en symbol omdefinieras till \"%s\""
 
-#
-#: objcopy.c:943
+#: objcopy.c:1010
+#, c-format
+msgid "couldn't open symbol redefinition file %s (error: %s)"
+msgstr "kunde inte öppna fil \"%s\" med symbolomdefinieringar (fel: %s)"
+
+#: objcopy.c:1088
+#, c-format
+msgid "%s: garbage at end of line %d"
+msgstr "%s: skräp i slutet på rad %d"
+
+#: objcopy.c:1091
+#, c-format
+msgid "%s: missing new symbol name at line %d"
+msgstr "%s: nytt symbolnamn saknas på rad %d"
+
+#: objcopy.c:1101
+#, c-format
+msgid "%s: premature end of file at line %d"
+msgstr "%s: för tidigt filslut på rad %d"
+
+#: objcopy.c:1147
 msgid "Unable to change endianness of input file(s)"
-msgstr "Kan inte ändra endian-typ på indatafilen(erna)"
+msgstr "Kan inte ändra endian-typ på infilen(erna)"
 
-#
-#: objcopy.c:951
+#: objcopy.c:1155
 #, c-format
 msgid "copy from %s(%s) to %s(%s)\n"
-msgstr "kopierar från %s(%s) till %s(%s)\n"
+msgstr "kopierar från %s(%s) till %s(%s)\n"
 
-#
-#: objcopy.c:975
+#: objcopy.c:1182
 #, c-format
 msgid "Warning: Output file cannot represent architecture %s"
-msgstr "Varning: Utdatafilen kan inte representera arkitektur %s"
+msgstr "Varning: Utfilen kan inte representera arkitektur %s"
 
-#
-#: objcopy.c:1002
+#: objcopy.c:1211
 #, c-format
 msgid "can't create section `%s': %s"
 msgstr "kan inte skapa sektion \"%s\": %s"
 
-#
-#: objcopy.c:1088
+#: objcopy.c:1304
 #, c-format
 msgid "Can't fill gap after %s: %s"
 msgstr "Kan inte fylla luckan efter %s: %s"
 
-#
-#: objcopy.c:1113
+#: objcopy.c:1329
 #, c-format
 msgid "Can't add padding to %s: %s"
 msgstr "Kan inte fylla ut efter %s: %s"
 
-#
-#: objcopy.c:1252
+#: objcopy.c:1485
 #, c-format
 msgid "%s: error copying private BFD data: %s"
 msgstr "%s: fel vid kopiering av privat BFD-data: %s"
 
-#
-#: objcopy.c:1265
+#: objcopy.c:1498
 msgid "unknown alternate machine code, ignored"
-msgstr "okänd alternativ maskinkod, ignorerad"
+msgstr "okänd alternativ maskinkod, ignorerad"
 
-#
-#: objcopy.c:1295
+#: objcopy.c:1531 objcopy.c:1561
 #, c-format
 msgid "cannot mkdir %s for archive copying (error: %s)"
-msgstr "kan inte skapa katalog %s för arkivkopiering (fel: %s)"
+msgstr "kan inte skapa katalog %s för arkivkopiering (fel: %s)"
 
-#
-#: objcopy.c:1466
+#: objcopy.c:1749
 #, c-format
 msgid "Multiple renames of section %s"
-msgstr "Flera namnbyten på sektion %s"
+msgstr "Flera namnbyten på sektion %s"
 
-#
-#: objcopy.c:1550
+#: objcopy.c:1840
 msgid "making"
 msgstr "tillverkning"
 
-#
-#: objcopy.c:1559
+#: objcopy.c:1849
 msgid "size"
 msgstr "storlek"
 
-#
-#: objcopy.c:1573
+#: objcopy.c:1863
 msgid "vma"
 msgstr "vma"
 
-#
-#: objcopy.c:1599
+#: objcopy.c:1888
 msgid "alignment"
-msgstr "jämn gräns"
+msgstr "justering"
 
-#
-#: objcopy.c:1607
+#: objcopy.c:1896
 msgid "flags"
 msgstr "flaggor"
 
-#
-#: objcopy.c:1624
+#: objcopy.c:1918
 msgid "private data"
 msgstr "privat data"
 
-#
-#: objcopy.c:1632
+#: objcopy.c:1926
 #, c-format
 msgid "%s: section `%s': error in %s: %s"
-msgstr "%s: sektion \"%s\": fel på %s: %s"
+msgstr "%s: sektion \"%s\": fel på %s: %s"
 
-#
-#: objcopy.c:1910
+#: objcopy.c:2199
 #, c-format
 msgid "%s: can't create debugging section: %s"
-msgstr "%s: kan inte skapa felsökningssektion: %s"
+msgstr "%s: kan inte skapa felsökningssektion: %s"
 
-#
-#: objcopy.c:1925
+#: objcopy.c:2214
 #, c-format
 msgid "%s: can't set debugging section contents: %s"
-msgstr "%s: kan inte sätta innehållet i felsökningssektionen: %s"
+msgstr "%s: kan inte sätta innehållet i felsökningssektionen: %s"
 
-#
-#: objcopy.c:1934
+#: objcopy.c:2223
 #, c-format
 msgid "%s: don't know how to write debugging information for %s"
-msgstr "%s: vet inte hur man skriver felsökningsinformation för %s"
+msgstr "%s: vet inte hur man skriver felsökningsinformation för %s"
 
-#
-#: objcopy.c:2041
+#: objcopy.c:2346
 #, c-format
 msgid "%s: cannot stat: %s"
 msgstr "%s: kan inte ta status: %s"
 
-#
-#: objcopy.c:2092
+#: objcopy.c:2400
 msgid "byte number must be non-negative"
-msgstr "bytenummer får inte vara negativt"
+msgstr "bytenummer får inte vara negativt"
 
-#
-#: objcopy.c:2102
+#: objcopy.c:2410
 msgid "interleave must be positive"
-msgstr "intervallstorleken måste vara positiv"
+msgstr "intervallstorleken måste vara positiv"
 
-#
-#: objcopy.c:2122 objcopy.c:2130
+#: objcopy.c:2430 objcopy.c:2438
 #, c-format
 msgid "%s both copied and removed"
-msgstr "%s både kopierad och borttagen"
+msgstr "%s både kopierad och borttagen"
 
-#
-#: objcopy.c:2203 objcopy.c:2273 objcopy.c:2373 objcopy.c:2400 objcopy.c:2424
-#: objcopy.c:2428 objcopy.c:2448
+#: objcopy.c:2523 objcopy.c:2593 objcopy.c:2693 objcopy.c:2724 objcopy.c:2748
+#: objcopy.c:2752 objcopy.c:2772
 #, c-format
 msgid "bad format for %s"
-msgstr "felaktigt format på %s"
+msgstr "felaktigt format på %s"
 
-#
-#: objcopy.c:2342
+#: objcopy.c:2662
 #, c-format
 msgid "Warning: truncating gap-fill from 0x%s to 0x%x"
-msgstr "Varning: kortar av utfyllnadsvärdet från 0x%s till 0x%x"
+msgstr "Varning: kortar av utfyllnadsvärdet från 0x%s till 0x%x"
 
-#
-#: objcopy.c:2494
+#: objcopy.c:2818
 msgid "alternate machine code index must be positive"
-msgstr "index för alternativ maskinkod måste vara positivt"
+msgstr "index för alternativ maskinkod måste vara positivt"
 
-#
-#: objcopy.c:2512
+#: objcopy.c:2856
 msgid "byte number must be less than interleave"
-msgstr "bytenummer måste vara mindre än antalet byte i intervallet"
+msgstr "bytenummer måste vara mindre än antalet byte i intervallet"
 
-#
-#: objcopy.c:2539
+#: objcopy.c:2883
 #, c-format
 msgid "architecture %s unknown"
-msgstr "arkitektur %s är okänd"
+msgstr "arkitektur %s är okänd"
 
-#
-#: objcopy.c:2543
+#: objcopy.c:2887
 msgid "Warning: input target 'binary' required for binary architecture parameter."
-msgstr "Varning: indata måste ha formatet \"binary\" för binärarkitektursparametern."
+msgstr "Varning: indata måste ha formatet 'binary' för binärarkitektursparametrar."
 
-#
-#: objcopy.c:2544
+#: objcopy.c:2888
 #, c-format
 msgid " Argument %s ignored"
-msgstr " Argument %s ignoreras"
+msgstr " Argument %s ignorerat"
 
-#
-#: objcopy.c:2550
+#: objcopy.c:2894
 #, c-format
 msgid "Cannot stat: %s: %s"
 msgstr "Kan inte ta status: %s: %s"
 
-#
-#: objcopy.c:2590 objcopy.c:2604
+#: objcopy.c:2934 objcopy.c:2948
 #, c-format
 msgid "%s %s%c0x%s never used"
-msgstr "%s %s%c0x%s användes aldrig"
+msgstr "%s %s%c0x%s användes aldrig"
 
-#
-#: objdump.c:164
+#: objdump.c:197
 #, c-format
-msgid "Usage: %s OPTION... FILE...\n"
-msgstr "Användning: %s FLAGGA... FIL...\n"
+msgid "Usage: %s <option(s)> <file(s)>\n"
+msgstr "Användning: %s <flaggor> <fil(er)>\n"
 
-#
-#: objdump.c:165
-msgid "Display information from object FILE.\n"
-msgstr "Visa information från en objektFIL.\n"
+#: objdump.c:198
+msgid " Display information from object <file(s)>.\n"
+msgstr "Visa information från objekt<fil(er)>.\n"
 
-#
-#: objdump.c:166
-msgid ""
-"\n"
-" At least one of the following switches must be given:\n"
-msgstr ""
-"\n"
-" Minst en av följande flaggor måste anges:\n"
+#: objdump.c:199
+msgid " At least one of the following switches must be given:\n"
+msgstr " Minst en av följande flaggor måste ges:\n"
 
-#
-#: objdump.c:167
+#: objdump.c:200
 msgid ""
 "  -a, --archive-headers    Display archive header information\n"
 "  -f, --file-headers       Display the contents of the overall file header\n"
@@ -2320,40 +2115,38 @@
 "  -T, --dynamic-syms       Display the contents of the dynamic symbol table\n"
 "  -r, --reloc              Display the relocation entries in the file\n"
 "  -R, --dynamic-reloc      Display the dynamic relocation entries in the file\n"
-"  -V, --version            Display this program's version number\n"
+"  -v, --version            Display this program's version number\n"
 "  -i, --info               List object formats and architectures supported\n"
 "  -H, --help               Display this information\n"
 msgstr ""
-"  -a, --archive-headers    Visa information från arkivhuvuden\n"
-"  -f, --file-headers       Visa innehållet i det övergripande filhuvudet\n"
-"  -p, --private-headers    Visa innehållet i objektformatspecifika filhuvuden\n"
-"  -h, --[section-]headers  Visa innehållet i sektionshuvuden\n"
-"  -x, --all-headers        Visa innehållet i alla huvuden\n"
+"  -a, --archive-headers    Visa information från arkivhuvuden\n"
+"  -f, --file-headers       Visa innehållet i det övergripande filhuvudet\n"
+"  -p, --private-headers    Visa innehållet i objektformatspecifika filhuvuden\n"
+"  -h, --[section-]headers  Visa innehållet i sektionshuvuden\n"
+"  -x, --all-headers        Visa innehållet i alla huvuden\n"
 "  -d, --disassemble        Visa disassemblering av exekverbara sektioner\n"
 "  -D, --disassemble-all    Visa disassemblering av alla sektioner\n"
-"  -S, --source             Varva källkod med disassemblering\n"
-"  -s, --full-contents      Visa hela innehållet i alla utvalda sektioner\n"
-"  -g, --debugging          Visa felsökningsinformation från objektfilen\n"
-"  -G, --stabs              Visa (obehandlat) eventuell STABS-info från filen\n"
-"  -t, --syms               Visa innehållet i symboltabellen(erna)\n"
-"  -T, --dynamic-syms       Visa innehållet i tabellen med dynamiska symboler\n"
-"  -r, --reloc              Visa omlokaliseringsposterna i filen\n"
-"  -R, --dynamic-reloc      Visa de dynamiska omlokaliseringsposterna i filen\n"
-"  -V, --version            Visa programmets versionsinformation\n"
+"  -S, --source             Varva källkod med disassemblering\n"
+"  -s, --full-contents      Visa hela innehållet i alla utvalda sektioner\n"
+"  -g, --debugging          Visa felsökningsinformation från objektfilen\n"
+"  -G, --stabs              Visa (oformaterat) eventuell STABS-info från filen\n"
+"  -t, --syms               Visa innehållet i symboltabellen(erna)\n"
+"  -T, --dynamic-syms       Visa innehållet i tabellen med dynamiska symboler\n"
+"  -r, --reloc              Visa relokeringsposterna i filen\n"
+"  -R, --dynamic-reloc      Visa de dynamiska relokeringsposterna i filen\n"
+"  -v, --version            Visa programmets versionsinformation\n"
 "  -i, --info               Lista de objektformat och arkitekturer som hanteras\n"
-"  -H, --help               Visa denna hjälp\n"
+"  -H, --help               Visa denna hjälp\n"
 
-#
-#: objdump.c:189
+#: objdump.c:222
 msgid ""
 "\n"
 " The following switches are optional:\n"
 msgstr ""
 "\n"
-" Följande flaggor är frivilliga:\n"
+" Följande flaggor är frivilliga:\n"
 
-#
-#: objdump.c:190
+#: objdump.c:223
 msgid ""
 "  -b, --target=BFDNAME           Specify the target object format as BFDNAME\n"
 "  -m, --architecture=MACHINE     Specify the target architecture as MACHINE\n"
@@ -2364,95 +2157,85 @@
 "      --file-start-context       Include context from start of file (with -S)\n"
 "  -l, --line-numbers             Include line numbers and filenames in output\n"
 "  -C, --demangle[=STYLE]         Decode mangled/processed symbol names\n"
-"                                  The STYLE, if specified, can be `auto', 'gnu',\n"
-"                                  'lucid', 'arm', 'hp', 'edg', or 'gnu-new-abi'\n"
+"                                  The STYLE, if specified, can be `auto', `gnu',\n"
+"                                  `lucid', `arm', `hp', `edg', `gnu-v3', `java'\n"
+"                                  or `gnat'\n"
 "  -w, --wide                     Format output for more than 80 columns\n"
 "  -z, --disassemble-zeroes       Do not skip blocks of zeroes when disassembling\n"
-"      --start-address=ADDR       Only process data whoes address is >= ADDR\n"
-"      --stop-address=ADDR        Only process data whoes address is <= ADDR\n"
+"      --start-address=ADDR       Only process data whose address is >= ADDR\n"
+"      --stop-address=ADDR        Only process data whose address is <= ADDR\n"
 "      --prefix-addresses         Print complete address alongside disassembly\n"
 "      --[no-]show-raw-insn       Display hex alongside symbolic disassembly\n"
 "      --adjust-vma=OFFSET        Add OFFSET to all displayed section addresses\n"
 "\n"
 msgstr ""
-"  -b, --target=BFDNAMN           Ange att målobjektets format är BFDNAMN\n"
-"  -m, --architecture=MASKIN      Ange att målarkitekturen är MASKIN\n"
+"  -b, --target=BFDNAMN           Välj BFDNAMN som målobjektets format\n"
+"  -m, --architecture=MASKIN      Välj målarkitektur MASKIN\n"
 "  -j, --section=NAMN             Visa endast information om sektion NAMN\n"
 "  -M, --disassembler-options=FLG Skicka vidare FLG till disassembleraren\n"
 "  -EB --endian=big               Antag big endian-format vid disassemblering\n"
 "  -EL --endian=little            Antag little endian-format vid disassemblering\n"
-"      --file-start-context       Ta med omgivningen i början av filen (med -S)\n"
+"      --file-start-context       Ta med omgivningen i början av filen (med -S)\n"
 "  -l, --line-numbers             Ta med radnummer och filnamn i utdatan\n"
-"  -C, --demangle[=STIL]          Avkoda kodade symbolnamn\n"
-"                                  STIL, om angivet, kan vara: \"auto\", \"gnu\",\n"
-"                                  \"lucid\", \"arm\", \"hp\", \"edg\", \"gnu-new-abi\"\n"
-"  -w, --wide                     Anpassa utdatan för mer än 80 kolumner\n"
-"  -z, --disassemble-zeroes       Hoppa inte över block av nollor vid\n"
+"  -C, --demangle[=STIL]          Avkoda manglade symbolnamn\n"
+"                                  STIL, om givet, kan vara: \"auto\", \"gnu\",\n"
+"                                  \"lucid\", \"arm\", \"hp\", \"edg\", \"gnu-v3\"\n"
+"                                  \"java\" eller `gnat'\n"
+"  -w, --wide                     Formatera utdatan för mer än 80 kolumner\n"
+"  -z, --disassemble-zeroes       Hoppa inte över block av nollor vid\n"
 "                                 disassemblering\n"
-"      --start-address=ADR        Behandla endast data på adresser >= ADR\n"
-"      --stop-address=ADR         Behandla endast data på adresser <= ADR\n"
-"      --prefix-addresses         Visa fullständiga adresser jämte disassembler.\n"
-"      --[no-]show-raw-insn       Visa hex.-kod jämte disassemblering\n"
-"      --adjust-vma=OFFSET        Lägg till OFFSET till alla visade sektionsadresser\n"
+"      --start-address=ADR        Behandla endast data på adresser >= ADR\n"
+"      --stop-address=ADR         Behandla endast data på adresser <= ADR\n"
+"      --prefix-addresses         Visa fullständiga adresser jämte disassembler.\n"
+"      --[no-]show-raw-insn       Visa hex.-kod jämte disassemblering\n"
+"      --adjust-vma=OFFSET        Lägg till OFFSET till alla visade sektionsadresser\n"
 "\n"
 
-#
-#: objdump.c:359
+#: objdump.c:391
 msgid "Sections:\n"
 msgstr "Sektioner:\n"
 
-#
-#: objdump.c:362
+#: objdump.c:394 objdump.c:398
 msgid "Idx Name          Size      VMA       LMA       File off  Algn"
 msgstr "Idx Namn          Storlek   VMA       LMA       Filoffs   Just"
 
-#
-#: objdump.c:364
+#: objdump.c:400
 msgid "Idx Name          Size      VMA               LMA               File off  Algn"
 msgstr "Idx Namn          Storlek   VMA               LMA               Filoffs   Just"
 
-#
-#: objdump.c:368
+#: objdump.c:404
 msgid "  Flags"
 msgstr "  Flaggor"
 
-#
-#: objdump.c:418
+#: objdump.c:406
+msgid "  Pg"
+msgstr " Sid"
+
+#: objdump.c:451
 #, c-format
 msgid "%s: not a dynamic object"
 msgstr "%s: inte ett dynamiskt objekt"
 
-#
-#: objdump.c:434
-#, c-format
-msgid "%s: No dynamic symbols"
-msgstr "%s: Inga dynamiska symboler"
-
-#
-#: objdump.c:1124
+#: objdump.c:1144
 msgid "Out of virtual memory"
-msgstr "Slut på virtuellt minne"
+msgstr "Slut på virtuellt minne"
 
-#
-#: objdump.c:1553
+#: objdump.c:1574
 #, c-format
 msgid "Can't use supplied machine %s"
-msgstr "Kan inte använda den tillhandahållna maskinen %s"
+msgstr "Kan inte använda den tillhandahållna maskinen %s"
 
-#
-#: objdump.c:1571
+#: objdump.c:1592
 #, c-format
 msgid "Can't disassemble for architecture %s\n"
-msgstr "Kan inte disassemblera för arkitektur %s\n"
+msgstr "Kan inte disassemblera för arkitektur %s\n"
 
-#
-#: objdump.c:1653
+#: objdump.c:1682
 #, c-format
 msgid "Disassembly of section %s:\n"
 msgstr "Disassemblering av sektion %s:\n"
 
-#
-#: objdump.c:1828
+#: objdump.c:1847
 #, c-format
 msgid ""
 "No %s section present\n"
@@ -2461,48 +2244,41 @@
 "Det finns ingen %s-sektion\n"
 "\n"
 
-#
-#: objdump.c:1835
+#: objdump.c:1854
 #, c-format
 msgid "%s has no %s section"
 msgstr "%s har ingen %s-sektion"
 
-#
-#: objdump.c:1849
+#: objdump.c:1868
 #, c-format
 msgid "Reading %s section of %s failed: %s"
-msgstr "Läsa %s-sektionen i %s misslyckades: %s"
+msgstr "Lyckades inte läsa %s-sektionen i %s: %s"
 
-#
-#: objdump.c:1861
+#: objdump.c:1880
 #, c-format
 msgid "Reading %s section of %s failed: %s\n"
-msgstr "Läsa %s-sektionen i %s misslyckades: %s\n"
+msgstr "Lyckades inte läsa %s-sektionen i %s: %s\n"
 
-#
-#: objdump.c:1904
+#: objdump.c:1923
 #, c-format
 msgid ""
 "Contents of %s section:\n"
 "\n"
 msgstr ""
-"Innehåll i %s-sektionen:\n"
+"Innehåll i %s-sektionen:\n"
 "\n"
 
-#
-#: objdump.c:2004
+#: objdump.c:2021
 #, c-format
 msgid "architecture: %s, "
 msgstr "arkitektur: %s, "
 
-#
-#: objdump.c:2007
+#: objdump.c:2024
 #, c-format
 msgid "flags 0x%08x:\n"
 msgstr "flaggor 0x%08x:\n"
 
-#
-#: objdump.c:2020
+#: objdump.c:2038
 msgid ""
 "\n"
 "start address 0x"
@@ -2510,8 +2286,7 @@
 "\n"
 "startadress 0x"
 
-#
-#: objdump.c:2052
+#: objdump.c:2071
 #, c-format
 msgid ""
 "\n"
@@ -2520,556 +2295,460 @@
 "\n"
 "%s:     filformat %s\n"
 
-#
-#: objdump.c:2094
+#: objdump.c:2111
 #, c-format
 msgid "%s: printing debugging information failed"
-msgstr "%s: visa felsökningsinformationen misslyckades"
+msgstr "%s: lyckades inte visa felsökningsinformationen"
 
-#
-#: objdump.c:2171
+#: objdump.c:2190
 #, c-format
 msgid "In archive %s:\n"
 msgstr "I arkiv %s:\n"
 
-#
-#: objdump.c:2223
+#: objdump.c:2249
 #, c-format
 msgid "Contents of section %s:\n"
-msgstr "Innehåll i %s-sektionen:\n"
+msgstr "Innehåll i %s-sektionen:\n"
 
-#
-#: objdump.c:2736
-#, c-format
-msgid "BFD header file version %s\n"
-msgstr "BFD-huvudfil version %s\n"
+#: objdump.c:2369
+msgid "no symbols\n"
+msgstr "inga symboler\n"
 
-#
-#: objdump.c:2825
+#: objdump.c:2718
 msgid "unrecognized -E option"
-msgstr "okänd -E-flagga"
+msgstr "okänd -E-flagga"
 
-#
-#: objdump.c:2836
+#: objdump.c:2729
 #, c-format
 msgid "unrecognized --endian type `%s'"
-msgstr "okänd --endian-typ \"%s\""
+msgstr "okänd --endian-typ \"%s\""
 
-#
-#: rdcoff.c:205
+#: rdcoff.c:206
 #, c-format
 msgid "parse_coff_type: Bad type code 0x%x"
 msgstr "parse_coff_type: Felaktig typkod 0x%x"
 
-#
-#: rdcoff.c:423 rdcoff.c:531 rdcoff.c:730
+#: rdcoff.c:424 rdcoff.c:532 rdcoff.c:731
 #, c-format
 msgid "bfd_coff_get_syment failed: %s"
 msgstr "bfd_coff_get_syment misslyckades: %s"
 
-#
-#: rdcoff.c:439 rdcoff.c:750
+#: rdcoff.c:440 rdcoff.c:751
 #, c-format
 msgid "bfd_coff_get_auxent failed: %s"
 msgstr "bfd_coff_get_auxent misslyckades: %s"
 
-#
-#: rdcoff.c:817
+#: rdcoff.c:818
 #, c-format
 msgid "%ld: .bf without preceding function"
 msgstr "%ld: .bf saknar inledande funktion"
 
-#
-#: rdcoff.c:867
+#: rdcoff.c:868
 #, c-format
 msgid "%ld: unexpected .ef\n"
-msgstr "%ld: oväntad .ef\n"
+msgstr "%ld: oväntad .ef\n"
 
-#
-#: rddbg.c:87
+#: rddbg.c:91
 #, c-format
 msgid "%s: no recognized debugging information"
-msgstr "%s: ingen känd felsökningsinformation"
+msgstr "%s: ingen känd felsökningsinformation"
 
-#
-#: rddbg.c:410
+#: rddbg.c:415
 msgid "Last stabs entries before error:\n"
-msgstr "De sista stabs-posterna innan felet:\n"
+msgstr "De sista stabs-posterna före felet:\n"
 
-#
-#: readelf.c:318
+#: readelf.c:455
 #, c-format
 msgid "%s: Error: "
 msgstr "%s: Fel: "
 
-#
-#: readelf.c:329
+#: readelf.c:466
 #, c-format
 msgid "%s: Warning: "
 msgstr "%s: Varning: "
 
-#
-#: readelf.c:351
+#: readelf.c:488
 #, c-format
-msgid "Unable to seek to %x for %s\n"
-msgstr "Kan inte uppsöka %2$s på %1$x\n"
+msgid "Unable to seek to 0x%x for %s\n"
+msgstr "Kan inte uppsöka %2$s på 0x%1$x\n"
 
-#
-#: readelf.c:362
+#: readelf.c:499
 #, c-format
-msgid "Out of memory allocating %d bytes for %s\n"
-msgstr "Slut på minne vid allokering av %d byte för %s\n"
+msgid "Out of memory allocating 0x%x bytes for %s\n"
+msgstr "Slut på minne vid allokering av 0x%x byte för %s\n"
 
-#
-#: readelf.c:370
+#: readelf.c:507
 #, c-format
-msgid "Unable to read in %d bytes of %s\n"
-msgstr "Kan inte läsa in %d byte från %s\n"
+msgid "Unable to read in 0x%x bytes of %s\n"
+msgstr "Kan inte läsa in 0x%x byte %s\n"
 
-#
-#: readelf.c:423 readelf.c:581
+#: readelf.c:560 readelf.c:614 readelf.c:798 readelf.c:833
 #, c-format
 msgid "Unhandled data length: %d\n"
-msgstr "Storlek på data som inte kan behandlas: %d\n"
+msgstr "Storlek på data som inte kan behandlas: %d\n"
 
-#
-#: readelf.c:660
+#: readelf.c:924
 msgid "Don't know about relocations on this machine architecture\n"
-msgstr "Vet inte hur man omlokaliserar på den här maskinarkitekturen\n"
+msgstr "Vet inget om relokering på denna maskinarkitektur\n"
 
-#
-#: readelf.c:682 readelf.c:711 readelf.c:757 readelf.c:784
+#: readelf.c:946 readelf.c:975 readelf.c:1021 readelf.c:1049
 msgid "relocs"
-msgstr "omlokaliseringar"
+msgstr "relokeringar"
 
-#
-#: readelf.c:693 readelf.c:722 readelf.c:767 readelf.c:794
+#: readelf.c:957 readelf.c:986 readelf.c:1031 readelf.c:1059
 msgid "out of memory parsing relocs"
-msgstr "slut på minne vid tolkning av omlokaliseringar"
+msgstr "slut på minne vid tolkning av relokeringar"
 
-#
-#: readelf.c:845
-msgid " Offset     Info    Type            Symbol's Value  Symbol's Name          Addend\n"
-msgstr " Offset     Info    Typ             Symbolvärde     Symbolnamn             Tillägg\n"
+#: readelf.c:1112
+msgid " Offset     Info    Type                Sym. Value  Symbol's Name + Addend\n"
+msgstr " Offset     Info    Typ                 Symbolvärde Symbolnamn + Tillägg\n"
 
-#
-#: readelf.c:848
-msgid " Offset     Info    Type            Symbol's Value  Symbol's Name\n"
-msgstr " Offset     Info    Typ             Symbolvärde     Symbolnamn\n"
+#: readelf.c:1114
+msgid " Offset     Info    Type            Sym.Value  Sym. Name + Addend\n"
+msgstr " Offset     Info    Typ             Sym.värde  Symbolnamn + Tillägg\n"
 
-#
-#: readelf.c:854
-msgid "    Offset             Info            Type               Symbol's Value   Symbol's Name           Addend\n"
-msgstr "    Offset             Info            Typ                Symbolvärde      Symbolnamn              Tillägg\n"
+#: readelf.c:1119
+msgid " Offset     Info    Type                Sym. Value  Symbol's Name\n"
+msgstr " Offset     Info    Typ                 Sym.värde   Symbolnamn\n"
 
-#
-#: readelf.c:857
-msgid "    Offset             Info            Type               Symbol's Value   Symbol's Name\n"
-msgstr "    Offset             Info            Typ                Symbolvärde      Symbolnamn\n"
+#: readelf.c:1121
+msgid " Offset     Info    Type            Sym.Value  Sym. Name\n"
+msgstr " Offset     Info    Typ             Sym.värde  Symbolnamn\n"
 
-#
-#: readelf.c:1061 readelf.c:1063
+#: readelf.c:1129
+msgid "    Offset             Info             Type               Symbol's Value  Symbol's Name + Addend\n"
+msgstr "    Offset             Info             Typ                Symbolvärde     Symbolnamn + Tillägg\n"
+
+#: readelf.c:1131
+msgid "  Offset          Info           Type           Sym. Value    Sym. Name + Addend\n"
+msgstr "  Offset          Info           Typ            Symbolvärde   Symbolnamn + Tillägg\n"
+
+#: readelf.c:1136
+msgid "    Offset             Info             Type               Symbol's Value  Symbol's Name\n"
+msgstr "    Offset             Info             Typ                Symbolvärde     Symbolnamn\n"
+
+#: readelf.c:1138
+msgid "  Offset          Info           Type           Sym. Value    Sym. Name\n"
+msgstr "  Offset          Info           Typ            Symbolvärde   Symbolnamn\n"
+
+#: readelf.c:1414 readelf.c:1416 readelf.c:1492 readelf.c:1494 readelf.c:1503
+#: readelf.c:1505
 #, c-format
-msgid "unrecognised: %-7lx"
-msgstr "okänd: %-7lx"
+msgid "unrecognized: %-7lx"
+msgstr "okänd: %-7lx"
 
-#
-#: readelf.c:1085
+#: readelf.c:1466
 #, c-format
 msgid "<string table index %3ld>"
-msgstr "<strängtabellsindex  %3ld>"
+msgstr "<strängtabellsindex  %3ld>"
 
-#
-#: readelf.c:1315
+#: readelf.c:1743
 #, c-format
 msgid "Processor Specific: %lx"
 msgstr "processorspecifik: %lx"
 
-#
-#: readelf.c:1334
+#: readelf.c:1762
 #, c-format
 msgid "Operating System specific: %lx"
 msgstr "operativsystemsspecifik: %lx"
 
-#
-#: readelf.c:1337 readelf.c:1961
+#: readelf.c:1765 readelf.c:2417
 #, c-format
 msgid "<unknown>: %lx"
-msgstr "<okänd>: %lx"
+msgstr "<okänd>: %lx"
 
-#
-#: readelf.c:1351
+#: readelf.c:1779
 msgid "NONE (None)"
 msgstr "NONE (ingen)"
 
-#
-#: readelf.c:1352
+#: readelf.c:1780
 msgid "REL (Relocatable file)"
-msgstr "REL (omlokaliseringsbar fil)"
+msgstr "REL (relokeringsbar fil)"
 
-#
-#: readelf.c:1353
+#: readelf.c:1781
 msgid "EXEC (Executable file)"
 msgstr "EXEC (exekverbar fil)"
 
-#
-#: readelf.c:1354
+#: readelf.c:1782
 msgid "DYN (Shared object file)"
 msgstr "DYN (delad objektfil)"
 
-#
-#: readelf.c:1355
+#: readelf.c:1783
 msgid "CORE (Core file)"
 msgstr "CORE (minnesfil)"
 
-#
-#: readelf.c:1359
+#: readelf.c:1787
 #, c-format
 msgid "Processor Specific: (%x)"
 msgstr "processorspecifik: (%x)"
 
-#
-#: readelf.c:1361
+#: readelf.c:1789
 #, c-format
 msgid "OS Specific: (%x)"
 msgstr "OS-specifik: (%x)"
 
-#
-#: readelf.c:1363 readelf.c:1460 readelf.c:2112
+#: readelf.c:1791 readelf.c:1898 readelf.c:2574
 #, c-format
 msgid "<unknown>: %x"
-msgstr "<okänd>: %x"
+msgstr "<okänd>: %x"
 
-#
-#: readelf.c:1376
+#: readelf.c:1804
 msgid "None"
 msgstr "ingen"
 
-#
-#: readelf.c:2152
-msgid "Usage: readelf {options} elf-file(s)\n"
-msgstr "Användning: readelf {flaggor} elf-fil(er)\n"
+#: readelf.c:2616
+msgid "Usage: readelf <option(s)> elf-file(s)\n"
+msgstr "Användning: readelf <flaggor> elf-fil(er)\n"
 
-#
-#: readelf.c:2153
-msgid "  Options are:\n"
-msgstr "  Flaggorna är:\n"
+#: readelf.c:2617
+msgid " Display information about the contents of ELF format files\n"
+msgstr " Visa information om innehållet i filer i ELF-format\n"
 
-#
-#: readelf.c:2154
-msgid "  -a or --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n"
-msgstr "  -a eller --all            Samma som: -h -l -S -s -r -d -V -A -I\n"
-
-#
-#: readelf.c:2155
-msgid "  -h or --file-header       Display the ELF file header\n"
-msgstr "  -h eller --file-header    Visa ELF-filens huvud\n"
-
-#
-#: readelf.c:2156
-msgid "  -l or --program-headers or --segments\n"
-msgstr "  -l eller --program-headers eller --segments\n"
-
-#
-#: readelf.c:2157
-msgid "                            Display the program headers\n"
-msgstr "                            Visa programhuvudena\n"
-
-#
-#: readelf.c:2158
-msgid "  -S or --section-headers or --sections\n"
-msgstr "  -S eller --section-headers eller --sections\n"
-
-#
-#: readelf.c:2159
-msgid "                            Display the sections' header\n"
-msgstr "                            Visa sektionernas huvud\n"
-
-#
-#: readelf.c:2160
-msgid "  -e or --headers           Equivalent to: -h -l -S\n"
-msgstr "  -e eller --headers        Samma som: -h -l -S\n"
-
-#
-#: readelf.c:2161
-msgid "  -s or --syms or --symbols Display the symbol table\n"
+#: readelf.c:2618
+msgid ""
+" Options are:\n"
+"  -a --all               Equivalent to: -h -l -S -s -r -d -V -A -I\n"
+"  -h --file-header       Display the ELF file header\n"
+"  -l --program-headers   Display the program headers\n"
+"     --segments          An alias for --program-headers\n"
+"  -S --section-headers   Display the sections' header\n"
+"     --sections          An alias for --section-headers\n"
+"  -e --headers           Equivalent to: -h -l -S\n"
+"  -s --syms              Display the symbol table\n"
+"      --symbols          An alias for --syms\n"
+"  -n --notes             Display the core notes (if present)\n"
+"  -r --relocs            Display the relocations (if present)\n"
+"  -u --unwind            Display the unwind info (if present)\n"
+"  -d --dynamic           Display the dynamic segment (if present)\n"
+"  -V --version-info      Display the version sections (if present)\n"
+"  -A --arch-specific     Display architecture specific information (if any).\n"
+"  -D --use-dynamic       Use the dynamic section info when displaying symbols\n"
+"  -x --hex-dump=<number> Dump the contents of section <number>\n"
+"  -w[liaprmfFso] or\n"
+"  --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str,=loc]\n"
+"                         Display the contents of DWARF2 debug sections\n"
 msgstr ""
-"  -s eller --syms eller --symbols\n"
-"                            Visa symboltabellen\n"
+" Flaggor är:\n"
+"  -a --all               Samma som: -h -l -S -s -r -d -V -A -I\n"
+"  -h --file-header       Visa ELF-filens huvud\n"
+"  -l --program-headers   Visa programhuvuden\n"
+"     --segments          Synonym för --program-headers\n"
+"  -S --section-headers   Visa sektionernas huvuden\n"
+"     --sections          Synonym för --section-headers\n"
+"  -e --headers           Samma som: -h -l -S\n"
+"  -s --syms              Visa symboltabellen\n"
+"      --symbols          Synonym för --syms\n"
+"  -n --notes             Visa kommentarer från minnesutskriften (om de finns)\n"
+"  -r --relocs            Visa relokeringsinformationen (om den finns)\n"
+"  -u --unwind            Visa tillbakarullningsinformationen (om den finns)\n"
+"  -d --dynamic           Visa det dynamiska segmentet (om det finns)\n"
+"  -V --version-info      Visa versionssektioner (om de finns)\n"
+"  -A --arch-specific     Visa arkitekturspecifik information (om den finns)\n"
+"  -D --use-dynamic       Använd den dynamiska sektionen för att visa symboler\n"
+"  -x --hex-dump=<nummer> Visa innehållet i sektion <nummer>\n"
+"  -w[liaprmfFso] eller\n"
+"  --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str,=loc]\n"
+"                         Visa innehållet i DWARF2-felsökningssektioner\n"
 
-#
-#: readelf.c:2162
-msgid "  -n or --notes             Display the core notes (if present)\n"
-msgstr "  -n eller --notes          Visa kommentarer från minnesutskriften (om de finns)\n"
+#: readelf.c:2640
+msgid ""
+"  -i --instruction-dump=<number>\n"
+"                         Disassemble the contents of section <number>\n"
+msgstr ""
+"  -i --instruction-dump=<nummer>\n"
+"                         Disassemblera innehållet i sektion <nummer>\n"
 
-#
-#: readelf.c:2163
-msgid "  -r or --relocs            Display the relocations (if present)\n"
-msgstr "  -r eller --relocs         Visa omlokaliseringsinformationen (om den finns)\n"
+#: readelf.c:2644
+msgid ""
+"  -I --histogram         Display histogram of bucket list lengths\n"
+"  -W --wide              Allow output width to exceed 80 characters\n"
+"  -H --help              Display this information\n"
+"  -v --version           Display the version number of readelf\n"
+msgstr ""
+"  -I --histogram         Visa ett histogram över hinkarnas listlängder\n"
+"  -W --wide              Tillåt utskrift bredare än 80 tecken\n"
+"  -H --help              Visa denna hjälp\n"
+"  -v --version           Visa versionsinformation för readelf\n"
 
-#
-#: readelf.c:2164
-msgid "  -u or --unwind            Display the unwind info (if present)\n"
-msgstr "  -u eller --unwind         Visa tillbakarullningsinformation (om den finns)\n"
-
-#
-#: readelf.c:2165
-msgid "  -d or --dynamic           Display the dynamic segment (if present)\n"
-msgstr "  -d eller --dynamic        Visa det dynamiska segmentet (om det finns)\n"
-
-#
-#: readelf.c:2166
-msgid "  -V or --version-info      Display the version sections (if present)\n"
-msgstr "  -V eller --version-info   Visa versionssektionen (om den finns)\n"
-
-#
-#: readelf.c:2167
-msgid "  -A or --arch-specific     Display architecture specific information (if any).\n"
-msgstr "  -A eller --arch-specific  Visa arkitekturspecifik information (om den finns)\n"
-
-#
-#: readelf.c:2168
-msgid "  -D or --use-dynamic       Use the dynamic section info when displaying symbols\n"
-msgstr "  -D eller --use-dynamic    Använd den dynamiska sektionen för att visa symboler\n"
-
-#
-#: readelf.c:2169
-msgid "  -x <number> or --hex-dump=<number>\n"
-msgstr "  -x <nr> eller --hex-dump=<nr>\n"
-
-#
-#: readelf.c:2170
-msgid "                            Dump the contents of section <number>\n"
-msgstr "                            Visa innehållet i sektion <nr>\n"
-
-#
-#: readelf.c:2171
-msgid "  -w[liaprmfs] or --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str]\n"
-msgstr "  -w[liaprmfs] eller --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str]\n"
-
-#
-#: readelf.c:2172
-msgid "                            Display the contents of DWARF2 debug sections\n"
-msgstr "                            Visa innehållet i DWARF2-felsökningssektioner\n"
-
-#
-#: readelf.c:2174
-msgid "  -i <number> or --instruction-dump=<number>\n"
-msgstr "  -i <nr> eller --instruction-dump=<nr>\n"
-
-#
-#: readelf.c:2175
-msgid "                            Disassemble the contents of section <number>\n"
-msgstr "                            Disassemblera innehållet i sektion <nr>\n"
-
-#
-#: readelf.c:2177
-msgid "  -I or --histogram         Display histogram of bucket list lengths\n"
-msgstr "  -I eller --histogram      Visa ett histogram över hinkarnas listlängder\n"
-
-#
-#: readelf.c:2178
-msgid "  -v or --version           Display the version number of readelf\n"
-msgstr "  -v eller --version        Visa versionsinformation om readelf\n"
-
-#
-#: readelf.c:2179
-msgid "  -W or --wide              Don't split lines or truncate symbols to fit into 80 columns\n"
-msgstr "  -W eller --wide           Bryt inga rader och kapa inga symboler för att passa 80 kolumner\n"
-
-#
-#: readelf.c:2180
-msgid "  -H or --help              Display this information\n"
-msgstr "  -H eller --help           Visa denna hjälp\n"
-
-#
-#: readelf.c:2198
+#: readelf.c:2666 readelf.c:10765
 msgid "Out of memory allocating dump request table."
-msgstr "Slut på minne vid allokering av tabell för önskade utskrifter."
+msgstr "Slut på minne vid allokering av tabell för önskade utskrifter."
 
-#
-#: readelf.c:2357
+#: readelf.c:2830 readelf.c:2906
 #, c-format
-msgid "Unrecognised debug option '%s'\n"
-msgstr "Okänt felsökningsargument \"%s\"\n"
+msgid "Unrecognized debug option '%s'\n"
+msgstr "Okänt felsökningsargument \"%s\"\n"
 
-#
-#: readelf.c:2385
+#: readelf.c:2940
 #, c-format
 msgid "Invalid option '-%c'\n"
 msgstr "Ogiltig flagga \"-%c\"\n"
 
-#
-#: readelf.c:2398
+#: readelf.c:2953
 msgid "Nothing to do.\n"
-msgstr "Inget att göra.\n"
+msgstr "Inget att göra.\n"
 
-#
-#: readelf.c:2411 readelf.c:2428 readelf.c:4700
+#: readelf.c:2966 readelf.c:2983 readelf.c:5366
 msgid "none"
 msgstr "ingen"
 
-#
-#: readelf.c:2415 readelf.c:2432 readelf.c:2460
+#: readelf.c:2970 readelf.c:2987 readelf.c:3018
 #, c-format
 msgid "<unknown: %x>"
-msgstr "<okänd: %x>"
+msgstr "<okänd: %x>"
 
-#
-#: readelf.c:2429
+#: readelf.c:2984
 msgid "2's complement, little endian"
-msgstr "tvåkomplement, little endian"
+msgstr "2-komplement, little endian"
 
-#
-#: readelf.c:2430
+#: readelf.c:2985
 msgid "2's complement, big endian"
-msgstr "tvåkomplement, big endian"
+msgstr "2-komplement, big endian"
 
-#
-#: readelf.c:2457
+#: readelf.c:3015
 msgid "Standalone App"
-msgstr "Självständigt program"
+msgstr "Självständigt program"
 
-#
-#: readelf.c:2475
+#: readelf.c:3034
 msgid "Not an ELF file - it has the wrong magic bytes at the start\n"
-msgstr "Inte en ELF-fil - den har fel magiska byte i början\n"
+msgstr "Inte en ELF-fil - den har fel magiska byte i början\n"
 
-#
-#: readelf.c:2483
+#: readelf.c:3042
 msgid "ELF Header:\n"
 msgstr "ELF-huvud:\n"
 
-#
-#: readelf.c:2484
+#: readelf.c:3043
 msgid "  Magic:   "
 msgstr "  Magi:    "
 
-#
-#: readelf.c:2488
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3047
 #, c-format
 msgid "  Class:                             %s\n"
 msgstr "  Klass:                             %s\n"
 
-#
-#: readelf.c:2490
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3049
 #, c-format
 msgid "  Data:                              %s\n"
 msgstr "  Data:                              %s\n"
 
-#
-#: readelf.c:2492
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3051
 #, c-format
 msgid "  Version:                           %d %s\n"
 msgstr "  Version:                           %d %s\n"
 
-#
-#: readelf.c:2499
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3058
 #, c-format
 msgid "  OS/ABI:                            %s\n"
 msgstr "  OS/ABI:                            %s\n"
 
-#
-#: readelf.c:2501
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3060
 #, c-format
 msgid "  ABI Version:                       %d\n"
 msgstr "  ABI-version:                       %d\n"
 
-#
-#: readelf.c:2503
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3062
 #, c-format
 msgid "  Type:                              %s\n"
 msgstr "  Typ:                               %s\n"
 
-#
-#: readelf.c:2505
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3064
 #, c-format
 msgid "  Machine:                           %s\n"
 msgstr "  Maskin:                            %s\n"
 
-#
-#: readelf.c:2507
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3066
 #, c-format
 msgid "  Version:                           0x%lx\n"
 msgstr "  Version:                           0x%lx\n"
 
-#
-#: readelf.c:2510
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3069
 msgid "  Entry point address:               "
-msgstr "  Ingångsadress:                     "
+msgstr "  Ingångsadress:                     "
 
-#
-#: readelf.c:2512
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3071
 msgid ""
 "\n"
 "  Start of program headers:          "
 msgstr ""
 "\n"
-"  Start för programhuvuden:          "
+"  Start för programhuvuden:          "
 
-#
-#: readelf.c:2514
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3073
 msgid ""
 " (bytes into file)\n"
 "  Start of section headers:          "
 msgstr ""
 " (byte in i filen)\n"
-"  Start för sektionshuvuden:         "
+"  Start för sektionshuvuden:         "
 
-#
-#: readelf.c:2516
+#: readelf.c:3075
 msgid " (bytes into file)\n"
 msgstr " (byte in i filen)\n"
 
-#
-#: readelf.c:2518
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3077
 #, c-format
 msgid "  Flags:                             0x%lx%s\n"
 msgstr "  Flaggor:                           0x%lx%s\n"
 
-#
-#: readelf.c:2521
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3080
 #, c-format
 msgid "  Size of this header:               %ld (bytes)\n"
 msgstr "  Detta huvuds storlek:              %ld (byte)\n"
 
-#
-#: readelf.c:2523
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3082
 #, c-format
 msgid "  Size of program headers:           %ld (bytes)\n"
 msgstr "  Programhuvudenas storlek:          %ld (byte)\n"
 
-#
-#: readelf.c:2525
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3084
 #, c-format
 msgid "  Number of program headers:         %ld\n"
 msgstr "  Antal programhuvuden:              %ld\n"
 
-#
-#: readelf.c:2527
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3086
 #, c-format
 msgid "  Size of section headers:           %ld (bytes)\n"
 msgstr "  Sektionshuvudenas storlek:         %ld (byte)\n"
 
-#
-#: readelf.c:2529
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3088
 #, c-format
 msgid "  Number of section headers:         %ld"
 msgstr "  Antal sektionshuvuden:             %ld"
 
-#
-#: readelf.c:2534
+# 37 tecken i "vänstra" kolumnen
+#: readelf.c:3093
 #, c-format
 msgid "  Section header string table index: %ld"
-msgstr "  Sektionshuvudets strängtabellsndx: %ld"
+msgstr "  Sektionshuvudets strängtabellndx:  %ld"
 
-#
-#: readelf.c:2568 readelf.c:2604
+#: readelf.c:3127 readelf.c:3163
 msgid "program headers"
 msgstr "programhuvuden"
 
-#
-#: readelf.c:2638
+#: readelf.c:3203 readelf.c:3480 readelf.c:3526 readelf.c:3589 readelf.c:3656
+#: readelf.c:4715 readelf.c:4758 readelf.c:4948 readelf.c:5917 readelf.c:5931
+#: readelf.c:10411
+msgid "Out of memory\n"
+msgstr "Slut på minne\n"
+
+#: readelf.c:3231
 msgid ""
 "\n"
 "There are no program headers in this file.\n"
@@ -3077,91 +2756,71 @@
 "\n"
 "Det finns inga programhuvuden i denna fil.\n"
 
-#
-#: readelf.c:2644
+#: readelf.c:3237
 #, c-format
 msgid ""
 "\n"
 "Elf file type is %s\n"
 msgstr ""
 "\n"
-"Elf-filtyp är %s\n"
+"Elf-filtyp är %s\n"
 
-#
-#: readelf.c:2645
+#: readelf.c:3238
 msgid "Entry point "
-msgstr "Ingångspunkt "
+msgstr "Ingångspunkt "
 
-#
-#: readelf.c:2647
+#: readelf.c:3240
 #, c-format
 msgid ""
 "\n"
 "There are %d program headers, starting at offset "
 msgstr ""
 "\n"
-"Det finns %d programhuvuden, med början på offset "
+"Det finns %d programhuvuden, med början på offset "
 
-#
-#: readelf.c:2658 readelf.c:2883 readelf.c:2929 readelf.c:2992 readelf.c:3059
-#: readelf.c:4087 readelf.c:4130 readelf.c:4310 readelf.c:5246 readelf.c:5260
-#: readelf.c:9246 readelf.c:9286
-msgid "Out of memory\n"
-msgstr "Slut på minne\n"
-
-#
 #  BUGG: plural-s
-#: readelf.c:2676
-#, c-format
+#: readelf.c:3252 readelf.c:3254
 msgid ""
 "\n"
-"Program Header%s:\n"
+"Program Headers:\n"
 msgstr ""
 "\n"
-"Programhuvud%0.s:\n"
+"Programhuvuden:\n"
 
-#
-#: readelf.c:2680
+#: readelf.c:3258
 msgid "  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align\n"
 msgstr "  Typ            Offset   VirtAdr    FysAdr     FilSt   MinneSt Flg Just\n"
 
-#
-#: readelf.c:2683
+#: readelf.c:3261
 msgid "  Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align\n"
-msgstr "  Typ            Offset   VirtAdress         FysAdress          FilStrl  MinneSt  Flg Just\n"
+msgstr "  Typ            Offset   VirtAdr            FysAdr             FilStrl  MinneSt  Flg Just\n"
 
-#
-#: readelf.c:2687
+#: readelf.c:3265
 msgid "  Type           Offset             VirtAddr           PhysAddr\n"
-msgstr "  Typ            Offset             VirtAdress         FysAdress\n"
+msgstr "  Typ            Offset             VirtAdr            FysAdr\n"
 
-#
-#: readelf.c:2689
+#: readelf.c:3267
 msgid "                 FileSiz            MemSiz              Flags  Align\n"
-msgstr "                 FilStorlek         MinneStorlek        Flagg  Justering\n"
+msgstr "                 FilStrl            MinneStrl           Flagg  Just\n"
 
-#
-#: readelf.c:2789
+#: readelf.c:3360
 msgid "more than one dynamic segment\n"
-msgstr "mer än ett dynamiskt segment\n"
+msgstr "mer än ett dynamiskt segment\n"
 
-#
-#: readelf.c:2797
+#: readelf.c:3368
 msgid "Unable to find program interpreter name\n"
-msgstr "Kan inte hitta namnet på programtolken\n"
+msgstr "Kan inte hitta namnet på programtolken\n"
 
-#
-#: readelf.c:2804
+#: readelf.c:3375
 #, c-format
 msgid ""
 "\n"
 "      [Requesting program interpreter: %s]"
 msgstr ""
 "\n"
-"      [Begär programtolkare: %s]"
+"      [Begär programtolkare: %s]"
 
-#
-#: readelf.c:2822
+#: readelf.c:3387
 msgid ""
 "\n"
 " Section to Segment mapping:\n"
@@ -3169,28 +2828,32 @@
 "\n"
 " Sektion till segment-avbildning:\n"
 
-#
-#: readelf.c:2823
+#: readelf.c:3388
 msgid "  Segment Sections...\n"
 msgstr "  Segmentsektioner...\n"
 
-#
-#: readelf.c:2874 readelf.c:2920
+#: readelf.c:3437
+msgid "Cannot interpret virtual addresses without program headers.\n"
+msgstr "Kan inte tolka virtuella adresser utan programhuvud.\n"
+
+#: readelf.c:3453
+#, c-format
+msgid "Virtual address 0x%lx not located in any PT_LOAD segment.\n"
+msgstr "Virtuell adress 0x%lx finns ej i något PT_LOAD-segment.\n"
+
+#: readelf.c:3471 readelf.c:3517
 msgid "section headers"
 msgstr "sektionshuvuden"
 
-#
-#: readelf.c:2968 readelf.c:3035
+#: readelf.c:3565 readelf.c:3632
 msgid "symbols"
 msgstr "symboler"
 
-#
-#: readelf.c:2979 readelf.c:3046
+#: readelf.c:3576 readelf.c:3643
 msgid "symtab shndx"
 msgstr "symtab shndx"
 
-#
-#: readelf.c:3147
+#: readelf.c:3745
 msgid ""
 "\n"
 "There are no sections in this file.\n"
@@ -3198,70 +2861,64 @@
 "\n"
 "Det finns inga sektioner i denna fil.\n"
 
-#
-#: readelf.c:3153
+#: readelf.c:3751
 #, c-format
 msgid "There are %d section headers, starting at offset 0x%lx:\n"
-msgstr "Det finns %d sektionshuvuden, med början på offset 0x%lx:\n"
+msgstr "Det finns %d sektionshuvuden, med början på offset 0x%lx:\n"
 
-#
-#: readelf.c:3170 readelf.c:3479 readelf.c:3826 readelf.c:5397
+#: readelf.c:3768 readelf.c:4098 readelf.c:4433 readelf.c:6070
 msgid "string table"
-msgstr "strängtabell"
+msgstr "strängtabell"
 
-#
-#: readelf.c:3191
+#: readelf.c:3793
 msgid "File contains multiple dynamic symbol tables\n"
-msgstr "Filen innehåller flera tabeller med dynamiska symboler\n"
+msgstr "Filen innehåller flera tabeller med dynamiska symboler\n"
 
-#
-#: readelf.c:3203
+#: readelf.c:3805
 msgid "File contains multiple dynamic string tables\n"
-msgstr "Filen innehåller flera dynamiska strängtabeller\n"
+msgstr "Filen innehåller flera dynamiska strängtabeller\n"
 
-#
-#: readelf.c:3209
+#: readelf.c:3811
 msgid "dynamic strings"
-msgstr "dynamiska strängar"
+msgstr "dynamiska strängar"
 
-#
-#: readelf.c:3215
+#: readelf.c:3817
 msgid "File contains multiple symtab shndx tables\n"
-msgstr "Filen innehåller flera symtab-shndx-tabeller\n"
+msgstr "Filen innehåller flera symtab-shndx-tabeller\n"
 
-#
-#  BUGG: plural-s
-#: readelf.c:3250
-#, c-format
+#: readelf.c:3855
 msgid ""
 "\n"
-"Section Header%s:\n"
+"Section Headers:\n"
 msgstr ""
 "\n"
-"Sektionshuvud%0.s:\n"
+"Sektionshuvuden:\n"
 
-#
-#: readelf.c:3254
+#: readelf.c:3857
+msgid ""
+"\n"
+"Section Header:\n"
+msgstr ""
+"\n"
+"Sektionshuvud:\n"
+
+#: readelf.c:3861
 msgid "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"
-msgstr "  [Nr] Namn              Typ             Adress   Off    Strl   PS Flg Lk Inf Ju\n"
+msgstr "  [Nr] Namn              Typ             Adr      Off    Strl   PS Flg Lk Inf Ju\n"
 
-#
-#: readelf.c:3257
+#: readelf.c:3864
 msgid "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"
 msgstr "  [Nr] Namn              Typ             Adress           Off    Strl   PS Flg Lk Inf Ju\n"
 
-#
-#: readelf.c:3260
+#: readelf.c:3867
 msgid "  [Nr] Name              Type             Address           Offset\n"
 msgstr "  [Nr] Namn              Typ              Adress            Offset\n"
 
-#
-#: readelf.c:3261
+#: readelf.c:3868
 msgid "       Size              EntSize          Flags  Link  Info  Align\n"
-msgstr "       Storlek           Poststorlek      Flagg  Länk  Info  Just\n"
+msgstr "       Storlek           Poststorlek      Flagg  Länk  Info  Just\n"
 
-#
-#: readelf.c:3356
+#: readelf.c:3963
 msgid ""
 "Key to Flags:\n"
 "  W (write), A (alloc), X (execute), M (merge), S (strings)\n"
@@ -3269,72 +2926,68 @@
 "  O (extra OS processing required) o (OS specific), p (processor specific)\n"
 msgstr ""
 "Nyckel till flaggorna:\n"
-"  W (skriv), A (allokera), X (exekvera), M (förena), S (strängar)\n"
-"  I (info), L (länkordning), G (grupp), x (okänd)\n"
-"  O (extra OS-bearbetning krävs) o (OS-specifik), p (processorspecifik)\n"
+"  W (skriv), A (allokera), X (exekvera), M (förena), S (strängar)\n"
+"  I (info), L (länkordning), G (grupp), x (okänd)\n"
+"  O (extra OS-bearbetning krävs) o (OS-specifik), p (processorspecifik)\n"
 
-#
-#: readelf.c:3417
+#: readelf.c:4031
 #, c-format
 msgid ""
 "\n"
-"Relocation section at offset 0x%lx contains %ld bytes:\n"
+"'%s' relocation section at offset 0x%lx contains %ld bytes:\n"
 msgstr ""
 "\n"
-"Omlokaliseringssektionen på offset 0x%lx innehåller %ld byte:\n"
+"\"%s\" relokeringssektion på offset 0x%lx innehåller %ld byte:\n"
 
-#
-#: readelf.c:3424
+#: readelf.c:4043
 msgid ""
 "\n"
 "There are no dynamic relocations in this file.\n"
 msgstr ""
 "\n"
-"Det finns inga dynamiska omlokaliseringar i denna fil.\n"
+"Det finns inga dynamiska relokeringar i denna fil.\n"
 
-#
-#: readelf.c:3451
+#: readelf.c:4070
 msgid ""
 "\n"
 "Relocation section "
 msgstr ""
 "\n"
-"Omlokaliseringssektion "
+"Omrelokeringssektion "
 
-#
-#: readelf.c:3458 readelf.c:3905
+#: readelf.c:4075 readelf.c:4496 readelf.c:4510
+#, c-format
+msgid "'%s'"
+msgstr "\"%s\""
+
+#: readelf.c:4077 readelf.c:4512
 #, c-format
 msgid " at offset 0x%lx contains %lu entries:\n"
-msgstr " på offset 0x%lx innehåller %lu poster:\n"
+msgstr " på offset 0x%lx innehåller %lu poster:\n"
 
-#
-#: readelf.c:3496
+#: readelf.c:4115
 msgid ""
 "\n"
 "There are no relocations in this file.\n"
 msgstr ""
 "\n"
-"Det finns inga omlokaliseringar i denna fil.\n"
+"Det finns inga relokeringar i denna fil.\n"
 
-#
-#: readelf.c:3692
+#: readelf.c:4299
 msgid "unwind table"
 msgstr "tillbakarullningstabell"
 
-#
-#: readelf.c:3743 readelf.c:3755 readelf.c:7608 readelf.c:7619
+#: readelf.c:4350 readelf.c:4362 readelf.c:8499 readelf.c:8511
 #, c-format
 msgid "Skipping unexpected symbol type %u\n"
-msgstr "Hoppar över oväntad symboltyp %u\n"
+msgstr "Hoppar över oväntad symboltyp %u\n"
 
-#
-#: readelf.c:3763
+#: readelf.c:4370
 #, c-format
 msgid "Skipping unexpected relocation type %s\n"
-msgstr "Hoppar över oväntad omlokaliseringstyp %s\n"
+msgstr "Hoppar över oväntad relokeringstyp %s\n"
 
-#
-#: readelf.c:3808 readelf.c:3833
+#: readelf.c:4415 readelf.c:4440
 msgid ""
 "\n"
 "There are no unwind sections in this file.\n"
@@ -3342,9 +2995,8 @@
 "\n"
 "Det finns inga tillbakarullningssektioner i denna fil.\n"
 
-#
-#  BUGG: Fortsättningen är inte markerad för översättning i koden och innehåller '-citattecken.
-#: readelf.c:3884
+#  BUGG: Fortsättningen är inte markerad för översättning i koden och innehåller '-citattecken.
+#: readelf.c:4491
 msgid ""
 "\n"
 "Could not find unwind info section for "
@@ -3352,13 +3004,11 @@
 "\n"
 "Kunde inte hitta tillbakarullningssektion till "
 
-#
-#: readelf.c:3896
+#: readelf.c:4503
 msgid "unwind info"
 msgstr "tillbakarullningsinfo"
 
-#
-#: readelf.c:3898
+#: readelf.c:4505
 msgid ""
 "\n"
 "Unwind section "
@@ -3366,13 +3016,11 @@
 "\n"
 "Tillbakarullningssektion "
 
-#
-#: readelf.c:4071 readelf.c:4114
+#: readelf.c:4699 readelf.c:4742
 msgid "dynamic segment"
 msgstr "dynamiskt segment"
 
-#
-#: readelf.c:4183
+#: readelf.c:4820
 msgid ""
 "\n"
 "There is no dynamic segment in this file.\n"
@@ -3380,308 +3028,255 @@
 "\n"
 "Det finns inget dynamiskt segment i denna fil.\n"
 
-#
-#: readelf.c:4217
+#: readelf.c:4854
 msgid "Unable to seek to end of file!"
-msgstr "Kan inte uppsöka slutet av filen!"
+msgstr "Kan inte uppsöka slutet av filen!"
 
-#
-#: readelf.c:4228
+#: readelf.c:4865
 msgid "Unable to determine the number of symbols to load\n"
-msgstr "Kan inte fastställa hur många symboler som ska läsas in\n"
+msgstr "Kan inte fastställa hur många symboler som ska läsas in\n"
 
-#
-#: readelf.c:4258
+#: readelf.c:4895
 msgid "Unable to seek to end of file\n"
-msgstr "Kan inte uppsöka slutet av filen\n"
+msgstr "Kan inte uppsöka slutet av filen\n"
 
-#
-#: readelf.c:4264
+#: readelf.c:4901
 msgid "Unable to determine the length of the dynamic string table\n"
-msgstr "Kan inte fastställa längden på den dynamiska strängtabellen\n"
+msgstr "Kan inte fastställa längden på den dynamiska strängtabellen\n"
 
-#
-#: readelf.c:4269
+#: readelf.c:4906
 msgid "dynamic string table"
-msgstr "dynamisk strängtabell"
+msgstr "dynamisk strängtabell"
 
-#
-#: readelf.c:4303
+#: readelf.c:4941
 msgid "symbol information"
 msgstr "symbolinformation"
 
-#
-#: readelf.c:4327
+#: readelf.c:4965
 #, c-format
 msgid ""
 "\n"
-"Dynamic segment at offset 0x%x contains %ld entries:\n"
+"Dynamic segment at offset 0x%lx contains %ld entries:\n"
 msgstr ""
 "\n"
-"Dynamiskt segment på offset 0x%x innehåller %ld poster:\n"
+"Dynamiskt segment på offset 0x%lx innehåller %ld poster:\n"
 
-#
-#: readelf.c:4330
+#: readelf.c:4968
 msgid "  Tag        Type                         Name/Value\n"
-msgstr "  Tagg       Typ                          Namn/Värde\n"
+msgstr "  Tagg       Typ                          Namn/Värde\n"
 
-#
-#: readelf.c:4366
+#: readelf.c:5004
 msgid "Auxiliary library"
 msgstr "yttre bibliotek"
 
-#
-#: readelf.c:4370
+#: readelf.c:5008
 msgid "Filter library"
 msgstr "filterbibliotek"
 
-#
-#: readelf.c:4374
+#: readelf.c:5012
 msgid "Configuration file"
 msgstr "konfigurationsfil"
 
-#
-#: readelf.c:4378
+#: readelf.c:5016
 msgid "Dependency audit library"
-msgstr "beroendövervakningsbibliotek"
+msgstr "beroendövervakningsbibliotek"
 
-#
-#: readelf.c:4382
+#: readelf.c:5020
 msgid "Audit library"
-msgstr "övervakningsbibliotek"
+msgstr "övervakningsbibliotek"
 
-#
-#: readelf.c:4400 readelf.c:4426 readelf.c:4452
+#: readelf.c:5038 readelf.c:5066 readelf.c:5094
 msgid "Flags:"
 msgstr "flaggor:"
 
-#
-#: readelf.c:4402 readelf.c:4428 readelf.c:4454
+#: readelf.c:5041 readelf.c:5069 readelf.c:5096
 msgid " None\n"
 msgstr " inga\n"
 
-#
-#: readelf.c:4573
+#: readelf.c:5217
 #, c-format
 msgid "Shared library: [%s]"
 msgstr "delat bibliotek: [%s]"
 
-#
-#: readelf.c:4576
+#: readelf.c:5220
 msgid " program interpreter"
 msgstr " programtolk"
 
-#
-#: readelf.c:4580
+#: readelf.c:5224
 #, c-format
 msgid "Library soname: [%s]"
 msgstr "biblioteks so-namn: [%s]"
 
-#
-#: readelf.c:4584
+#: readelf.c:5228
 #, c-format
 msgid "Library rpath: [%s]"
 msgstr "bibliotekets rpath: [%s]"
 
-#
-#: readelf.c:4588
+#: readelf.c:5232
 #, c-format
 msgid "Library runpath: [%s]"
 msgstr "bibliotekets runpath: [%s]"
 
-#
-#: readelf.c:4649
+#: readelf.c:5296
 #, c-format
 msgid "Not needed object: [%s]\n"
-msgstr "onödigt objekt: [%s]\n"
+msgstr "onödigt objekt: [%s]\n"
 
-#
-#: readelf.c:4746
+#: readelf.c:5412
 #, c-format
 msgid ""
 "\n"
 "Version definition section '%s' contains %ld entries:\n"
 msgstr ""
 "\n"
-"Versiondefinitionssektion \"%s\" innehåller %ld poster:\n"
+"Versiondefinitionssektion \"%s\" innehåller %ld poster:\n"
 
-#
-#: readelf.c:4749
+#: readelf.c:5415
 msgid "  Addr: 0x"
 msgstr "  Adr: 0x"
 
-#
-#: readelf.c:4751 readelf.c:4946
+#: readelf.c:5417 readelf.c:5612
 #, c-format
 msgid "  Offset: %#08lx  Link: %lx (%s)\n"
-msgstr "  Offset: %#08lx  Länk: %lx (%s)\n"
+msgstr "  Offset: %#08lx  Länk: %lx (%s)\n"
 
-#
-#: readelf.c:4758
+#: readelf.c:5424
 msgid "version definition section"
 msgstr "versiondefinitionssektion"
 
-#
-#: readelf.c:4784
+#: readelf.c:5450
 #, c-format
 msgid "  %#06x: Rev: %d  Flags: %s"
 msgstr "  %#06x: Rev: %d  Flaggor: %s"
 
-#
-#: readelf.c:4787
+#: readelf.c:5453
 #, c-format
 msgid "  Index: %d  Cnt: %d  "
 msgstr "  Index: %d  Ant: %d  "
 
-#
-#: readelf.c:4798
+#: readelf.c:5464
 #, c-format
 msgid "Name: %s\n"
 msgstr "Namn: %s\n"
 
-#
-#: readelf.c:4800
+#: readelf.c:5466
 #, c-format
 msgid "Name index: %ld\n"
 msgstr "Namnindex: %ld\n"
 
-#
-#: readelf.c:4815
+#: readelf.c:5481
 #, c-format
 msgid "  %#06x: Parent %d: %s\n"
-msgstr "  %#06x: Förälder %d: %s\n"
+msgstr "  %#06x: Förälder %d: %s\n"
 
-#
-#: readelf.c:4818
+#: readelf.c:5484
 #, c-format
 msgid "  %#06x: Parent %d, name index: %ld\n"
-msgstr "  %#06x: Förälder %d, namnindex: %ld\n"
+msgstr "  %#06x: Förälder %d, namnindex: %ld\n"
 
-#
-#: readelf.c:4837
+#: readelf.c:5503
 #, c-format
 msgid ""
 "\n"
 "Version needs section '%s' contains %ld entries:\n"
 msgstr ""
 "\n"
-"Versionbehovssektion \"%s\" innehåller %ld poster:\n"
+"Versionbehovssektion \"%s\" innehåller %ld poster:\n"
 
-#
-#: readelf.c:4840
+#: readelf.c:5506
 msgid " Addr: 0x"
 msgstr " Adr: 0x"
 
-#
-#: readelf.c:4842
+#: readelf.c:5508
 #, c-format
 msgid "  Offset: %#08lx  Link to section: %ld (%s)\n"
-msgstr "  Offset: %#08lx  Länk till sektion: %ld (%s)\n"
+msgstr "  Offset: %#08lx  Länk till sektion: %ld (%s)\n"
 
-#
-#: readelf.c:4848
+#: readelf.c:5514
 msgid "version need section"
 msgstr "versionsbehovssektion"
 
-#
-#: readelf.c:4870
+#: readelf.c:5536
 #, c-format
 msgid "  %#06x: Version: %d"
 msgstr " %#06x: Version: %d"
 
-#
-#: readelf.c:4873
+#: readelf.c:5539
 #, c-format
 msgid "  File: %s"
 msgstr "  Fil: %s"
 
-#
-#: readelf.c:4875
+#: readelf.c:5541
 #, c-format
 msgid "  File: %lx"
 msgstr "  Fil: %lx"
 
-#
-#: readelf.c:4877
+#: readelf.c:5543
 #, c-format
 msgid "  Cnt: %d\n"
 msgstr " Ant: %d\n"
 
-#
-#: readelf.c:4895
+#: readelf.c:5561
 #, c-format
 msgid "  %#06x: Name: %s"
 msgstr "  %#06x: Namn: %s"
 
-#
-#: readelf.c:4898
+#: readelf.c:5564
 #, c-format
 msgid "  %#06x: Name index: %lx"
 msgstr "  %#06x: Namnindex: %lx"
 
-#
-#: readelf.c:4901
+#: readelf.c:5567
 #, c-format
 msgid "  Flags: %s  Version: %d\n"
 msgstr "  Flaggor: %s  Version: %d\n"
 
-#
-#: readelf.c:4937
+#: readelf.c:5603
 msgid "version string table"
-msgstr "versionssträngtabell"
+msgstr "versionssträngtabell"
 
-#
-#: readelf.c:4941
+#: readelf.c:5607
 #, c-format
 msgid ""
 "\n"
 "Version symbols section '%s' contains %d entries:\n"
 msgstr ""
 "\n"
-"Versionsymbolssektion \"%s\" innehåller %d poster:\n"
+"Versionsymbolssektion \"%s\" innehåller %d poster:\n"
 
-#
-#: readelf.c:4944
+#: readelf.c:5610
 msgid " Addr: "
 msgstr " Adr: "
 
-#
-#: readelf.c:4954
+#: readelf.c:5622
 msgid "version symbol data"
 msgstr "versionsymbolsdata"
 
-#
-#: readelf.c:4981
+#: readelf.c:5649
 msgid "   0 (*local*)    "
 msgstr "   0 (*lokal*)    "
 
-#
-#: readelf.c:4985
+#: readelf.c:5653
 msgid "   1 (*global*)   "
 msgstr "   1 (*global*)   "
 
-#
-#: readelf.c:5020 readelf.c:5454
+#: readelf.c:5689 readelf.c:6129
 msgid "version need"
 msgstr "versionsbehov"
 
-#
-#: readelf.c:5030
+#: readelf.c:5699
 msgid "version need aux (2)"
 msgstr "yttre versionsbehov (2)"
 
-#
-#: readelf.c:5071 readelf.c:5516
+#: readelf.c:5741 readelf.c:6192
 msgid "version def"
 msgstr "versionsdef."
 
-#
-#: readelf.c:5090 readelf.c:5531
+#: readelf.c:5760 readelf.c:6207
 msgid "version def aux"
 msgstr "yttre versionsdef."
 
-#
-#: readelf.c:5121
+#: readelf.c:5791
 msgid ""
 "\n"
 "No version information found in this file.\n"
@@ -3689,145 +3284,107 @@
 "\n"
 "Det fanns ingen versionsinformation i denna fil.\n"
 
-#
-#: readelf.c:5139 readelf.c:5174
-#, c-format
-msgid "<processor specific>: %d"
-msgstr "<processorspecifik>: %d"
-
-#
-#: readelf.c:5141 readelf.c:5186
-#, c-format
-msgid "<OS specific>: %d"
-msgstr "<OS-specifik>: %d"
-
-#
-#: readelf.c:5143 readelf.c:5189
-#, c-format
-msgid "<unknown>: %d"
-msgstr "<okänd>: %d"
-
-#
-#: readelf.c:5252
+#: readelf.c:5923
 msgid "Unable to read in dynamic data\n"
-msgstr "Kan inte läsa in dynamisk data\n"
+msgstr "Kan inte läsa in den dynamiska datan\n"
 
-#
-#: readelf.c:5294
+#: readelf.c:5967
 msgid "Unable to seek to start of dynamic information"
-msgstr "Kan inte uppsöka början av den dynamiska informationen"
+msgstr "Kan inte uppsöka början av den dynamiska informationen"
 
-#
-#: readelf.c:5300
+#: readelf.c:5973
 msgid "Failed to read in number of buckets\n"
-msgstr "Misslyckades läsa in antalet hinkar\n"
+msgstr "Lyckades inte läsa antal hinkar\n"
 
-#
-#: readelf.c:5306
+#: readelf.c:5979
 msgid "Failed to read in number of chains\n"
-msgstr "Misslyckades Läsa in antalet kedjor\n"
+msgstr "Lyckades inte läsa antal kedjor\n"
 
-#
-#: readelf.c:5326
+#: readelf.c:5999
 msgid ""
 "\n"
 "Symbol table for image:\n"
 msgstr ""
 "\n"
-"Symboltabell för filbilden:\n"
+"Symboltabell för avbilden:\n"
 
-#
-#: readelf.c:5328
+#: readelf.c:6001
 msgid "  Num Buc:    Value  Size   Type   Bind Vis      Ndx Name\n"
-msgstr "  Nr  Hin:    Värde  Strl   Typ    Bind Synl     Idx Namn\n"
+msgstr "  Nr  Hin:    Värde  Strl   Typ    Bind Synl     Idx Namn\n"
 
-#
-#: readelf.c:5330
+#: readelf.c:6003
 msgid "  Num Buc:    Value          Size   Type   Bind Vis      Ndx Name\n"
-msgstr "  Nr  Hin:    Värde          Strl   Typ    Bind Synl     Idx Namn\n"
+msgstr "  Nr  Hin:    Värde          Strl   Typ    Bind Synl     Idx Namn\n"
 
-#
-#: readelf.c:5375
+#: readelf.c:6048
 #, c-format
 msgid ""
 "\n"
 "Symbol table '%s' contains %lu entries:\n"
 msgstr ""
 "\n"
-"Symboltabell \"%s\" innehåller %lu poster:\n"
+"Symboltabell \"%s\" innehåller %lu poster:\n"
 
-#
-#: readelf.c:5379
+#: readelf.c:6052
 msgid "   Num:    Value  Size Type    Bind   Vis      Ndx Name\n"
-msgstr "    Nr:    Värde  Strl Typ     Bind   Synl     Idx Namn\n"
+msgstr "    Nr:    Värde  Strl Typ     Bind   Synl     Idx Namn\n"
 
-#
-#: readelf.c:5381
+#: readelf.c:6054
 msgid "   Num:    Value          Size Type    Bind   Vis      Ndx Name\n"
-msgstr "    Nr:    Värde          Strl Typ     Bind   Synl     Idx Namn\n"
+msgstr "    Nr:    Värde          Strl Typ     Bind   Synl     Idx Namn\n"
 
-#
-#: readelf.c:5427
+#: readelf.c:6101
 msgid "version data"
 msgstr "versionsdata"
 
-#
-#: readelf.c:5467
+#: readelf.c:6142
 msgid "version need aux (3)"
 msgstr "yttre versionsbehov (3)"
 
-#
-#: readelf.c:5492
+#: readelf.c:6167
 msgid "bad dynamic symbol"
 msgstr "felaktig dynamisk symbol"
 
-#
-#: readelf.c:5554
+#: readelf.c:6230
 msgid ""
 "\n"
 "Dynamic symbol information is not available for displaying symbols.\n"
 msgstr ""
 "\n"
-"Informationen om dynamiska symboler är inte tillgänglig för att visa symboler.\n"
+"Informationen om dynamiska symboler är inte tillgänglig för att visa symboler.\n"
 
-#
-#: readelf.c:5566
+#: readelf.c:6242
 #, c-format
 msgid ""
 "\n"
 "Histogram for bucket list length (total of %d buckets):\n"
 msgstr ""
 "\n"
-"Histogram över hinkarnas listlängd (totalt %d hinkar):\n"
+"Histogram över hinkarnas listlängd (totalt %d hinkar):\n"
 
-#
-#: readelf.c:5568
+#: readelf.c:6244
 #, c-format
 msgid " Length  Number     %% of total  Coverage\n"
-msgstr " Längd   Nummer     %% av alla   Täckning\n"
+msgstr " Längd   Nummer     %% av alla   Täckning\n"
 
-#
-#: readelf.c:5573 readelf.c:5592 readelf.c:8825 readelf.c:9017
+#: readelf.c:6249 readelf.c:6268 readelf.c:9898 readelf.c:10090
 msgid "Out of memory"
-msgstr "Slut på minne"
+msgstr "Slut på minne"
 
-#
-#: readelf.c:5641
+#: readelf.c:6317
 #, c-format
 msgid ""
 "\n"
 "Dynamic info segment at offset 0x%lx contains %d entries:\n"
 msgstr ""
 "\n"
-"Dynamiskt info-segment på offset 0x%lx innehåller %d poster:\n"
+"Dynamiskt info-segment på offset 0x%lx innehåller %d poster:\n"
 
-#
-#: readelf.c:5644
+#: readelf.c:6320
 msgid " Num: Name                           BoundTo     Flags\n"
-msgstr "  Nr: Namn                           BundenTill  Flaggor\n"
+msgstr "  Nr: Namn                           Bind till   Flagg\n"
 
-#
-#: readelf.c:5696
+#: readelf.c:6373
 #, c-format
 msgid ""
 "\n"
@@ -3836,8 +3393,7 @@
 "\n"
 "Disassembleringsutskrift av sektion %s\n"
 
-#
-#: readelf.c:5719
+#: readelf.c:6396
 #, c-format
 msgid ""
 "\n"
@@ -3846,8 +3402,7 @@
 "\n"
 "Sektion \"%s\" har ingen data att skriva ut.\n"
 
-#
-#: readelf.c:5724
+#: readelf.c:6401
 #, c-format
 msgid ""
 "\n"
@@ -3856,62 +3411,52 @@
 "\n"
 "Hexadecimal utskrift av sektion \"%s\":\n"
 
-#
-#: readelf.c:5729
+#: readelf.c:6406
 msgid "section data"
 msgstr "sektionsdata"
 
-#
-#: readelf.c:5878
+#: readelf.c:6555
 msgid "badly formed extended line op encountered!\n"
-msgstr "felaktigt utformad utökad rad-op påträffades!\n"
+msgstr "felaktigt utformad utökad rad-op påträffades!\n"
 
-#
-#: readelf.c:5885
+#: readelf.c:6562
 #, c-format
 msgid "  Extended opcode %d: "
-msgstr "  Utökad op-kod %d: "
+msgstr "  Utökad op-kod %d: "
 
-#
-#: readelf.c:5890
+#: readelf.c:6567
 msgid ""
 "End of Sequence\n"
 "\n"
 msgstr ""
-"Slut på sekvensen\n"
+"Slut på sekvensen\n"
 "\n"
 
-#
-#: readelf.c:5896
+#: readelf.c:6573
 #, c-format
 msgid "set Address to 0x%lx\n"
-msgstr "sätt Adress till 0x%lx\n"
+msgstr "sätt Adress till 0x%lx\n"
 
-#
-#: readelf.c:5901
+#: readelf.c:6578
 msgid "  define new File Table entry\n"
 msgstr "  definiera ny filtabellspost\n"
 
-#
-#: readelf.c:5902 readelf.c:6031
+#: readelf.c:6579 readelf.c:6726
 msgid "  Entry\tDir\tTime\tSize\tName\n"
 msgstr "  Post\tKatalog\tTid\tStorl.\tNamn\n"
 
-#
-#: readelf.c:5904
+#: readelf.c:6581
 #, c-format
 msgid "   %d\t"
 msgstr "   %d\t"
 
-#
-#: readelf.c:5907 readelf.c:5909 readelf.c:5911 readelf.c:6043 readelf.c:6045
-#: readelf.c:6047
+#: readelf.c:6584 readelf.c:6586 readelf.c:6588 readelf.c:6738 readelf.c:6740
+#: readelf.c:6742
 #, c-format
 msgid "%lu\t"
 msgstr "%lu\t"
 
-#
-#: readelf.c:5912
+#: readelf.c:6589
 #, c-format
 msgid ""
 "%s\n"
@@ -3920,14 +3465,12 @@
 "%s\n"
 "\n"
 
-#
-#: readelf.c:5916
+#: readelf.c:6593
 #, c-format
 msgid "UNKNOWN: length %d\n"
-msgstr "OKÄND: längd %d\n"
+msgstr "OKÄND: längd %d\n"
 
-#
-#: readelf.c:5942
+#: readelf.c:6621
 #, c-format
 msgid ""
 "\n"
@@ -3935,75 +3478,59 @@
 "\n"
 msgstr ""
 "\n"
-"Utskrift av felsökningsinnehåll i sektion %s:\n"
+"Utskrift av felsökningsinnehåll i sektion %s:\n"
 "\n"
 
-#
-#: readelf.c:5954
-msgid "64-bit DWARF line info is not supported yet.\n"
-msgstr "64-bitars DWARF-radinformation stöds inte än.\n"
-
-#
-#: readelf.c:5961
+#: readelf.c:6649
 msgid "The line info appears to be corrupt - the section is too small\n"
-msgstr "Radinformationen verkar vara trasig - sektionen är för liten\n"
+msgstr "Radinformationen verkar vara trasig - sektionen är för liten\n"
 
-#
-#: readelf.c:5969
-msgid "Only DWARF version 2 line info is currently supported.\n"
-msgstr "Endast DWARF version 2:s radinfo stöds för närvarande.\n"
+#: readelf.c:6658
+msgid "Only DWARF version 2 and 3 line info is currently supported.\n"
+msgstr "Endast DWARF 2 och 3 radinfo hanteras för närvarande.\n"
 
-#
-#: readelf.c:5984
+#: readelf.c:6679
 #, c-format
 msgid "  Length:                      %ld\n"
-msgstr "  längd:                       %ld\n"
+msgstr "  längd:                       %ld\n"
 
-#
-#: readelf.c:5985
+#: readelf.c:6680
 #, c-format
 msgid "  DWARF Version:               %d\n"
 msgstr "  DWARF version:               %d\n"
 
-#
-#: readelf.c:5986
+#: readelf.c:6681
 #, c-format
 msgid "  Prologue Length:             %d\n"
-msgstr "  prologlängd:                 %d\n"
+msgstr "  prologlängd:                 %d\n"
 
-#
-#: readelf.c:5987
+#: readelf.c:6682
 #, c-format
 msgid "  Minimum Instruction Length:  %d\n"
-msgstr "  minsta instruktionslängd:    %d\n"
+msgstr "  minsta instruktionslängd:    %d\n"
 
-#
-#  BUGG: Ska det inte vara `' på engelska?
-#: readelf.c:5988
+#  BUGG: Ska det inte vara `' på engelska?
+#: readelf.c:6683
 #, c-format
 msgid "  Initial value of 'is_stmt':  %d\n"
-msgstr "  initialvärde på \"is_stmt\": %d\n"
+msgstr "  initialvärde på \"is_stmt\": %d\n"
 
-#
-#: readelf.c:5989
+#: readelf.c:6684
 #, c-format
 msgid "  Line Base:                   %d\n"
 msgstr "  radbas:                      %d\n"
 
-#
-#: readelf.c:5990
+#: readelf.c:6685
 #, c-format
 msgid "  Line Range:                  %d\n"
-msgstr "  radintervall:                %d\n"
+msgstr "  radomfång:                   %d\n"
 
-#
-#: readelf.c:5991
+#: readelf.c:6686
 #, c-format
 msgid "  Opcode Base:                 %d\n"
 msgstr "  op-kodbas:                   %d\n"
 
-#
-#: readelf.c:6000
+#: readelf.c:6695
 msgid ""
 "\n"
 " Opcodes:\n"
@@ -4011,23 +3538,20 @@
 "\n"
 " Op-koder:\n"
 
-#
-#: readelf.c:6003
+#: readelf.c:6698
 #, c-format
 msgid "  Opcode %d has %d args\n"
 msgstr "  Op-kod %d har %d argument\n"
 
-#
-#: readelf.c:6009
+#: readelf.c:6704
 msgid ""
 "\n"
 " The Directory Table is empty.\n"
 msgstr ""
 "\n"
-" Katalogtabellen är tom.\n"
+" Katalogtabellen är tom.\n"
 
-#
-#: readelf.c:6012
+#: readelf.c:6707
 msgid ""
 "\n"
 " The Directory Table:\n"
@@ -4035,23 +3559,20 @@
 "\n"
 " Katalogtabellen:\n"
 
-#
-#: readelf.c:6016
+#: readelf.c:6711
 #, c-format
 msgid "  %s\n"
 msgstr "  %s\n"
 
-#
-#: readelf.c:6027
+#: readelf.c:6722
 msgid ""
 "\n"
 " The File Name Table is empty.\n"
 msgstr ""
 "\n"
-" Filnamnstabellen är tom.\n"
+" Filnamnstabellen är tom.\n"
 
-#
-#: readelf.c:6030
+#: readelf.c:6725
 msgid ""
 "\n"
 " The File Name Table:\n"
@@ -4059,21 +3580,18 @@
 "\n"
 " Filnamnstabellen:\n"
 
-#
-#: readelf.c:6038
+#: readelf.c:6733
 #, c-format
 msgid "  %d\t"
 msgstr "  %d\t"
 
-#
-#: readelf.c:6049
+#: readelf.c:6744
 #, c-format
 msgid "%s\n"
 msgstr "%s\n"
 
-#
 #. Now display the statements.
-#: readelf.c:6057
+#: readelf.c:6752
 msgid ""
 "\n"
 " Line Number Statements:\n"
@@ -4081,138 +3599,111 @@
 "\n"
 " Radnummersatser:\n"
 
-#
-#: readelf.c:6073
+#: readelf.c:6768
 #, c-format
 msgid "  Special opcode %d: advance Address by %d to 0x%lx"
-msgstr "  Särskild op-kod %d: öka adressen med %d till 0x%lx"
+msgstr "  Särskild op-kod %d: öka adressen med %d till 0x%lx"
 
-#
-#: readelf.c:6077
+#: readelf.c:6772
 #, c-format
 msgid " and Line by %d to %d\n"
 msgstr " och radnumret med %d till %d\n"
 
-#
-#: readelf.c:6088
+#: readelf.c:6783
 msgid "  Copy\n"
 msgstr "  Kopiera\n"
 
-#
-#: readelf.c:6095
+#: readelf.c:6790
 #, c-format
 msgid "  Advance PC by %d to %lx\n"
-msgstr "  Öka PC med %d till %lx\n"
+msgstr "  Öka programräknaren med %d till %lx\n"
 
-#
-#: readelf.c:6103
+#: readelf.c:6798
 #, c-format
 msgid "  Advance Line by %d to %d\n"
-msgstr "  Öka radnumret med %d till %d\n"
+msgstr "  Öka radnumret med %d till %d\n"
 
-#
-#: readelf.c:6110
+#: readelf.c:6805
 #, c-format
 msgid "  Set File Name to entry %d in the File Name Table\n"
-msgstr "  Sätt filnamnet till post %d i filnamnstabellen\n"
+msgstr "  Sätt filnamnet till post %d i filnamnstabellen\n"
 
-#
-#: readelf.c:6118
+#: readelf.c:6813
 #, c-format
 msgid "  Set column to %d\n"
-msgstr "  Sätt kolumnen till %d\n"
+msgstr "  Sätt kolumnen till %d\n"
 
-#
-#: readelf.c:6125
+#: readelf.c:6820
 #, c-format
 msgid "  Set is_stmt to %d\n"
-msgstr "  Sätt is_stmt till %d\n"
+msgstr "  Sätt is_stmt till %d\n"
 
-#
-#: readelf.c:6130
+#: readelf.c:6825
 msgid "  Set basic block\n"
-msgstr "  Sätt basblocket\n"
+msgstr "  Sätt basblocket\n"
 
-#
-#: readelf.c:6138
+#: readelf.c:6833
 #, c-format
 msgid "  Advance PC by constant %d to 0x%lx\n"
-msgstr "  Öka PC med konstant %d till 0x%lx\n"
+msgstr "  Öka programräknaren med konstant %d till 0x%lx\n"
 
-#
-#: readelf.c:6146
+#: readelf.c:6841
 #, c-format
 msgid "  Advance PC by fixed size amount %d to 0x%lx\n"
-msgstr "  Öka PC med fastlängdsantal %d till 0x%lx\n"
+msgstr "  Öka programräknaren med fastlängdsantal %d till 0x%lx\n"
 
-#
-#: readelf.c:6151
+#: readelf.c:6846
 msgid "  Set prologue_end to true\n"
-msgstr "  Sätt prologue_end till sannt\n"
+msgstr "  Sätt prologue_end till sann\n"
 
-#
-#: readelf.c:6155
+#: readelf.c:6850
 msgid "  Set epilogue_begin to true\n"
-msgstr "  Sätt epilogue_begin till sannt\n"
+msgstr "  Sätt epilogue_begin till sann\n"
 
-#
-#: readelf.c:6161
+#: readelf.c:6856
 #, c-format
 msgid "  Set ISA to %d\n"
-msgstr "  Sätt ISA till %d\n"
+msgstr "  Sätt ISA till %d\n"
 
-#
-#: readelf.c:6165
+#: readelf.c:6860
 #, c-format
 msgid "  Unknown opcode %d with operands: "
-msgstr "  Okänd op-kod %d med operand: "
+msgstr "  Okänd op-kod %d med operand: "
 
-#
-#: readelf.c:6197 readelf.c:6658 readelf.c:6730
+#: readelf.c:6891 readelf.c:7371 readelf.c:7443
 #, c-format
 msgid ""
 "Contents of the %s section:\n"
 "\n"
 msgstr ""
-"%s-sektionens innehåll:\n"
+"%s-sektionens innehåll:\n"
 "\n"
 
-#
-#: readelf.c:6216
-msgid "64-bit DWARF pubnames are not supported yet.\n"
-msgstr "64-bitars publika DWARF-namn stöds inte än.\n"
+#: readelf.c:6931
+msgid "Only DWARF 2 and 3 pubnames are currently supported\n"
+msgstr "Endast DWARF 2 och 3 pub.-namn hanteras för närvarande\n"
 
-#
-#: readelf.c:6226
-msgid "Only DWARF 2 pubnames are currently supported\n"
-msgstr "Endast publika DWARF 2-namn stöds för närvarande\n"
-
-#
-#: readelf.c:6233
+#: readelf.c:6938
 #, c-format
 msgid "  Length:                              %ld\n"
-msgstr "  längd:                               %ld\n"
+msgstr "  längd:                               %ld\n"
 
-#
-#: readelf.c:6235
+#: readelf.c:6940
 #, c-format
 msgid "  Version:                             %d\n"
 msgstr "  version:                             %d\n"
 
-#
-#: readelf.c:6237
+#: readelf.c:6942
 #, c-format
 msgid "  Offset into .debug_info section:     %ld\n"
 msgstr "  offset i .debug_info-sektionen:      %ld\n"
 
-#
-#: readelf.c:6239
+#: readelf.c:6944
 #, c-format
 msgid "  Size of area in .debug_info section: %ld\n"
-msgstr "  storl. på omr. i .debug_info-sekt.:  %ld\n"
+msgstr "  storl. på omr. i .debug_info-sekt.:  %ld\n"
 
-#
-#: readelf.c:6242
+#: readelf.c:6947
 msgid ""
 "\n"
 "    Offset\tName\n"
@@ -4220,519 +3711,470 @@
 "\n"
 "    Offset\tNamn\n"
 
-#
-#: readelf.c:6333
+#: readelf.c:7042
 #, c-format
 msgid "Unknown TAG value: %lx"
-msgstr "Okänt TAG-värde: %lx"
+msgstr "Okänt TAG-värde: %lx"
 
-#
-#: readelf.c:6443
+#: readelf.c:7156
 #, c-format
 msgid "Unknown AT value: %lx"
-msgstr "Okänt AT-värde: %lx"
+msgstr "Okänt AT-värde: %lx"
 
-#
-#: readelf.c:6480
+#: readelf.c:7193
 #, c-format
 msgid "Unknown FORM value: %lx"
-msgstr "Okänt FORM-värde: %lx"
+msgstr "Okänt FORM-värde: %lx"
 
-#
-#: readelf.c:6679
+#: readelf.c:7392
 #, c-format
 msgid " DW_MACINFO_start_file - lineno: %d filenum: %d\n"
-msgstr " DW_MACINFO_start_file - rad: %d filnummer: %d\n"
+msgstr " DW_MACINFO_start_file - rad: %d filnr: %d\n"
 
-#
-#: readelf.c:6684
+#: readelf.c:7397
 msgid " DW_MACINFO_end_file\n"
 msgstr " DW_MACINFO_end_file\n"
 
-#
-#: readelf.c:6692
+#: readelf.c:7405
 #, c-format
 msgid " DW_MACINFO_define - lineno : %d macro : %s\n"
-msgstr " DW_MACINFO_define - rad: %d makro: %s\n"
+msgstr " DW_MACINFO_define - rad : %d makro : %s\n"
 
-#
-#: readelf.c:6700
+#: readelf.c:7413
 #, c-format
 msgid " DW_MACINFO_undef - lineno : %d macro : %s\n"
-msgstr " DW_MACINFO_undef - rad: %d makro: %s\n"
+msgstr " DW_MACINFO_undef - rad : %d makro : %s\n"
 
-#
-#: readelf.c:6711
+#: readelf.c:7424
 #, c-format
 msgid " DW_MACINFO_vendor_ext - constant : %d string : %s\n"
-msgstr " DW_MACINFO_vendor_ext - konstant: %d sträng: %s\n"
+msgstr " DW_MACINFO_vendor_ext - konstant : %d sträng : %s\n"
 
-#
-# Detta är ett tabellhuvud med två kolumner.
-#: readelf.c:6739
+#: readelf.c:7452
 msgid "  Number TAG\n"
 msgstr "  Nummer TAGG\n"
 
-#
-#: readelf.c:6745
+#: readelf.c:7458
 #, c-format
 msgid "   %ld      %s    [%s]\n"
 msgstr "   %ld      %s    [%s]\n"
 
-#
-#: readelf.c:6748
+#: readelf.c:7461
 msgid "has children"
 msgstr "har barn"
 
-#
-#: readelf.c:6748
+#: readelf.c:7461
 msgid "no children"
 msgstr "inga barn"
 
-#
-#: readelf.c:6752
+#: readelf.c:7465
 #, c-format
 msgid "    %-18s %s\n"
 msgstr "    %-18s %s\n"
 
-#
-#: readelf.c:6773
+#: readelf.c:7486
 #, c-format
 msgid " %lu byte block: "
 msgstr " %lu byte-block: "
 
-#
-#: readelf.c:7096
+#: readelf.c:7814
 msgid "(User defined location op)"
-msgstr "(användardefinierad plats-op)"
+msgstr "(användardefinierad plats-op)"
 
-#
-#: readelf.c:7098
+#: readelf.c:7816
 msgid "(Unknown location op)"
-msgstr "(okänd plats-op)"
+msgstr "(okänd plats-op)"
 
-#
-#: readelf.c:7137
+#: readelf.c:7855
+msgid "debug_loc section data"
+msgstr "debug_loc-sektionsdata"
+
+#: readelf.c:7887
+msgid ""
+"\n"
+"The .debug_loc section is empty.\n"
+msgstr ""
+"\n"
+".debug_loc-sektionen är tom.\n"
+
+#: readelf.c:7891
+msgid ""
+"Contents of the .debug_loc section:\n"
+"\n"
+msgstr ""
+"Innehåll i .debug_loc-sektionen:\n"
+"\n"
+
+# Expression är en maskinkodsinstruktion
+#: readelf.c:7892
+msgid ""
+"\n"
+"    Offset   Begin    End      Expression\n"
+msgstr ""
+"\n"
+"    Offset   Start    Slut     Instruktion\n"
+
+#: readelf.c:7968
 msgid "debug_str section data"
 msgstr "debug_str sektionsdata"
 
-#
-#: readelf.c:7156
+#: readelf.c:7987
 msgid "<no .debug_str section>"
 msgstr "<ingen .debug_str-sektion>"
 
-#
-#: readelf.c:7159
+#: readelf.c:7990
 msgid "<offset is too big>"
-msgstr "<offseten är för stor>"
+msgstr "<offseten är för stor>"
 
-#
-#: readelf.c:7179
+#: readelf.c:8009
 msgid ""
 "\n"
 "The .debug_str section is empty.\n"
 msgstr ""
 "\n"
-".debug_str-sektionen är tom.\n"
+".debug_str-sektionen är tom.\n"
 
-#
-#: readelf.c:7183
+#: readelf.c:8013
 msgid ""
 "Contents of the .debug_str section:\n"
 "\n"
 msgstr ""
-"Innehåll i .debug_str-sektionen:\n"
+"Innehåll i .debug_str-sektionen:\n"
 "\n"
 
-#
-#: readelf.c:7354
-#, c-format
-msgid " (indirect string, offset: 0x%lx): "
-msgstr " (indirekt sträng, offset: 0x%lx): "
+#: readelf.c:8088
+msgid "Internal error: DWARF version is not 2 or 3.\n"
+msgstr "Internt fel: DWARF-version inte 2 eller 3.\n"
 
-#
-#: readelf.c:7363
+#: readelf.c:8203
 #, c-format
-msgid "Unrecognised form: %d\n"
-msgstr "Okänt formulär: %d\n"
+msgid " (indirect string, offset: 0x%lx): %s"
+msgstr " (indirekt sträng, offset: 0x%lx): %s"
 
-#
-#: readelf.c:7376
+#: readelf.c:8212
+#, c-format
+msgid "Unrecognized form: %d\n"
+msgstr "Okänd formtyp: %d\n"
+
+#: readelf.c:8226
 msgid "(not inlined)"
 msgstr "(inte inlajnad)"
 
-#
-#: readelf.c:7377
+#: readelf.c:8229
 msgid "(inlined)"
 msgstr "(inlajnad)"
 
-#
-#: readelf.c:7378
+#: readelf.c:8232
 msgid "(declared as inline but ignored)"
 msgstr "(deklarerad som inlajn men ignorerad)"
 
-#
-#: readelf.c:7379
+#: readelf.c:8235
 msgid "(declared as inline and inlined)"
 msgstr "(deklarerad som inlajn och inlajnad)"
 
-#
-#: readelf.c:7380
+#: readelf.c:8238
 #, c-format
 msgid "  (Unknown inline attribute value: %lx)"
-msgstr "  (okänt inlajnattributvärde: %lx)"
+msgstr "  (okänt inlajnattributvärde: %lx)"
 
-#
-#: readelf.c:7545 readelf.c:7746
+#: readelf.c:8419 readelf.c:8646
 #, c-format
 msgid ""
 "The section %s contains:\n"
 "\n"
 msgstr ""
-"Sektion %s innehåller:\n"
+"Sektion %s innehåller:\n"
 "\n"
 
-#
-#: readelf.c:7568
-msgid "64-bit DWARF debug info is not supported yet.\n"
-msgstr "64-bitars DWARF-felsökningsinfo stöds inte än.\n"
-
-#
-#: readelf.c:7637
+#: readelf.c:8535
 #, c-format
 msgid "  Compilation Unit @ %lx:\n"
 msgstr "  Kompileringsenhet @ %lx:\n"
 
-#
-#: readelf.c:7638
+#: readelf.c:8536
 #, c-format
 msgid "   Length:        %ld\n"
-msgstr "   längd:         %ld\n"
+msgstr "   längd:         %ld\n"
 
-#
-#: readelf.c:7639
+#: readelf.c:8537
 #, c-format
 msgid "   Version:       %d\n"
 msgstr "   version:       %d\n"
 
-#
-#: readelf.c:7640
+#: readelf.c:8538
 #, c-format
 msgid "   Abbrev Offset: %ld\n"
-msgstr "   förk.-offset:  %ld\n"
+msgstr "   förk.-offset:  %ld\n"
 
-#
-#: readelf.c:7641
+#: readelf.c:8539
 #, c-format
 msgid "   Pointer Size:  %d\n"
 msgstr "   pekarstorlek:  %d\n"
 
-#
-#: readelf.c:7645
-msgid "Only version 2 DWARF debug information is currently supported.\n"
-msgstr "Endast version 2 av DWARF-felsökningsinformation stöds för närvarande.\n"
+#: readelf.c:8543
+msgid "Only version 2 and 3 DWARF debug information is currently supported.\n"
+msgstr "Endast DWARF 2 och 3 felsökningsinformation hanteras för närvarande.\n"
 
-#
-#: readelf.c:7666
+#: readelf.c:8563
 msgid "Unable to locate .debug_abbrev section!\n"
-msgstr "Kan inte hitta någon .debug_abbrev-sektion!\n"
+msgstr "Kan inte hitta någon .debug_abbrev-sektion!\n"
 
-#
-#: readelf.c:7672
+#: readelf.c:8569
 msgid "debug_abbrev section data"
-msgstr "debug_abbrev-sektionsdata"
+msgstr "debug_abbrev sektionsdata"
 
-#
-#: readelf.c:7709
+#: readelf.c:8606
 #, c-format
 msgid "Unable to locate entry %lu in the abbreviation table\n"
-msgstr "Kan inte hitta post %lu i förkortningstabellen\n"
+msgstr "Kan inte hitta post %lu i förkortningstabellen\n"
 
-#
-#: readelf.c:7714
+#: readelf.c:8611
 #, c-format
 msgid " <%d><%lx>: Abbrev Number: %lu (%s)\n"
-msgstr " <%d><%lx>: Förkortningsnummer: %lu (%s)\n"
+msgstr " <%d><%lx>: Förkortningsnummer: %lu (%s)\n"
 
-#
-#: readelf.c:7767
-msgid "64-bit DWARF aranges are not supported yet.\n"
-msgstr "64-bitars DWARF-a-intervall stöds inte än.\n"
+#: readelf.c:8691
+msgid "Only DWARF 2 and 3 aranges are currently supported.\n"
+msgstr "Endast DWARF 2 och 3 a-intervall hanteras för närvarande.\n"
 
-#
-#: readelf.c:7773
-msgid "Only DWARF 2 aranges are currently supported.\n"
-msgstr "Endast DWARF2:s a-intervall stöds för närvarande.\n"
-
-#
-#: readelf.c:7777
+#: readelf.c:8695
 #, c-format
 msgid "  Length:                   %ld\n"
-msgstr "  längd:                    %ld\n"
+msgstr "  längd:                    %ld\n"
 
-#
-#: readelf.c:7778
+#: readelf.c:8696
 #, c-format
 msgid "  Version:                  %d\n"
 msgstr "  version:                  %d\n"
 
-#
-#: readelf.c:7779
+#: readelf.c:8697
 #, c-format
 msgid "  Offset into .debug_info:  %lx\n"
 msgstr "  offset i .debug_info:     %lx\n"
 
-#
-#: readelf.c:7780
+#: readelf.c:8698
 #, c-format
 msgid "  Pointer Size:             %d\n"
 msgstr "  pekarstorlek:             %d\n"
 
-#
-#: readelf.c:7781
+#: readelf.c:8699
 #, c-format
 msgid "  Segment Size:             %d\n"
 msgstr "  segmentstorlek:           %d\n"
 
-#
-#: readelf.c:7783
+#: readelf.c:8701
 msgid ""
 "\n"
 "    Address  Length\n"
 msgstr ""
 "\n"
-"    adresslängd\n"
+"    adresslängd\n"
 
-#
-#: readelf.c:7965
+#: readelf.c:8903
 #, c-format
 msgid "The section %s contains:\n"
-msgstr "Sektion %s innehåller:\n"
+msgstr "Sektion %s innehåller:\n"
 
-#
-#: readelf.c:7988
-msgid "64-bit DWARF format frames are not supported yet.\n"
-msgstr "64-bitars DWARF-formatmallar stöds inte än.\n"
-
-#
-#: readelf.c:8499
+#: readelf.c:9538
 #, c-format
 msgid "Displaying the debug contents of section %s is not yet supported.\n"
-msgstr "Visa felsökningsinnehållet i sektion %s stöds inte än.\n"
+msgstr "Visa felsökningsinnehållet i sektion %s hanteras inte än.\n"
 
-#
-#: readelf.c:8565
+#: readelf.c:9634
 #, c-format
 msgid ""
 "\n"
 "Section '%s' has no debugging data.\n"
 msgstr ""
 "\n"
-"Sektion \"%s\" innehåller ingen felsökningsdata.\n"
+"Sektion \"%s\" innehåller ingen felsökningsdata.\n"
 
-#
-#: readelf.c:8570 readelf.c:8632
+#: readelf.c:9639 readelf.c:9701
 msgid "debug section data"
-msgstr "felsökningssektionsdata"
+msgstr "felsökningssektionsdata"
 
-#
-#: readelf.c:8586
+#: readelf.c:9655
 #, c-format
-msgid "Unrecognised debug section: %s\n"
-msgstr "Okänd felsökningssektion: %s\n"
+msgid "Unrecognized debug section: %s\n"
+msgstr "Okänd felsökningssektion: %s\n"
 
-#
-#: readelf.c:8660
+#: readelf.c:9729
 msgid "Some sections were not dumped because they do not exist!\n"
-msgstr "Några sektioner skrevs inte ut eftersom de inte existerar!\n"
+msgstr "Några sektioner skrevs inte ut eftersom de inte existerar!\n"
 
-#
-#: readelf.c:8733
+#: readelf.c:9806 readelf.c:10170
 msgid "liblist"
 msgstr "bibliotekslista"
 
-#
-#: readelf.c:8818
+#: readelf.c:9891
 msgid "options"
 msgstr "flaggor"
 
-#
-#: readelf.c:8849
+#: readelf.c:9922
 #, c-format
 msgid ""
 "\n"
 "Section '%s' contains %d entries:\n"
 msgstr ""
 "\n"
-"Sektion \"%s\" innehåller %d poster:\n"
+"Sektion \"%s\" innehåller %d poster:\n"
 
-#
-#  BUGG: Fel i originalet?
-#: readelf.c:9010
-msgid "conflict list with without table"
-msgstr "konfliktlista utan tabell"
+#: readelf.c:10083
+msgid "conflict list found without a dynamic symbol table"
+msgstr "fann konfliktlista utan dynamisk symboltabell"
 
-#
-#: readelf.c:9028 readelf.c:9044
+#: readelf.c:10101 readelf.c:10117
 msgid "conflict"
 msgstr "konflikt"
 
-#
-#: readelf.c:9054
+#: readelf.c:10127
 #, c-format
 msgid ""
 "\n"
 "Section '.conflict' contains %ld entries:\n"
 msgstr ""
 "\n"
-"Sektion \".conflict\" innehåller %ld poster:\n"
+"Sektion \".conflict\" innehåller %ld poster:\n"
 
-#
-#: readelf.c:9056
+#: readelf.c:10129
 msgid "  Num:    Index       Value  Name"
-msgstr "  Num:    Index       Värde  Namn"
+msgstr "  Num:    Index       Värde  Namn"
 
-#
-#: readelf.c:9083
+#: readelf.c:10178
+msgid "liblist string table"
+msgstr "liblist-strängtabell"
+
+#: readelf.c:10187
+#, c-format
+msgid ""
+"\n"
+"Library list section '%s' contains %lu entries:\n"
+msgstr ""
+"\n"
+"Bibliotekslistsektion \"%s\" innehåller %lu poster:\n"
+
+#: readelf.c:10236
 msgid "NT_PRSTATUS (prstatus structure)"
 msgstr "NT_PRSTATUS (prstatus-struktur)"
 
-#
-#: readelf.c:9084
+#: readelf.c:10237
 msgid "NT_FPREGSET (floating point registers)"
 msgstr "NT_FPREGSET (flyttalsregister)"
 
-#
-#: readelf.c:9085
+#: readelf.c:10238
 msgid "NT_PRPSINFO (prpsinfo structure)"
 msgstr "NT_PRPSINFO (prpsinfo-struktur)"
 
-#
-#: readelf.c:9086
+#: readelf.c:10239
 msgid "NT_TASKSTRUCT (task structure)"
-msgstr "NT_TASKSTRUCT (uppgiftsstruktur)"
+msgstr "NT_TASKSTRUCT (task-struktur)"
 
-#
-#: readelf.c:9087
+#: readelf.c:10240
 msgid "NT_PRXFPREG (user_xfpregs structure)"
 msgstr "NT_PRXFPREG (user_xfpregs-struktur)"
 
-#
-#: readelf.c:9088
+#: readelf.c:10241
 msgid "NT_PSTATUS (pstatus structure)"
 msgstr "NT_PSTATUS (pstatus-struktur)"
 
-#
-#: readelf.c:9089
+#: readelf.c:10242
 msgid "NT_FPREGS (floating point registers)"
 msgstr "NT_FPREGS (flyttalsregister)"
 
-#
-#: readelf.c:9090
+#: readelf.c:10243
 msgid "NT_PSINFO (psinfo structure)"
 msgstr "NT_PSINFO (psinfo-struktur)"
 
-#
-#: readelf.c:9091
+#: readelf.c:10244
 msgid "NT_LWPSTATUS (lwpstatus_t structure)"
 msgstr "NT_LWPSTATUS (lwpstatus_t-struktur)"
 
-#
-#: readelf.c:9092
+#: readelf.c:10245
 msgid "NT_LWPSINFO (lwpsinfo_t structure)"
 msgstr "NT_LWPSINFO (lwpsinfo_t-struktur)"
 
-#
-#  BUGG: Stavfel i originalet (str>uc<ture)
-#: readelf.c:9093
-msgid "NT_WIN32PSTATUS (win32_pstatus strcuture)"
+#: readelf.c:10246
+msgid "NT_WIN32PSTATUS (win32_pstatus structure)"
 msgstr "NT_WIN32PSTATUS (win32_pstatus-struktur)"
 
-#
-#: readelf.c:9095 readelf.c:9119
+#: readelf.c:10248 readelf.c:10272
 #, c-format
 msgid "Unknown note type: (0x%08x)"
-msgstr "Okänd kommentarstyp: (0x%08x)"
+msgstr "Okänd kommentarstyp: (0x%08x)"
 
-#
 #. NetBSD core "procinfo" structure.
-#: readelf.c:9109
+#: readelf.c:10262
 msgid "NetBSD procinfo structure"
 msgstr "NetBSD processinfo-struktur"
 
-#
-#  FIXME
-#: readelf.c:9136 readelf.c:9150
+#: readelf.c:10289 readelf.c:10303
 msgid "PT_GETREGS (reg structure)"
-msgstr "PT_GETREGS (registerstruktur)"
+msgstr "PT_GETREGS (reg-struktur)"
 
-#
-#  FIXME
-#: readelf.c:9138 readelf.c:9152
+#: readelf.c:10291 readelf.c:10305
 msgid "PT_GETFPREGS (fpreg structure)"
 msgstr "PT_GETFPREGS (fpreg-struktur)"
 
-#
-#  FIXME
-#: readelf.c:9158
+#: readelf.c:10311
 #, c-format
 msgid "PT_FIRSTMACH+%d"
 msgstr "PT_FIRSTMACH+%d"
 
-#
-#: readelf.c:9212
+#: readelf.c:10365
 msgid "notes"
 msgstr "kommentarer"
 
-#
-#: readelf.c:9218
+#: readelf.c:10371
 #, c-format
 msgid ""
 "\n"
 "Notes at offset 0x%08lx with length 0x%08lx:\n"
 msgstr ""
 "\n"
-"Kommentarer på offset 0x%08lx av längd 0x%08lx:\n"
+"Kommentarer på offset 0x%08lx av längd 0x%08lx:\n"
 
-#
-#: readelf.c:9220
+#: readelf.c:10373
 msgid "  Owner\t\tData size\tDescription\n"
-msgstr "  Ägare\t\tData-storlek\tBeskrivning\n"
+msgstr "  Ägare\t\tData-storlek\tBeskrivning\n"
 
-#
-#: readelf.c:9331
+#: readelf.c:10392
+#, c-format
+msgid "corrupt note found at offset %x into core notes\n"
+msgstr "fann trasig kommentar på offset %x i minnesutskriftskommentarerna\n"
+
+#: readelf.c:10394
+#, c-format
+msgid " type: %x, namesize: %08lx, descsize: %08lx\n"
+msgstr " typ: %x, namnstorlek: %08lx, beskrivningsstorlek: %08lx\n"
+
+#: readelf.c:10476
 msgid "No note segments present in the core file.\n"
 msgstr "Det finns inga kommentarer i minnesfilen.\n"
 
-#
-#: readelf.c:9409
+#: readelf.c:10560
 msgid ""
 "This instance of readelf has been built without support for a\n"
 "64 bit data type and so it cannot read 64 bit ELF files.\n"
 msgstr ""
-"Den här binären av readelf har byggts utan stöd för en 64-bitars\n"
-"datatyp och kan därför inte läsa 64-bitars ELF-filer.\n"
+"Den här binären av readelf har byggts utan hantering av 64-bitars\n"
+"datatyper och kan därför inte läsa 64-bitars ELF-filer.\n"
 
-#
-#: readelf.c:9452
+#: readelf.c:10606
 #, c-format
 msgid "Cannot stat input file %s.\n"
-msgstr "Kan inte ta status för indatafil %s.\n"
+msgstr "Kan inte ta status på infil %s.\n"
 
-#
-#: readelf.c:9459
+#: readelf.c:10613
 #, c-format
 msgid "Input file %s not found.\n"
-msgstr "Indatafil %s finns inte.\n"
+msgstr "Infil %s finns inte.\n"
 
-#
-#: readelf.c:9465
+#: readelf.c:10619
 #, c-format
 msgid "%s: Failed to read file header\n"
-msgstr "%s: Misslyckades läsa filhuvud\n"
+msgstr "%s: Lyckades inte läsa filhuvudet\n"
 
-#
-#: readelf.c:9479
+#: readelf.c:10633
 #, c-format
 msgid ""
 "\n"
@@ -4741,831 +4183,749 @@
 "\n"
 "Fil: %s\n"
 
-#
-#: rename.c:131
+#: rename.c:132
 #, c-format
 msgid "%s: cannot set time: %s"
-msgstr "%s: kan inte sätta tiden: %s"
+msgstr "%s: kan inte sätta tiden: %s"
 
-#
 #. We have to clean up here.
-#: rename.c:170 rename.c:203
+#: rename.c:171 rename.c:204
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s: kan inte byta namn: %s"
 
-#
-#: rename.c:211
+#: rename.c:212
 #, c-format
 msgid "%s: simple_copy: %s"
 msgstr "%s: kopieringsfel: %s"
 
-#
-#: resbin.c:130
+#: resbin.c:134
 #, c-format
 msgid "%s: not enough binary data"
-msgstr "%s: inte tillräckligt med binärdata"
+msgstr "%s: inte tillräckligt med rådata"
 
-#
-#: resbin.c:149
+#: resbin.c:153
 msgid "null terminated unicode string"
-msgstr "nollterminerad unicode-sträng"
+msgstr "nollterminerad unicode-sträng"
 
-#
-#: resbin.c:179 resbin.c:185
+#: resbin.c:183 resbin.c:189
 msgid "resource ID"
 msgstr "resurs-ID"
 
-#
-#: resbin.c:229
+#: resbin.c:233
 msgid "cursor"
-msgstr "markör"
+msgstr "markör"
 
-#
-#: resbin.c:263 resbin.c:270
+#: resbin.c:267 resbin.c:274
 msgid "menu header"
 msgstr "menyhuvud"
 
-#
-#: resbin.c:280
+#: resbin.c:284
 msgid "menuex header"
 msgstr "meny-ext.-huvud"
 
-#
-#: resbin.c:284
+#: resbin.c:288
 msgid "menuex offset"
 msgstr "meny-ext.-offset"
 
-#
-#: resbin.c:291
+#: resbin.c:295
 #, c-format
 msgid "unsupported menu version %d"
-msgstr "menyversion %d stöds inte"
+msgstr "menyversion %d hanteras inte"
 
-#
-#: resbin.c:319 resbin.c:334 resbin.c:400
+#: resbin.c:323 resbin.c:338 resbin.c:404
 msgid "menuitem header"
 msgstr "menyobjektshuvud"
 
-#
-#: resbin.c:430
+#: resbin.c:434
 msgid "menuitem"
 msgstr "menyobjekt"
 
-#
-#: resbin.c:471 resbin.c:499
+#: resbin.c:475 resbin.c:503
 msgid "dialog header"
 msgstr "dialoghuvud"
 
-#
-#: resbin.c:489
+#: resbin.c:493
 #, c-format
-msgid "unexpected dialog signature %d"
-msgstr "oväntad dialogsignatur %d"
+msgid "unexpected DIALOGEX version %d"
+msgstr "oväntad DIALOGEX-versionstyp %d"
 
-#
-#: resbin.c:531
+#: resbin.c:538
 msgid "dialog font point size"
-msgstr "dialogtypsnittsstorlek"
+msgstr "typsnittets punktstorlek i dialog"
 
-#
-#: resbin.c:539
+#: resbin.c:546
 msgid "dialogex font information"
 msgstr "dialog-ext.-typsnittsinformation"
 
-#
-#: resbin.c:564 resbin.c:582
+#: resbin.c:572 resbin.c:590
 msgid "dialog control"
 msgstr "dialogkontroll"
 
-#
-#: resbin.c:574
+#: resbin.c:582
 msgid "dialogex control"
 msgstr "dioalog-ext.kontroll"
 
-#
-#: resbin.c:603
+#: resbin.c:611
 msgid "dialog control end"
 msgstr "dialogkontrollsslut"
 
-#
-#: resbin.c:615
+#: resbin.c:623
 msgid "dialog control data"
 msgstr "dialogkontrollsdata"
 
-#
-#: resbin.c:658
+#: resbin.c:666
 msgid "stringtable string length"
-msgstr "strängtabellsstränglängd"
+msgstr "längd på sträng i strängtabellen"
 
-#
-#: resbin.c:668
+#: resbin.c:676
 msgid "stringtable string"
-msgstr "strängtabellssträng"
+msgstr "sträng i strängtabellen"
 
-#
-#: resbin.c:701
+#: resbin.c:709
 msgid "fontdir header"
-msgstr "typsnittskatalogshuvud"
+msgstr "typsnittskatalogens huvud"
 
-#
-#: resbin.c:714
+#: resbin.c:722
 msgid "fontdir"
 msgstr "typsnittskatalog"
 
-#
-#: resbin.c:730
+#: resbin.c:738
 msgid "fontdir device name"
-msgstr "typsnittskatalogsenhetsnamn"
+msgstr "typsnittskatalogens enhetsnamn"
 
-#
-#: resbin.c:736
+#: resbin.c:744
 msgid "fontdir face name"
-msgstr "typsnittskatalogstypsnittsnamn"
+msgstr "typsnittskatalogens formnamn"
 
-#
-#: resbin.c:779
+#: resbin.c:787
 msgid "accelerator"
 msgstr "accelererare"
 
-#
-#: resbin.c:843
+#: resbin.c:851
 msgid "group cursor header"
-msgstr "gruppmarkörshuvud"
+msgstr "gruppmarkörshuvud"
 
-#
-#: resbin.c:847
+#: resbin.c:855
 #, c-format
 msgid "unexpected group cursor type %d"
-msgstr "oväntad gruppmarkörstyp %d"
+msgstr "oväntad gruppmarkörstyp %d"
 
-#
-#: resbin.c:862
+#: resbin.c:870
 msgid "group cursor"
-msgstr "gruppmarkör"
+msgstr "gruppmarkör"
 
-#
-#: resbin.c:901
+#: resbin.c:909
 msgid "group icon header"
 msgstr "gruppikonshuvud"
 
-#
-#: resbin.c:905
+#: resbin.c:913
 #, c-format
 msgid "unexpected group icon type %d"
-msgstr "oväntad gruppikonstyp %d"
+msgstr "oväntad gruppikonstyp %d"
 
-#
-#: resbin.c:920
+#: resbin.c:928
 msgid "group icon"
 msgstr "gruppikon"
 
-#
-#: resbin.c:991 resbin.c:1210
+#: resbin.c:999 resbin.c:1218
 msgid "unexpected version string"
-msgstr "oväntad versionssträng"
+msgstr "oväntad versionssträng"
 
-#
-#: resbin.c:1025
+#: resbin.c:1033
 #, c-format
 msgid "version length %d does not match resource length %lu"
-msgstr "versionslängd %d passar inte med resurslängd %lu"
+msgstr "versionslängd %d överensstämmer inte med resurslängd %lu"
 
-#
-#: resbin.c:1029
+#: resbin.c:1037
 #, c-format
 msgid "unexpected version type %d"
-msgstr "oväntad versionstyp %d"
+msgstr "oväntad versionstyp %d"
 
-#
-#: resbin.c:1041
+#: resbin.c:1049
 #, c-format
 msgid "unexpected fixed version information length %d"
-msgstr "oväntad längd %d på fast versionsinformation"
+msgstr "oväntad längd %d på fast versionsinformation"
 
-#
-#: resbin.c:1044
+#: resbin.c:1052
 msgid "fixed version info"
 msgstr "fast versionsinfo"
 
-#
-#: resbin.c:1048
+#: resbin.c:1056
 #, c-format
 msgid "unexpected fixed version signature %lu"
-msgstr "oväntad fast versionssignatur %lu"
+msgstr "oväntad fast versionssignatur %lu"
 
-#
-#: resbin.c:1052
+#: resbin.c:1060
 #, c-format
 msgid "unexpected fixed version info version %lu"
-msgstr "oväntad version %lu av fast versionsinformation"
+msgstr "oväntad version %lu av fast versionsinformation"
 
-#
-#: resbin.c:1081
+#: resbin.c:1089
 msgid "version var info"
 msgstr "variabel versionsinfo"
 
-#
-#: resbin.c:1098
+#: resbin.c:1106
 #, c-format
 msgid "unexpected stringfileinfo value length %d"
-msgstr "oväntad längd %d på värde för strängfilsinfo"
+msgstr "oväntad längd %d på värde för strängfilsinfo"
 
-#
-#: resbin.c:1108
+#: resbin.c:1116
 #, c-format
 msgid "unexpected version stringtable value length %d"
-msgstr "oväntad längd %d på värde för versionssträngtabell"
+msgstr "oväntad längd %d på värde för versionssträngtabell"
 
-#
-#: resbin.c:1142
+#: resbin.c:1150
 #, c-format
 msgid "unexpected version string length %d != %d + %d"
-msgstr "oväntad längd %d != %d + %d på versionssträng"
+msgstr "oväntad längd %d != %d + %d på versionssträng"
 
-#
-#: resbin.c:1153
+#: resbin.c:1161
 #, c-format
 msgid "unexpected version string length %d < %d"
-msgstr "oväntad längd %d < %d på versionssträng"
+msgstr "oväntad längd %d < %d på versionssträng"
 
-#
-#: resbin.c:1170
+#: resbin.c:1178
 #, c-format
 msgid "unexpected varfileinfo value length %d"
-msgstr "oväntad längd %d på värde för var.filinfo"
+msgstr "oväntad längd %d på värde för var.filinfo"
 
-#
-#: resbin.c:1189
+#: resbin.c:1197
 msgid "version varfileinfo"
 msgstr "versionsvar.filinfo"
 
-#
-#: resbin.c:1204
+#: resbin.c:1212
 #, c-format
 msgid "unexpected version value length %d"
-msgstr "oväntad längd %d på värde för version"
+msgstr "oväntad längd %d på värde för version"
 
-#
 #: rescoff.c:128
 msgid "filename required for COFF input"
-msgstr "filnamn krävs för COFF-indata"
+msgstr "filnamn krävs för COFF-indata"
 
-#
 #: rescoff.c:145
 #, c-format
 msgid "%s: no resource section"
 msgstr "%s: ingen resurssektion"
 
-#
 #: rescoff.c:152
 msgid "can't read resource section"
-msgstr "kan inte läsa resurssektionen"
+msgstr "kan inte läsa resurssektionen"
 
-#
 #: rescoff.c:178
 #, c-format
 msgid "%s: %s: address out of bounds"
-msgstr "%s: %s: adress utanför begränsningen"
+msgstr "%s: %s: adress utanför begränsningen"
 
-#
 #: rescoff.c:197
 msgid "directory"
 msgstr "katalog"
 
-#
 #: rescoff.c:225
 msgid "named directory entry"
 msgstr "namngiven katalogpost"
 
-#
 #: rescoff.c:234
 msgid "directory entry name"
 msgstr "katalogpostnamn"
 
-#
 #: rescoff.c:254
 msgid "named subdirectory"
 msgstr "namngiven underkatalog"
 
-#
 #: rescoff.c:262
 msgid "named resource"
 msgstr "namngiven resurs"
 
-#
 #: rescoff.c:277
 msgid "ID directory entry"
 msgstr "ID-katalogpost"
 
-#
 #: rescoff.c:294
 msgid "ID subdirectory"
 msgstr "ID-underkatalog"
 
-#
 #: rescoff.c:302
 msgid "ID resource"
 msgstr "ID-resurs"
 
-#
 #: rescoff.c:328
 msgid "resource type unknown"
-msgstr "okänd resurstyp"
+msgstr "okänd resurstyp"
 
-#
 #: rescoff.c:331
 msgid "data entry"
 msgstr "datapost"
 
-#
 #: rescoff.c:339
 msgid "resource data"
 msgstr "resursdata"
 
-#
 #: rescoff.c:344
 msgid "resource data size"
-msgstr "storlek på resursdata"
+msgstr "storlek på resursdata"
 
-#
 #: rescoff.c:439
 msgid "filename required for COFF output"
-msgstr "filnamn krävs för COFF-utdata"
+msgstr "filnamn krävs för COFF-utdata"
 
-#
 #: rescoff.c:738
 msgid "can't get BFD_RELOC_RVA relocation type"
-msgstr "kan inte ta fram BFD_RELOC_RVA-relokeringstyp"
+msgstr "kan inte få fram BFD_RELOC_RVA-relokeringstyp"
 
-#
 #: resrc.c:240 resrc.c:312
 #, c-format
 msgid "can't open temporary file `%s': %s"
-msgstr "kan inte öppna temporärfil \"%s\": %s"
+msgstr "kan inte öppna temporärfil \"%s\": %s"
 
-#
 #: resrc.c:246
 #, c-format
 msgid "can't redirect stdout: `%s': %s"
 msgstr "kan inte omdirigera standard ut: \"%s\": %s"
 
-#
 #: resrc.c:262
 #, c-format
 msgid "%s %s: %s"
 msgstr "%s %s: %s"
 
-#
 #: resrc.c:308
 #, c-format
 msgid "can't execute `%s': %s"
 msgstr "kan inte exekvera \"%s\": %s"
 
-#
 #: resrc.c:317
 #, c-format
 msgid "Using temporary file `%s' to read preprocessor output\n"
-msgstr "Utnyttjar temporärfil \"%s\" till att läsa preprocessorutdata\n"
+msgstr "Läser utdata från förbehandlaren via temporärfil \"%s\"\n"
 
-#
 #: resrc.c:324
 #, c-format
 msgid "can't popen `%s': %s"
 msgstr "kan inte anropa popen \"%s\": %s"
 
-#
 #: resrc.c:326
 msgid "Using popen to read preprocessor output\n"
-msgstr "Använder popen för att läsa utdata från preprocessorn\n"
+msgstr "Läser utdata från förbehandlaren via popen\n"
 
-#
 #: resrc.c:369
 #, c-format
 msgid "Tried `%s'\n"
 msgstr "Provade \"%s\"\n"
 
-#
 #: resrc.c:380
 #, c-format
 msgid "Using `%s'\n"
-msgstr "Använder \"%s\"\n"
+msgstr "Använder \"%s\"\n"
 
-#
-#: resrc.c:541
+#: resrc.c:542
 #, c-format
 msgid "%s:%d: %s\n"
 msgstr "%s:%d: %s\n"
 
-#
-#: resrc.c:550
+#: resrc.c:551
 #, c-format
 msgid "%s: unexpected EOF"
-msgstr "%s: oväntat filslut"
+msgstr "%s: oväntat filslut"
 
-#
-#: resrc.c:607
+#: resrc.c:608
 #, c-format
 msgid "%s: read of %lu returned %lu"
-msgstr "%s: läsning av %lu byte gav %lu"
+msgstr "%s: läsning av %lu byte gav %lu"
 
-#
-#: resrc.c:649 resrc.c:903 resrc.c:1176 resrc.c:1330
+#: resrc.c:650 resrc.c:905 resrc.c:1178 resrc.c:1332
 #, c-format
 msgid "stat failed on bitmap file `%s': %s"
-msgstr "stat misslyckades på bildfil \"%s\": %s"
+msgstr "stat misslyckades på bildfil \"%s\": %s"
 
-#
-#: resrc.c:702
+#: resrc.c:703
 #, c-format
 msgid "cursor file `%s' does not contain cursor data"
-msgstr "markörfil \"%s\" innehåller inte markördata"
+msgstr "markörfil \"%s\" innehåller inte markördata"
 
-#
-#: resrc.c:734 resrc.c:1047
+#: resrc.c:735 resrc.c:1049
 #, c-format
 msgid "%s: fseek to %lu failed: %s"
 msgstr "%s: fseek till %lu misslyckades: %s"
 
-#
-#: resrc.c:871
-msgid "help ID requires DIALOGEX"
-msgstr "hjälp-ID kräver DIALOGEX"
-
-#
 #: resrc.c:873
-msgid "control data requires DIALOGEX"
-msgstr "kontrolldata kräver DIALOGEX"
+msgid "help ID requires DIALOGEX"
+msgstr "hjälp-ID kräver DIALOGEX"
 
-#
-#: resrc.c:1016
+#: resrc.c:875
+msgid "control data requires DIALOGEX"
+msgstr "kontrolldata kräver DIALOGEX"
+
+#: resrc.c:1018
 #, c-format
 msgid "icon file `%s' does not contain icon data"
-msgstr "ikonfil \"%s\" innehåller inte ikondata"
+msgstr "ikonfil \"%s\" innehåller inte ikondata"
 
-#
-#: resrc.c:1535
+#: resrc.c:1537
 #, c-format
 msgid "can't open `%s' for output: %s"
-msgstr "kan inte öppna \"%s\" för utmatning: %s"
+msgstr "kan inte öppna \"%s\" för utmatning: %s"
 
-#
-#: size.c:79
+#: size.c:86
+msgid " Displays the sizes of sections inside binary files\n"
+msgstr " Visa storleken på sektioner i binärfiler\n"
+
+#: size.c:87
+msgid " If no input file(s) are specified, a.out is assumed\n"
+msgstr " Om ingen infil är vald används a.out\n"
+
+#: size.c:88
 #, c-format
 msgid ""
-"Usage: %s [-A | --format=sysv | -B | --format=berkeley]\n"
-"       [-o | --radix=8 | -d | --radix=10 | -h | --radix=16]\n"
-"       [-V | --version] [--target=bfdname] [--help] [file...]\n"
+" The options are:\n"
+"  -A|-B     --format={sysv|berkeley}  Select output style (default is %s)\n"
+"  -o|-d|-x  --radix={8|10|16}         Display numbers in octal, decimal or hex\n"
+"  -t        --totals                  Display the total sizes (Berkeley only)\n"
+"            --target=<bfdname>        Set the binary file format\n"
+"  -h        --help                    Display this information\n"
+"  -v        --version                 Display the program's version\n"
+"\n"
 msgstr ""
-"Användning: %s [-A | --format=sysv | -B | --format=berkeley]\n"
-"            [-o | --radix=8 | -d | --radix=10 | -h | --radix=16]\n"
-"            [-V | --version] [--target=bfdnamn] [--help] [fil...]\n"
+" Flaggorna är:\n"
+"  -A|-B     --format={sysv|berkeley}  Välj utdatastil (standard är %s)\n"
+"  -o|-d|-x  --radix={8|10|16}         Visa tal oktalt, decimalt eller hexadecimalt\n"
+"  -t        --totals                  Visa samanlagd storlek (endast Berkeley)\n"
+"            --target=<bfdnamn>        Välj binärfilens format\n"
+"  -h        --help                    Visa denna hjälp\n"
+"  -v        --version                 Visa programmets versionsinformation\n"
+"\n"
 
-#
-#: size.c:85
-msgid "default is --format=berkeley\n"
-msgstr "standardvärdet är --format=berkeley\n"
-
-#
-#: size.c:87
-msgid "default is --format=sysv\n"
-msgstr "standardvärdet är --format=sysv\n"
-
-#
-#: size.c:146
+#: size.c:160
 #, c-format
 msgid "invalid argument to --format: %s"
 msgstr "ogiltigt argument till --format: %s"
 
-#
-#: size.c:173
+#: size.c:187
 #, c-format
 msgid "Invalid radix: %s\n"
 msgstr "Ogiltig talbas: %s\n"
 
-#
-#: srconv.c:1931
-#, c-format
-msgid "Usage: %s [-dhVq] in-file [out-file]\n"
-msgstr "Användning: %s [-dhVq] infil [utfil]\n"
+#: srconv.c:1953
+msgid "Convert a COFF object file into a SYSROFF object file\n"
+msgstr "Konverterar en COFF-objektfil till en SYSROFF-objektfil\n"
 
-#
-#: srconv.c:1938
-#, c-format
-msgid "%s: Convert a COFF object file into a SYSROFF object file\n"
-msgstr "%s: Konverterar en COFF-objektfil till en SYSROFF-objektfil\n"
+#: srconv.c:1954
+msgid ""
+" The options are:\n"
+"  -q --quick       (Obsolete - ignoerd)\n"
+"  -n --noprescan   Do not perform a scan to convert commons into defs\n"
+"  -d --debug       Display information about what is being done\n"
+"  -h --help        Display this information\n"
+"  -v --version     Print the program's version number\n"
+msgstr ""
+" Flaggorna är:\n"
+"  -q --quick       (Utgått - ignoreras)\n"
+"  -n --noprescan   Gör inte sök-och-ersätt från commons till defs\n"
+"  -d --debug       Visa information om vad som händer\n"
+"  -h --help        Visa denna hjälp\n"
+"  -v --version     Visa programets versionsinformation\n"
 
-#
-#: srconv.c:2074
+#: srconv.c:2099
 #, c-format
 msgid "unable to open output file %s"
-msgstr "kan inte öppna utdatafil %s"
+msgstr "kan inte öppna utfil %s"
 
-#
-#: stabs.c:343 stabs.c:1760
+#: stabs.c:346 stabs.c:1755
 msgid "numeric overflow"
-msgstr "numeriskt överspill"
+msgstr "numeriskt överspill"
 
-#
-#  FIXME
-#: stabs.c:354
+#: stabs.c:357
 #, c-format
 msgid "Bad stab: %s\n"
 msgstr "Felaktig stab: %s\n"
 
-#
-#: stabs.c:364
+#: stabs.c:367
 #, c-format
 msgid "Warning: %s: %s\n"
 msgstr "Varning: %s: %s\n"
 
-#
-#: stabs.c:486
+#: stabs.c:488
 msgid "N_LBRAC not within function\n"
 msgstr "N_LBRAC inte inuti funktion\n"
 
-#
-#: stabs.c:525
+#: stabs.c:527
 msgid "Too many N_RBRACs\n"
-msgstr "För många N_RBRAC:s\n"
+msgstr "För många N_RBRAC:s\n"
 
-#
-#: stabs.c:770
+#: stabs.c:773
 msgid "unknown C++ encoded name"
-msgstr "okänt C++-kodat namn"
+msgstr "okänt C++-kodat namn"
 
-#
 #. Complain and keep going, so compilers can invent new
 #. cross-reference types.
-#: stabs.c:1297
+#: stabs.c:1293
 msgid "unrecognized cross reference type"
-msgstr "okänd korsreferenstyp"
+msgstr "okänd korsreferenstyp"
 
-#
 #. Does this actually ever happen?  Is that why we are worrying
 #. about dealing with it rather than just calling error_type?
-#: stabs.c:1852
+#: stabs.c:1847
 msgid "missing index type"
 msgstr "utebliven indextyp"
 
-#
-#: stabs.c:2179
+#: stabs.c:2174
 msgid "unknown virtual character for baseclass"
-msgstr "okänt virtuellt tecken för basklass"
+msgstr "okänt virtuellt tecken för basklass"
 
-#
-#  FIXME
-#: stabs.c:2197
+#: stabs.c:2192
 msgid "unknown visibility character for baseclass"
-msgstr "okänd synlighetstecken för basklass"
+msgstr "okänt synlighetstecken för basklass"
 
-#
-#: stabs.c:2389
+#: stabs.c:2384
 msgid "unnamed $vb type"
 msgstr "$vb-typ utan namn"
 
-#
-#: stabs.c:2395
+#: stabs.c:2390
 msgid "unrecognized C++ abbreviation"
-msgstr "okänd C++-förkortning"
+msgstr "okänd C++-förkortning"
 
-#
-#  FIXME
-#: stabs.c:2475
+#: stabs.c:2470
 msgid "unknown visibility character for field"
-msgstr "okänd synlighetstecken för fält"
+msgstr "okänt synlighetstecken för fält"
 
-#
-#: stabs.c:2731
+#: stabs.c:2726
 msgid "const/volatile indicator missing"
 msgstr "const/volatile-indikator saknas"
 
-#
-#: stabs.c:2971
+#: stabs.c:2967
 #, c-format
 msgid "No mangling for \"%s\"\n"
 msgstr "Ingen kodning av \"%s\"\n"
 
-#
-#: stabs.c:3284
+#: stabs.c:3281
 msgid "Undefined N_EXCL"
 msgstr "Odefinierad N_EXCL"
 
-#
-#: stabs.c:3372
+#: stabs.c:3369
 #, c-format
 msgid "Type file number %d out of range\n"
-msgstr "Typens filnummer %d utanför sitt intervall\n"
+msgstr "Typs filnummer %d utanför sitt intervall\n"
 
-#
-#: stabs.c:3377
+#: stabs.c:3374
 #, c-format
 msgid "Type index number %d out of range\n"
-msgstr "Typens indexnummer %d utanför sitt intervall\n"
+msgstr "Typs indexnummer %d utanför sitt intervall\n"
 
-#
-#: stabs.c:3464
+#: stabs.c:3461
 #, c-format
 msgid "Unrecognized XCOFF type %d\n"
-msgstr "Okänd XCOFF-typ %d\n"
+msgstr "Okänd XCOFF-typ %d\n"
 
-#
-#: stabs.c:3763
+#: stabs.c:3762
 #, c-format
 msgid "bad mangled name `%s'\n"
-msgstr "felaktigt kodat namn \"%s\"\n"
+msgstr "felaktigt manglat namn \"%s\"\n"
 
-#
 #: stabs.c:3859
 msgid "no argument types in mangled string\n"
-msgstr "ingen argumenttyp i kodad sträng\n"
+msgstr "inga argumenttyper i den manglade strängen\n"
 
-#
-#: strings.c:199
+#: strings.c:208
 #, c-format
 msgid "invalid number %s"
 msgstr "ogiltigt tal %s"
 
-#
-#: strings.c:638
+#: strings.c:647
 #, c-format
 msgid "invalid integer argument %s"
 msgstr "ogiltigt heltalsargument %s"
 
-#
-#: strings.c:648
-#, c-format
+#: strings.c:658
+msgid " Display printable strings in [file(s)] (stdin by default)\n"
+msgstr " Visa läsbara strängar i [fil(er)] (eller från standard in)\n"
+
+#: strings.c:659
 msgid ""
-"Usage: %s [-afov] [-n min-len] [-min-len] [-t {o,x,d}] [-e {s,b,l,B,L}]\n"
-"       [-] [--all] [--print-file-name] [--bytes=min-len] [--radix={o,x,d}]\n"
-"       [--target=bfdname] [--encoding {s,b,l,B,L}] [--help] [--version] file...\n"
+" The options are:\n"
+"  -a - --all                Scan the entire file, not just the data section\n"
+"  -f --print-file-name      Print the name of the file before each string\n"
+"  -n --bytes=[number]       Locate & print any NUL-terminated sequence of at\n"
+"  -<number>                 least [number] characters (default 4).\n"
+"  -t --radix={o,x,d}        Print the location of the string in base 8, 10 or 16\n"
+"  -o                        An alias for --radix=o\n"
+"  -T --target=<BFDNAME>     Specify the binary file format\n"
+"  -e --encoding={s,S,b,l,B,L} Select character size and endianness:\n"
+"                            s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit\n"
+"  -h --help                 Display this information\n"
+"  -v --version              Print the program's version number\n"
 msgstr ""
-"Användning: %s [-afov] [-n min-längd] [-min-len] [-t {o,x,d}] [-e {s,b,l,B,L}]\n"
-"       [-] [--all] [--print-file-name] [--bytes=min-längd] [--radix={o,x,d}]\n"
-"       [--target=bfdnamn] [--encoding {s,b,l,B,L}] [--help] [--version] fil...\n"
+" Flaggorna är:\n"
+"  -a - --all                Undersök hela filen, inte bara datasektionen\n"
+"  -f --print-file-name      Skriv filens namn före varje sträng\n"
+"  -n --bytes=[antal]        Hitta och skriv ut varje NUL-terminerad sekvens\n"
+"  -<antal>                  med minst [antal] tecken (standard 4).\n"
+"  -t --radix={o,d,x}        Skriv strängens position i talbas 8, 10 eller 16\n"
+"  -o                        Synonym för --radix=o\n"
+"  -T --target=<BFDNAMN>     Välj binärfilens format\n"
+"  -e --encoding={s,S,b,l,B,L} Välj teckenstorlek och typ av endian:\n"
+"                            s=7-bit, S=8-bit, {b,l}=16-bit, {B,L}=32-bit\n"
+"  -h --help                 Visa denna hjälp\n"
+"  -v --version              Visa programmets versionsinformation\n"
 
-#
-#: sysdump.c:733
-#, c-format
-msgid "Usage: %s [-hV] in-file\n"
-msgstr "Användning: %s [-hV] infil\n"
+#: sysdump.c:768
+msgid "Print a human readable interpretation of a SYSROFF object file\n"
+msgstr "Skriv en mänskligt läsbar tolkning av en SYSROFF-objektfil\n"
 
-#
-#: sysdump.c:805
+#: sysdump.c:769
+msgid ""
+" The options are:\n"
+"  -h --help        Display this information\n"
+"  -v --version     Print the program's version number\n"
+msgstr ""
+" Flaggorna är:\n"
+"  -h --help        Visa denna hjälp\n"
+"  -v --version     Visa programment versionsinformation\n"
+
+#: sysdump.c:836
 #, c-format
 msgid "cannot open input file %s"
-msgstr "kan inte öppna indatafil %s"
+msgstr "kan inte öppna infil %s"
 
-#
-#: version.c:35
-msgid "Copyright 2001 Free Software Foundation, Inc.\n"
-msgstr "Copyright 2001 Free Software Foundation, Inc.\n"
-
-#
 #: version.c:36
+msgid "Copyright 2002 Free Software Foundation, Inc.\n"
+msgstr "Copyright 2002 Free Software Foundation, Inc.\n"
+
+#: version.c:37
 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"
 msgstr ""
-"Detta program är fri programvara; du kan sprida det vidare under villkoren\n"
+"Detta program är fri programvara; du kan sprida det vidare under villkoren\n"
 "i GNU General Public License.  Detta program har inga som helst garantier.\n"
 
-#
-#: windres.c:237
+#: windres.c:205
 #, c-format
 msgid "can't open %s `%s': %s"
-msgstr "kan inte öppna %s \"%s\": %s"
+msgstr "kan inte öppna %s \"%s\": %s"
 
-#
-#: windres.c:416
+#: windres.c:384
 msgid ": expected to be a directory\n"
-msgstr ": förväntades vara en katalog\n"
+msgstr ": förväntades vara en katalog\n"
 
-#
-#: windres.c:428
+#: windres.c:396
 msgid ": expected to be a leaf\n"
-msgstr ": förväntades vara ett löv\n"
+msgstr ": förväntades vara ett löv\n"
 
-#
-#: windres.c:437
+#: windres.c:405
 #, c-format
 msgid "%s: warning: "
 msgstr "%s: varning: "
 
-#
-#: windres.c:439
+#: windres.c:407
 msgid ": duplicate value\n"
-msgstr ": dublett av värdet\n"
+msgstr ": dublett av värdet\n"
 
-#
-#: windres.c:602
+#: windres.c:569
 #, c-format
 msgid "unknown format type `%s'"
-msgstr "okänd formattyp \"%s\""
+msgstr "okänd formattyp \"%s\""
 
-#
-#: windres.c:603
+#: windres.c:570
 #, c-format
 msgid "%s: supported formats:"
 msgstr "%s: format som hanteras:"
 
-#
 #. Otherwise, we give up.
-#: windres.c:690
+#: windres.c:655
 #, c-format
 msgid "can not determine type of file `%s'; use the -I option"
-msgstr "kan inte fastställa filtyp på fil \"%s\"; använd flagga -I"
+msgstr "kan inte fastställa filtyp på \"%s\"; använd flagga -I"
 
-#
-#: windres.c:704
+#: windres.c:669
 #, c-format
-msgid "Usage: %s [options] [input-file] [output-file]\n"
-msgstr "Användning: %s [flaggor] [infil] [utfil]\n"
+msgid "Usage: %s [option(s)] [input-file] [output-file]\n"
+msgstr "Användning: %s [flaggor] [infil] [utfil]\n"
 
-#
-#: windres.c:706
+#: windres.c:671
 msgid ""
-"Options:\n"
-"  -i FILE, --input FILE       Name input file\n"
-"  -o FILE, --output FILE      Name output file\n"
-"  -I FORMAT, --input-format FORMAT\n"
-"                              Specify input format\n"
-"  -O FORMAT, --output-format FORMAT\n"
-"                              Specify output format\n"
-"  -F TARGET, --target TARGET  Specify COFF target\n"
-"  --preprocessor PROGRAM      Program to use to preprocess rc file\n"
-"  --include-dir DIR           Include directory when preprocessing rc file\n"
-"  -DSYM[=VAL], --define SYM[=VAL]\n"
-"                              Define SYM when preprocessing rc file\n"
-"  -v                          Verbose - tells you what it's doing\n"
-"  --language VAL              Set language when reading rc file\n"
-"  --use-temp-file             Use a temporary file instead of popen to read\n"
-"                              the preprocessor output\n"
-"  --no-use-temp-file          Use popen (default)\n"
+" The options are:\n"
+"  -i --input=<file>            Name input file\n"
+"  -o --output=<file>           Name output file\n"
+"  -J --input-format=<format>   Specify input format\n"
+"  -O --output-format=<format>  Specify output format\n"
+"  -F --target=<target>         Specify COFF target\n"
+"     --preprocessor=<program>  Program to use to preprocess rc file\n"
+"  -I --include-dir=<dir>       Include directory when preprocessing rc file\n"
+"  -D --define <sym>[=<val>]    Define SYM when preprocessing rc file\n"
+"  -U --undefine <sym>          Undefine SYM when preprocessing rc file\n"
+"  -v --verbose                 Verbose - tells you what it's doing\n"
+"  -l --language=<val>          Set language when reading rc file\n"
+"     --use-temp-file           Use a temporary file instead of popen to read\n"
+"                               the preprocessor output\n"
+"     --no-use-temp-file        Use popen (default)\n"
 msgstr ""
-"Flaggor:\n"
-"  -i FIL, --input FIL         Namnge indatafilen\n"
-"  -o FIL, --output FIL        Namnge utdatafilen\n"
-"  -I FORMAT, --input-format FORMAT\n"
-"                              Ange indataformatet\n"
-"  -O FORMAT, --output-format FORMAT\n"
-"                              Ange utdataformatet\n"
-"  -F MÅL, --target MÅL        Ange COFF-målet\n"
-"  --preprocessor PROGRAM      Program att använda som preprocessor på rc-filen\n"
-"  --include-dir KATALOG       Inkludera katalog när rc-filen preprocessas\n"
-"  -DSYM[=VÄRDE], --define SYM[=VÄRDE]\n"
-"                              Definiera SYM när rc-filen preporocessas\n"
-"  -v                          Mångordig - berättar vad den gör\n"
-"  --language SPRÅK            Sätt språket när rc-filen läses\n"
-"  --use-temp-file             Använd en tem.fil istället för popen vid läsning\n"
-"                              av utdata från preprocessorn\n"
-"  --no-use-temp-file          Använd popen (förval)\n"
+" Flaggorna är:\n"
+"  -i --input=<fil>             Välj infil\n"
+"  -o --output=<fil>            Välj utfil\n"
+"  -J --input-format=<format>   Välj indataformat\n"
+"  -O --output-format=<format>  Välj utdataformat\n"
+"  -F --target=<mål>            Välj COFF-mål\n"
+"     --preprocessor=<program>  Program att förbehandla rc-filen med\n"
+"  -I --include-dir=<katalog>   Inkludera ur katalog när rc-filen förbehandlas\n"
+"  -D --define <sym>[=<värde>]  Definiera SYM när rc-filen förbehandlas\n"
+"  -U --undefine <sym>          Odefiniera SYM när rc-filen förbehandlas\n"
+"  -v --verbose                 Utförlig - berättar vad den gör\n"
+"  -l --language=<värde>        Välj språk när rc-filen läses\n"
+"     --use-temp-file           Använd en tempfil istället för popen för att\n"
+"                               läsa utdata från förbehandlaren\n"
+"     --no-use-temp-file        Använd popen (standard)\n"
 
-#
-#: windres.c:725
-msgid "  --yydebug                   Turn on parser debugging\n"
-msgstr "  --yydebug                   Slå på tolkens felsökning\n"
+#: windres.c:687
+msgid "     --yydebug                 Turn on parser debugging\n"
+msgstr "     --yydebug                 Slå på tolkens felsökning\n"
 
-#
-#: windres.c:728
+#: windres.c:690
 msgid ""
-"  --help                      Print this help message\n"
-"  --version                   Print version information\n"
+"  -r                           Ignored for compatibility with rc\n"
+"  -h --help                    Print this help message\n"
+"  -V --version                 Print version information\n"
 msgstr ""
-"  --help                      Visa denna hjälp\n"
-"  --version                   Visa versionsinformation\n"
+"  -r                           Ignorerad, för kompabilitet med rc\n"
+"  -h --help                    Visa denna hjälp\n"
+"  -V --version                 Visa versionsinformation\n"
 
-#
-#: windres.c:731
+#: windres.c:694
 msgid ""
 "FORMAT is one of rc, res, or coff, and is deduced from the file name\n"
 "extension if not specified.  A single file name is an input file.\n"
 "No input-file is stdin, default rc.  No output-file is stdout, default rc.\n"
 msgstr ""
-"FORMAT är någon av rc, res eller coff, och härleds från filnamnsändelsen\n"
-"om det inte anges.  Ett ensamt filnamn är en indatafil.  Ingen indatafil\n"
-"betyder standard in, med format rc.  Ingen utdatafil betyder standard ut,\n"
-"med format rc.\n"
+"FORMAT är ett av rc, res eller coff, och härleds från filändelsen\n"
+"om det inte anges.  Ett ensamt filnamn är en infil.  Ingen infil\n"
+"betyder standard in, med formatet rc.  Ingen utfil betyder standard ut,\n"
+"med formatet rc.\n"
 
-#
-#: windres.c:983
+#: windres.c:833
+msgid "invalid option -f\n"
+msgstr "ogiltig flagga -f\n"
+
+#: windres.c:838
+msgid "No filename following the -fo option.\n"
+msgstr "Inget filnamn efter flaggan -fo.\n"
+
+#: windres.c:896
+msgid "Option -I is deprecated for setting the input format, please use -J instead.\n"
+msgstr "Flagga -I för att välja informat har utgått, vänligen använd -J istället.\n"
+
+#: windres.c:1014
 msgid "no resources"
 msgstr "inga resurser"
 
-#
-#: wrstabs.c:366 wrstabs.c:2027
+#: wrstabs.c:395 wrstabs.c:2055
 #, c-format
 msgid "string_hash_lookup failed: %s"
 msgstr "string_hash_lookup misslyckades: %s"
 
-#
-#: wrstabs.c:666
+#: wrstabs.c:695
 #, c-format
 msgid "stab_int_type: bad size %u"
 msgstr "stab_int_type: felaktig storlek %u"
 
-#
-#: wrstabs.c:1467
+#: wrstabs.c:1495
 #, c-format
 msgid "%s: warning: unknown size for field `%s' in struct"
-msgstr "%s: varning: okänd storleken på fält \"%s\" i strukturen"
+msgstr "%s: varning: okänd storleken på fält \"%s\" i strukturen"
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 9f1008c..ecc54bf 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -50,13 +50,13 @@
 #include <zlib.h>
 #endif
 
-/* for PATH_MAX */
+/* For PATH_MAX.  */
 #ifdef HAVE_LIMITS_H
 #include <limits.h>
 #endif
 
 #ifndef PATH_MAX
-/* for MAXPATHLEN */
+/* For MAXPATHLEN.  */
 # ifdef HAVE_SYS_PARAM_H
 #  include <sys/param.h>
 # endif
@@ -373,6 +373,7 @@
 }
 
 /* Print a VMA value.  */
+
 static int
 print_vma (bfd_vma vma, print_mode mode)
 {
@@ -462,7 +463,7 @@
 	{
 	  if (len > width)
 	    len = width;
-	  
+
 	  printf (format_string, len, symbol);
 
 	  width -= len;
@@ -486,7 +487,7 @@
 	{
 	  if (width < 6)
 	    break;
-	  
+
 	  printf ("<0x%.2x>", *c);
 
 	  width -= 6;
@@ -1272,7 +1273,7 @@
 			       && psym->st_shndx == SHN_IA_64_ANSI_COMMON)
 			sec_name = "ANSI_COM";
 		      else if (elf_header.e_machine == EM_IA_64
-			       && (elf_header.e_ident[EI_OSABI] 
+			       && (elf_header.e_ident[EI_OSABI]
 				   == ELFOSABI_OPENVMS)
 			       && psym->st_shndx == SHN_IA_64_VMS_SYMVEC)
 			sec_name = "VMS_SYMVEC";
@@ -1823,7 +1824,7 @@
     case EM_ALTERA_NIOS2:	return "Altera Nios II";
     case EM_XC16X:		return "Infineon Technologies xc16x";
     case EM_CYGNUS_MEP:         return "Toshiba MeP Media Engine";
-    case EM_CR16:		
+    case EM_CR16:
     case EM_CR16_OLD:		return "National Semiconductor's CR16";
     default:
       snprintf (buff, sizeof (buff), _("<unknown>: 0x%x"), e_machine);
@@ -4279,8 +4280,8 @@
       else if (section->sh_type == SHT_RELA)
 	CHECK_ENTSIZE (section, i, Rela);
       else if ((do_debugging || do_debug_info || do_debug_abbrevs
-		|| do_debug_lines || do_debug_lines_decoded || do_debug_pubnames 
-		|| do_debug_aranges || do_debug_frames || do_debug_macinfo 
+		|| do_debug_lines || do_debug_lines_decoded || do_debug_pubnames
+		|| do_debug_aranges || do_debug_frames || do_debug_macinfo
 		|| do_debug_str || do_debug_loc || do_debug_ranges)
 	       && (const_strneq (name, ".debug_")
                    || const_strneq (name, ".zdebug_")))
@@ -4293,7 +4294,7 @@
 	  if (do_debugging
 	      || (do_debug_info     && streq (name, "info"))
 	      || (do_debug_abbrevs  && streq (name, "abbrev"))
-	      || ((do_debug_lines || do_debug_lines_decoded) 
+	      || ((do_debug_lines || do_debug_lines_decoded)
 		  && streq (name, "line"))
 	      || (do_debug_pubnames && streq (name, "pubnames"))
 	      || (do_debug_aranges  && streq (name, "aranges"))
@@ -4375,7 +4376,8 @@
 		    get_section_type_name (section->sh_type));
 	}
       else
-	printf ("  [%2u] %-17.17s %-15.15s ",
+	printf ((do_wide ? "  [%2u] %-17s %-15s "
+			 : "  [%2u] %-17.17s %-15.15s "),
 		i,
 		SECTION_NAME (section),
 		get_section_type_name (section->sh_type));
@@ -8027,7 +8029,7 @@
       return reloc_type == 1; /* R_ARC_32.  */
     case EM_ARM:
       return reloc_type == 2; /* R_ARM_ABS32 */
-    case EM_AVR_OLD: 
+    case EM_AVR_OLD:
     case EM_AVR:
       return reloc_type == 1;
     case EM_BLACKFIN:
@@ -8284,8 +8286,40 @@
     }
 }
 
+/* Returns TRUE iff RELOC_TYPE is a NONE relocation used for discarded
+   relocation entries (possibly formerly used for SHT_GROUP sections).  */
+
+static bfd_boolean
+is_none_reloc (unsigned int reloc_type)
+{
+  switch (elf_header.e_machine)
+    {
+    case EM_68K:     /* R_68K_NONE.  */
+    case EM_386:     /* R_386_NONE.  */
+    case EM_SPARC32PLUS:
+    case EM_SPARCV9:
+    case EM_SPARC:   /* R_SPARC_NONE.  */
+    case EM_MIPS:    /* R_MIPS_NONE.  */
+    case EM_PARISC:  /* R_PARISC_NONE.  */
+    case EM_ALPHA:   /* R_ALPHA_NONE.  */
+    case EM_PPC:     /* R_PPC_NONE.  */
+    case EM_PPC64:   /* R_PPC64_NONE.  */
+    case EM_ARM:     /* R_ARM_NONE.  */
+    case EM_IA_64:   /* R_IA64_NONE.  */
+    case EM_SH:      /* R_SH_NONE.  */
+    case EM_S390_OLD:
+    case EM_S390:    /* R_390_NONE.  */
+    case EM_CRIS:    /* R_CRIS_NONE.  */
+    case EM_X86_64:  /* R_X86_64_NONE.  */
+    case EM_MN10300: /* R_MN10300_NONE.  */
+    case EM_M32R:    /* R_M32R_NONE.  */
+      return reloc_type == 0;
+    }
+  return FALSE;
+}
+
 /* Uncompresses a section that was compressed using zlib, in place.
- * This is a copy of bfd_uncompress_section_contents, in bfd/compress.c  */
+   This is a copy of bfd_uncompress_section_contents, in bfd/compress.c  */
 
 static int
 uncompress_section_contents (unsigned char **buffer, dwarf_size_type *size)
@@ -8297,9 +8331,9 @@
   return FALSE;
 #else
   dwarf_size_type compressed_size = *size;
-  unsigned char* compressed_buffer = *buffer;
+  unsigned char * compressed_buffer = *buffer;
   dwarf_size_type uncompressed_size;
-  unsigned char* uncompressed_buffer;
+  unsigned char * uncompressed_buffer;
   z_stream strm;
   int rc;
   dwarf_size_type header_size = 12;
@@ -8307,8 +8341,9 @@
   /* Read the zlib header.  In this case, it should be "ZLIB" followed
      by the uncompressed section size, 8 bytes in big-endian order.  */
   if (compressed_size < header_size
-      || ! streq ((char*) compressed_buffer, "ZLIB"))
+      || ! streq ((char *) compressed_buffer, "ZLIB"))
     return 0;
+
   uncompressed_size = compressed_buffer[4]; uncompressed_size <<= 8;
   uncompressed_size += compressed_buffer[5]; uncompressed_size <<= 8;
   uncompressed_size += compressed_buffer[6]; uncompressed_size <<= 8;
@@ -8324,23 +8359,23 @@
   strm.zfree = NULL;
   strm.opaque = NULL;
   strm.avail_in = compressed_size - header_size;
-  strm.next_in = (Bytef*) compressed_buffer + header_size;
+  strm.next_in = (Bytef *) compressed_buffer + header_size;
   strm.avail_out = uncompressed_size;
   uncompressed_buffer = xmalloc (uncompressed_size);
 
-  rc = inflateInit (&strm);
+  rc = inflateInit (& strm);
   while (strm.avail_in > 0)
     {
       if (rc != Z_OK)
         goto fail;
-      strm.next_out = ((Bytef*) uncompressed_buffer
+      strm.next_out = ((Bytef *) uncompressed_buffer
                        + (uncompressed_size - strm.avail_out));
       rc = inflate (&strm, Z_FINISH);
       if (rc != Z_STREAM_END)
         goto fail;
-      rc = inflateReset (&strm);
+      rc = inflateReset (& strm);
     }
-  rc = inflateEnd (&strm);
+  rc = inflateEnd (& strm);
   if (rc != Z_OK
       || strm.avail_out != 0)
     goto fail;
@@ -8419,6 +8454,9 @@
 
 	  reloc_type = get_reloc_type (rp->r_info);
 
+	  if (is_none_reloc (reloc_type))
+	    continue;
+
 	  if (is_32bit_abs_reloc (reloc_type)
 	      || is_32bit_pcrel_reloc (reloc_type))
 	    reloc_size = 4;
@@ -8466,7 +8504,7 @@
 	    }
 
 	  addend = is_rela ? rp->r_addend : byte_get (loc, reloc_size);
-	  
+
 	  if (is_32bit_pcrel_reloc (reloc_type)
 	      || is_64bit_pcrel_reloc (reloc_type))
 	    {
@@ -9012,6 +9050,29 @@
       return p;
    }
 
+  if (tag == Tag_GNU_Power_ABI_Struct_Return)
+    {
+      val = read_uleb128 (p, &len);
+      p += len;
+      printf ("  Tag_GNU_Power_ABI_Struct_Return: ");
+      switch (val)
+       {
+       case 0:
+         printf ("Any\n");
+         break;
+       case 1:
+         printf ("r3/r4\n");
+         break;
+       case 2:
+         printf ("Memory\n");
+         break;
+       default:
+         printf ("??? (%d)\n", val);
+         break;
+       }
+      return p;
+    }
+
   if (tag & 1)
     type = 1; /* String.  */
   else
@@ -10630,7 +10691,7 @@
 	  size -= index_num * SIZEOF_AR_INDEX_NUMBERS;
 
 	  /* Convert the index numbers into the host's numeric format.  */
-	  index_array = malloc (index_num * sizeof (* index_array));	  
+	  index_array = malloc (index_num * sizeof (* index_array));
 	  if (index_array == NULL)
 	    {
 	      free (index_buffer);
@@ -10664,7 +10725,7 @@
 	      error (_("%s: failed to read archive index symbol table\n"), file_name);
 	      ret = 1;
 	      goto out;
-	    }	  
+	    }
   	}
       else
 	{
@@ -10786,7 +10847,7 @@
 		{
 		  error (_("%s: end of the symbol table reached before the end of the index\n"),
 			 file_name);
-		  break;			 
+		  break;
 		}
 	      printf ("\t%s\n", sym_table + l);
 	      l += strlen (sym_table + l) + 1;
diff --git a/binutils/stabs.c b/binutils/stabs.c
index ea0a61e..069751b 100644
--- a/binutils/stabs.c
+++ b/binutils/stabs.c
@@ -1,6 +1,6 @@
 /* stabs.c -- Parse stabs debugging information
    Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-   2006, 2007 Free Software Foundation, Inc.
+   2006, 2007, 2008  Free Software Foundation, Inc.
    Written by Ian Lance Taylor <ian@cygnus.com>.
 
    This file is part of GNU Binutils.
@@ -1105,6 +1105,26 @@
 	return FALSE;
       break;
 
+    case 'Y':
+      /* SUNPro C++ Namespace =Yn0.  */
+      /* Skip the namespace mapping, as it is not used now.  */
+      if (*(++p) == 'n' && *(++p) == '0')
+	{
+	  /* =Yn0name; */
+	  while (*p != ';')
+	    ++p;
+	  ++p;
+	  return TRUE;
+	}
+      /* TODO SUNPro C++ support:
+         Support default arguments after F,P parameters
+         Ya = Anonymous unions
+         YM,YD = Pointers to class members
+         YT,YI = Templates
+         YR = Run-time type information (RTTI)  */
+
+      /* Fall through.  */
+
     default:
       bad_stab (string);
       return FALSE;
@@ -1837,11 +1857,13 @@
     }
   ++*pp;
 
-  /* For some odd reason, all forms of char put a c here.  This is strange
-     because no other type has this honor.  We can safely ignore this because
-     we actually determine 'char'acterness by the number of bits specified in
-     the descriptor.  */
-  if (**pp == 'c')
+  /* OpenSolaris source code indicates that one of "cbv" characters
+     can come next and specify the intrinsic 'iformat' encoding.
+     'c' is character encoding, 'b' is boolean encoding, and 'v' is
+     varargs encoding.  This field can be safely ignored because
+     the type of the field is determined from the bitwidth extracted
+     below.  */
+  if (**pp == 'c' || **pp == 'b' || **pp == 'v')
     ++*pp;
 
   /* The first number appears to be the number of bytes occupied
diff --git a/binutils/testsuite/ChangeLog b/binutils/testsuite/ChangeLog
index 2b4fdac..b8cee24b 100644
--- a/binutils/testsuite/ChangeLog
+++ b/binutils/testsuite/ChangeLog
@@ -1,3 +1,43 @@
+2008-10-06  Tom Tromey  <tromey@redhat.com>
+
+	* binutils-all/objdump.W: Update.
+
+2008-10-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* binutils-all/group.s: Updated.
+	* binutils-all/group-2.s: Likewise.
+	* binutils-all/group-3.s: Likewise.
+	* binutils-all/group-4.s: Likewise.
+	* binutils-all/strip-7.d: Likewise.
+	* binutils-all/strip-9.d: Likewise.
+
+2008-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* binutils-all/group-4.s: New.
+	* binutils-all/strip-8.d: Likewise.
+	* binutils-all/strip-9.d: Likewise.
+
+	* binutils-all/objcopy.exp: Test objcopy on group-4.s.  Run
+	strip-8 and strip-9.
+
+2008-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* binutils-all/group-3.s: New.
+	* binutils-all/strip-6.d: Likewise.
+	* binutils-all/strip-7.d: Likewise.
+
+	* binutils-all/objcopy.exp: Test objcopy on group-3.s.  Run
+	strip-6 and strip-7.
+
+2008-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* binutils-all/group-2.s: New.
+	* binutils-all/strip-4.d: Likewise.
+	* binutils-all/strip-5.d: Likewise.
+
+	* binutils-all/objcopy.exp: Test objcopy on group-2.s.  Run
+	strip-4 and strip-5.
+
 2008-07-26  Alan Modra  <amodra@bigpond.net.au>
 
 	* binutils-all/objdump.exp: Run compressed debug test only for ELF.
diff --git a/binutils/testsuite/binutils-all/group-2.s b/binutils/testsuite/binutils-all/group-2.s
new file mode 100644
index 0000000..187eeda
--- /dev/null
+++ b/binutils/testsuite/binutils-all/group-2.s
@@ -0,0 +1,8 @@
+	.section .text.foo,"axG",%progbits,.text.foo,comdat
+	.global foo2
+foo2:
+	.word 0
+	.section .data.bar,"awG",%progbits,.text.foo,comdat
+	.global bar2
+bar2:
+	.word 0
diff --git a/binutils/testsuite/binutils-all/group-3.s b/binutils/testsuite/binutils-all/group-3.s
new file mode 100644
index 0000000..eb235e8
--- /dev/null
+++ b/binutils/testsuite/binutils-all/group-3.s
@@ -0,0 +1,8 @@
+	.section .text.foo3,"axG",%progbits,foo3,comdat
+	.global foo3
+foo3:
+	.word 0
+	.section .data.bar3,"awG",%progbits,foo3,comdat
+	.global bar3
+bar3:
+	.word 0
diff --git a/binutils/testsuite/binutils-all/group-4.s b/binutils/testsuite/binutils-all/group-4.s
new file mode 100644
index 0000000..b1c8736
--- /dev/null
+++ b/binutils/testsuite/binutils-all/group-4.s
@@ -0,0 +1,6 @@
+	.section .text.foo4,"axG",%progbits,foo4,comdat
+foo4:
+	.word 0
+	.section .data.foo4,"awG",%progbits,foo4,comdat
+bar4:
+	.word 0
diff --git a/binutils/testsuite/binutils-all/group.s b/binutils/testsuite/binutils-all/group.s
index 21aa4be..cc1ffb6 100644
--- a/binutils/testsuite/binutils-all/group.s
+++ b/binutils/testsuite/binutils-all/group.s
@@ -1,8 +1,8 @@
-	.section .text,"axG",%progbits,foo_group,comdat
+	.section .text.foo,"axG",%progbits,foo_group,comdat
 	.global foo
 foo:
 	.word 0
-	.section .data,"awG",%progbits,foo_group,comdat
+	.section .data.foo,"awG",%progbits,foo_group,comdat
 	.global bar
 bar:
 	.word 0
diff --git a/binutils/testsuite/binutils-all/objcopy.exp b/binutils/testsuite/binutils-all/objcopy.exp
index e6ee142..997b543 100644
--- a/binutils/testsuite/binutils-all/objcopy.exp
+++ b/binutils/testsuite/binutils-all/objcopy.exp
@@ -827,6 +827,9 @@
 if [is_elf_format] {
     objcopy_test "ELF unknown section type" unknown.s
     objcopy_test_readelf "ELF group" group.s
+    objcopy_test_readelf "ELF group" group-2.s
+    objcopy_test_readelf "ELF group" group-3.s
+    objcopy_test_readelf "ELF group" group-4.s
     run_dump_test "copy-1"
 }
 
@@ -837,6 +840,12 @@
     run_dump_test "strip-1"
     run_dump_test "strip-2"
     run_dump_test "strip-3"
+    run_dump_test "strip-4"
+    run_dump_test "strip-5"
+    run_dump_test "strip-6"
+    run_dump_test "strip-7"
+    run_dump_test "strip-8"
+    run_dump_test "strip-9"
 
     if { [istarget "i*86-*"] || [istarget "x86_64-*-*"] } {
 	# Check to make sure we don't strip a symbol named in relocations.
diff --git a/binutils/testsuite/binutils-all/objdump.W b/binutils/testsuite/binutils-all/objdump.W
index dfca562..7617470 100644
--- a/binutils/testsuite/binutils-all/objdump.W
+++ b/binutils/testsuite/binutils-all/objdump.W
@@ -1,7 +1,7 @@
 
 tmpdir/dw2-compressed.o:     file format .*
 
-The section .debug_info contains:
+Contents of the .debug_info section:
 
   Compilation Unit @ offset 0x0:
    Length:        0x4e \(32-bit\)
diff --git a/binutils/testsuite/binutils-all/strip-4.d b/binutils/testsuite/binutils-all/strip-4.d
new file mode 100644
index 0000000..c8c2509
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-4.d
@@ -0,0 +1,11 @@
+#PROG: strip
+#source: group-2.s
+#readelf: -Sg --wide
+#name: strip with section group 4
+
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AX[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WA[ \t]+.*
+#...
+There are no section groups in this file.
diff --git a/binutils/testsuite/binutils-all/strip-5.d b/binutils/testsuite/binutils-all/strip-5.d
new file mode 100644
index 0000000..8dd2331
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-5.d
@@ -0,0 +1,18 @@
+#PROG: strip
+#source: group-2.s
+#strip: --strip-unneeded
+#readelf: -Sg --wide
+#name: strip with section group 5
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[.text.foo\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/binutils/testsuite/binutils-all/strip-6.d b/binutils/testsuite/binutils-all/strip-6.d
new file mode 100644
index 0000000..c5d4288
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-6.d
@@ -0,0 +1,11 @@
+#PROG: strip
+#source: group-3.s
+#readelf: -Sg --wide
+#name: strip with section group 6
+
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AX[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WA[ \t]+.*
+#...
+There are no section groups in this file.
diff --git a/binutils/testsuite/binutils-all/strip-7.d b/binutils/testsuite/binutils-all/strip-7.d
new file mode 100644
index 0000000..791463b
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-7.d
@@ -0,0 +1,18 @@
+#PROG: strip
+#source: group-3.s
+#strip: --strip-unneeded
+#readelf: -Sg --wide
+#name: strip with section group 7
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo3\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/binutils/testsuite/binutils-all/strip-8.d b/binutils/testsuite/binutils-all/strip-8.d
new file mode 100644
index 0000000..5618510
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-8.d
@@ -0,0 +1,11 @@
+#PROG: strip
+#source: group-4.s
+#readelf: -Sg --wide
+#name: strip with section group 8
+
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AX[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WA[ \t]+.*
+#...
+There are no section groups in this file.
diff --git a/binutils/testsuite/binutils-all/strip-9.d b/binutils/testsuite/binutils-all/strip-9.d
new file mode 100644
index 0000000..7f07a0d
--- /dev/null
+++ b/binutils/testsuite/binutils-all/strip-9.d
@@ -0,0 +1,18 @@
+#PROG: strip
+#source: group-4.s
+#strip: --strip-unneeded
+#readelf: -Sg --wide
+#name: strip with section group 9
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo4\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/binutils/windmc.c b/binutils/windmc.c
index 283c265..9392d65 100644
--- a/binutils/windmc.c
+++ b/binutils/windmc.c
@@ -175,7 +175,7 @@
 void *
 res_alloc (rc_uint_type bytes)
 {
-  return (void *) obstack_alloc (&res_obstack, (size_t) bytes);
+  return obstack_alloc (&res_obstack, (size_t) bytes);
 }
 
 static FILE *
diff --git a/binutils/windres.c b/binutils/windres.c
index e68a504..98ce165 100644
--- a/binutils/windres.c
+++ b/binutils/windres.c
@@ -157,7 +157,7 @@
 void *
 res_alloc (rc_uint_type bytes)
 {
-  return (void *) obstack_alloc (&res_obstack, (size_t) bytes);
+  return obstack_alloc (&res_obstack, (size_t) bytes);
 }
 
 /* We also use an obstack to save memory used while writing out a set
@@ -178,7 +178,7 @@
 void *
 reswr_alloc (rc_uint_type bytes)
 {
-  return (void *) obstack_alloc (&reswr_obstack, (size_t) bytes);
+  return obstack_alloc (&reswr_obstack, (size_t) bytes);
 }
 
 /* Open a file using the include directory search list.  */
diff --git a/configure b/configure
index a8cf680..0000ea8 100755
--- a/configure
+++ b/configure
@@ -272,7 +272,7 @@
 PACKAGE_BUGREPORT=
 
 ac_unique_file="move-if-change"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS TOPLEVEL_CONFIGURE_ARGUMENTS build build_cpu build_vendor build_os build_noncanonical host_noncanonical target_noncanonical host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN LN_S build_libsubdir build_subdir host_subdir target_subdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX GNATBIND ac_ct_GNATBIND GNATMAKE ac_ct_GNATMAKE do_compare gmplibs gmpinc stage1_languages SYSROOT_CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET RPATH_ENVVAR GCC_SHLIB_SUBDIR tooldir build_tooldir CONFIGURE_GDB_TK GDB_TK INSTALL_GDB_TK build_configargs build_configdirs host_configargs configdirs target_configargs AR_FOR_BUILD AS_FOR_BUILD CC_FOR_BUILD CFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD CXX_FOR_BUILD DLLTOOL_FOR_BUILD GCJ_FOR_BUILD GFORTRAN_FOR_BUILD LDFLAGS_FOR_BUILD LD_FOR_BUILD NM_FOR_BUILD RANLIB_FOR_BUILD WINDMC_FOR_BUILD WINDRES_FOR_BUILD config_shell YACC BISON M4 LEX FLEX MAKEINFO EXPECT RUNTEST AR AS DLLTOOL LD LIPO NM RANLIB STRIP WINDRES WINDMC OBJCOPY OBJDUMP CC_FOR_TARGET CXX_FOR_TARGET GCC_FOR_TARGET GCJ_FOR_TARGET GFORTRAN_FOR_TARGET AR_FOR_TARGET AS_FOR_TARGET DLLTOOL_FOR_TARGET LD_FOR_TARGET LIPO_FOR_TARGET NM_FOR_TARGET OBJDUMP_FOR_TARGET RANLIB_FOR_TARGET STRIP_FOR_TARGET WINDRES_FOR_TARGET WINDMC_FOR_TARGET RAW_CXX_FOR_TARGET FLAGS_FOR_TARGET COMPILER_AS_FOR_TARGET COMPILER_LD_FOR_TARGET COMPILER_NM_FOR_TARGET MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT stage1_cflags stage1_checking stage2_werror_flag datarootdir docdir pdfdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS TOPLEVEL_CONFIGURE_ARGUMENTS build build_cpu build_vendor build_os build_noncanonical host_noncanonical target_noncanonical host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN LN_S build_libsubdir build_subdir host_subdir target_subdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX GNATBIND ac_ct_GNATBIND GNATMAKE ac_ct_GNATMAKE do_compare gmplibs gmpinc stage1_languages SYSROOT_CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET CPPFLAGS_FOR_TARGET LDFLAGS_FOR_TARGET RPATH_ENVVAR GCC_SHLIB_SUBDIR tooldir build_tooldir CONFIGURE_GDB_TK GDB_TK INSTALL_GDB_TK build_configargs build_configdirs host_configargs configdirs target_configargs AR_FOR_BUILD AS_FOR_BUILD CC_FOR_BUILD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD CXX_FOR_BUILD DLLTOOL_FOR_BUILD GCJ_FOR_BUILD GFORTRAN_FOR_BUILD LDFLAGS_FOR_BUILD LD_FOR_BUILD NM_FOR_BUILD RANLIB_FOR_BUILD WINDMC_FOR_BUILD WINDRES_FOR_BUILD config_shell YACC BISON M4 LEX FLEX MAKEINFO EXPECT RUNTEST AR AS DLLTOOL LD LIPO NM RANLIB STRIP WINDRES WINDMC OBJCOPY OBJDUMP CC_FOR_TARGET CXX_FOR_TARGET GCC_FOR_TARGET GCJ_FOR_TARGET GFORTRAN_FOR_TARGET AR_FOR_TARGET AS_FOR_TARGET DLLTOOL_FOR_TARGET LD_FOR_TARGET LIPO_FOR_TARGET NM_FOR_TARGET OBJDUMP_FOR_TARGET RANLIB_FOR_TARGET STRIP_FOR_TARGET WINDRES_FOR_TARGET WINDMC_FOR_TARGET RAW_CXX_FOR_TARGET FLAGS_FOR_TARGET COMPILER_AS_FOR_TARGET COMPILER_LD_FOR_TARGET COMPILER_NM_FOR_TARGET MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT stage1_cflags stage1_checking stage2_werror_flag datarootdir docdir pdfdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files='serialization_dependencies host_makefile_frag target_makefile_frag alphaieee_frag ospace_frag'
 ac_pwd=`pwd`
 
@@ -2643,7 +2643,6 @@
   sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
     ;;
   spu-*-*)
-    skipdirs="target-libssp"
     ;;
   v810-*-*)
     noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}"
@@ -5287,6 +5286,12 @@
 fi
 
 
+# Other target tools.
+CPPFLAGS_FOR_TARGET=${CPPFLAGS_FOR_TARGET-${CPPFLAGS}}
+
+LDFLAGS_FOR_TARGET=${LDFLAGS_FOR_TARGET-${LDFLAGS}}
+
+
 # Handle --with-headers=XXX.  If the value is not "yes", the contents of
 # the named directory are copied to $(tooldir)/sys-include.
 if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
@@ -6034,6 +6039,7 @@
 # our build compiler if desired.
 if test x"${build}" = x"${host}" ; then
   CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
+  CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
   CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
 fi
@@ -6112,6 +6118,7 @@
 
 
 
+
 # Generate default definitions for YACC, M4, LEX and other programs that run
 # on the build machine.  These are used if the Makefile can't locate these
 # programs in objdir.
@@ -12980,6 +12987,8 @@
 s,@DEBUG_PREFIX_CFLAGS_FOR_TARGET@,$DEBUG_PREFIX_CFLAGS_FOR_TARGET,;t t
 s,@CFLAGS_FOR_TARGET@,$CFLAGS_FOR_TARGET,;t t
 s,@CXXFLAGS_FOR_TARGET@,$CXXFLAGS_FOR_TARGET,;t t
+s,@CPPFLAGS_FOR_TARGET@,$CPPFLAGS_FOR_TARGET,;t t
+s,@LDFLAGS_FOR_TARGET@,$LDFLAGS_FOR_TARGET,;t t
 s,@RPATH_ENVVAR@,$RPATH_ENVVAR,;t t
 s,@GCC_SHLIB_SUBDIR@,$GCC_SHLIB_SUBDIR,;t t
 s,@tooldir@,$tooldir,;t t
@@ -12996,6 +13005,7 @@
 s,@AS_FOR_BUILD@,$AS_FOR_BUILD,;t t
 s,@CC_FOR_BUILD@,$CC_FOR_BUILD,;t t
 s,@CFLAGS_FOR_BUILD@,$CFLAGS_FOR_BUILD,;t t
+s,@CPPFLAGS_FOR_BUILD@,$CPPFLAGS_FOR_BUILD,;t t
 s,@CXXFLAGS_FOR_BUILD@,$CXXFLAGS_FOR_BUILD,;t t
 s,@CXX_FOR_BUILD@,$CXX_FOR_BUILD,;t t
 s,@DLLTOOL_FOR_BUILD@,$DLLTOOL_FOR_BUILD,;t t
diff --git a/configure.ac b/configure.ac
index fb859c1..726a58f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -892,7 +892,6 @@
   sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
     ;;
   spu-*-*)
-    skipdirs="target-libssp"
     ;;
   v810-*-*)
     noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}"
@@ -1743,6 +1742,12 @@
 fi
 AC_SUBST(CXXFLAGS_FOR_TARGET)
 
+# Other target tools.
+CPPFLAGS_FOR_TARGET=${CPPFLAGS_FOR_TARGET-${CPPFLAGS}}
+AC_SUBST(CPPFLAGS_FOR_TARGET)
+LDFLAGS_FOR_TARGET=${LDFLAGS_FOR_TARGET-${LDFLAGS}}
+AC_SUBST(LDFLAGS_FOR_TARGET)
+
 # Handle --with-headers=XXX.  If the value is not "yes", the contents of
 # the named directory are copied to $(tooldir)/sys-include.
 if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
@@ -2481,6 +2486,7 @@
 # our build compiler if desired.
 if test x"${build}" = x"${host}" ; then
   CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
+  CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
   CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
 fi
@@ -2546,6 +2552,7 @@
 AC_SUBST(AS_FOR_BUILD)
 AC_SUBST(CC_FOR_BUILD)
 AC_SUBST(CFLAGS_FOR_BUILD)
+AC_SUBST(CPPFLAGS_FOR_BUILD)
 AC_SUBST(CXXFLAGS_FOR_BUILD)
 AC_SUBST(CXX_FOR_BUILD)
 AC_SUBST(DLLTOOL_FOR_BUILD)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index da24ac6..b58eadc 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,282 @@
+2008-10-31  Alan Modra  <amodra@bigpond.net.au>
+
+	* po/id.po: Update.
+
+2008-10-24  Maciej W. Rozycki  <macro@linux-mips.org>
+
+	* config/tc-mips.c (mips_cpu_info_table): Move the MIPS64r2
+	comment so that Broadcom SB-1 cores are in the MIPS64 section.
+
+2008-10-21  Alan Modra  <amodra@bigpond.net.au>
+
+	* config/tc-bfin.c (gencode, allocate): Remove unnecessary cast.
+	* config/tc-ns32k.c (bit_fix_new): Likewise.
+	* config/tc-m68k.c (md_begin): Likewise.
+	* hash.c (hash_insert, hash_jam): Likewise.
+	* symbols.c (symbol_create, local_symbol_make): Likewise.
+	* frags.c (frag_alloc): Likewise.
+
+2008-10-20  Jay Krell  <jay.krell@cornell.edu>
+
+	* config/bfin-parse.y: Use C style comments.
+	* config/tc-bfin.c: Likewise.
+	* config/tc-m68k.c: Likewise.
+	* config/tc-mips.c: Likewise.
+
+2008-10-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* config/tc-i386.c (processor_type): Moved to tc-i386.h.
+	(cpu_arch_tune): Make it global.
+	(cpu_arch_isa): Likewise.
+	(cpu_arch_isa_flags): Likewise.
+	(i386_align_code): Check fragP->tc_frag_data.isa,
+	fragP->tc_frag_data.isa_flags and cpu_arch_tune instead of
+	cpu_arch_isa, cpu_arch_isa_flags and cpu_arch_tune,
+	respectively.
+
+	* config/tc-i386.h (processor_type): Moved from tc-i386.c.
+	(cpu_arch_tune): New.
+	(cpu_arch_isa): Likewise.
+	(cpu_arch_isa_flags): Likewise.
+	(i386_tc_frag_data): Likewise.
+	(TC_FRAG_TYPE): Likewise.
+	(TC_FRAG_INIT): Likewise.
+
+2008-10-09  Bob Wilson  <bob.wilson@acm.org>
+
+	* doc/as.texinfo (Pseudo Ops): Swap order of Comm and CFI menu entries.
+	(Altmacro, Comm, Loc, Loc_mark_labels, List, MRI, PopSection, Sleb128):
+	Moved into alphabetical order.
+
+2008-10-09  Bob Wilson  <bob.wilson@acm.org>
+
+	* doc/as.texinfo (Dot): Expand no-space-dir conditional to include
+	a complete sentence.
+	(Pseudo Ops): Put conditionals around Skip and Space menu entries.
+	(Line): Remove conditional declaration of Ln node and section here.
+	Put aout-bout description inside the no-line-dir conditional.
+	(Skip, Space): Use a separate conditional for each node.
+
+2008-10-09  Bob Wilson  <bob.wilson@acm.org>
+
+	* doc/as.texinfo (Pseudo Ops): Remove no-file-dir conditional around
+	menu entry for File; remove version-specific .file operands from menu
+	description.  Replace "LNS directives" menu entry with new entries
+	for "Loc" and "Loc_mark_labels".
+	(LNS directives): Split into separate nodes for each directive.
+	(Loc): New node for .loc directive.  Mention that this directive
+	is for DWARF2 and add a missing article.
+	(Loc_mark_labels): Likewise for .loc_mark_labels.
+	(File): Change this node to describe both the default version and
+	the DWARF2 version of .file.  Move the no-file-dir conditional to
+	include only the default version.
+
+2008-10-09  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* dw2gencfi.c (cfi_finish): Deal with md_fix_up_eh_frame.
+	* config/tc-i386.h (md_fix_up_eh_frame): Define on Solaris.
+	(i386_solaris_fix_up_eh_frame): Declare.
+	* config/tc-i386.c (i386_solaris_fix_up_eh_frame): New function.
+
+2008-10-09  Nick Clifton  <nickc@redhat.com>
+
+	PR 6944
+	* doc/as.texinfo (Dollar Local Labels): Correct description of
+	dollar local labels to show that the colon suffix is still
+	needed.
+
+2008-10-08  Nick Clifton  <nickc@redhat.com>
+
+	* configure.in (ALL_LINGUAS): Add "id".
+	* configure: Regenerate.
+	* po/id.po: New Indonesian translation.
+
+2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* read.c (pseudo_set): Don't allow global register symbol only
+	if TC_GLOBAL_REGISTER_SYMBOL_OK is undefined.
+	* symbols.c (S_SET_EXTERNAL): Likewise.
+
+	* config/tc-mmix.h (TC_GLOBAL_REGISTER_SYMBOL_OK): Defined.
+
+	* doc/internals.texi: Document TC_GLOBAL_REGISTER_SYMBOL_OK.
+
+2008-10-06  Bob Wilson  <bob.wilson@acm.org>
+
+	* doc/as.texinfo (Local): New description of ELF .local directive.
+
+2008-10-06  Nick Clifton  <nickc@redhat.com>
+
+	PR 6926
+	* read.c (get_line_sb): Renamed to get_non_macro_line_sb.
+	(_find_end_of_line): Add extra parameter indicating if the line is
+	inside a macro.  If it is then do not allow the @ character to be
+	treated as a line separator character.
+	(read_a_source): Update use of _find_end_of_line.
+	(find_end_of_line): Likewise.
+	(s_irp): Update use of get_line_sb.
+	(s_macro): Likewise.
+	(do_repeat): Likewise.
+	(get_line_sb): New function.  Like the old version of get_line_sb
+	except that it takes an extra parameter indicating whether the
+	line is inside a macro.
+	(get_macro_line_sb): New function.
+
+2008-10-04  Hans-Peter Nilsson  <hp@axis.com>
+
+	* config/tc-cris.c: Update all comments regarding explicit relocations
+	to, besides PIC, also imply TLS or to say "relocation specifier" or
+	similar.
+	(RELOC_SUFFIX_CHAR): Rename from PIC_SUFFIX_CHAR.  Change all callers.
+	(cris_get_reloc_suffix): Rename from cris_get_pic_suffix.  Change all
+	callers.  Also handle TLS relocs.
+	(cris_get_specified_reloc_size): Rename from cris_get_pic_reloc_size.
+	Change all callers.  Also handle TLS relocs.
+	(tls): New constant.
+	(cris_process_instruction): Check for non-PIC TLS relocations and
+	adjust message when emitting error message about relocation not
+	fitting.
+	(get_autoinc_prefix_or_indir_op): Also check for relocation suffix
+	when tls is true.
+	(get_3op_or_dip_prefix_op): Ditto.
+	(cris_number_to_imm, tc_gen_reloc): Handle TLS relocs like PIC relocs.
+
+2008-10-03  Kazu Hirata  <kazu@codesourcery.com>
+
+	* listing.c (buffer_line): Open the source file with FOPEN_RB.
+	Manually process line ends.
+
+2008-09-30  Wesley W. Terpstra  <wesley@terpstra.ca>
+	    Nick Clifton  <nickc@redhat.com>
+
+	* config/tc-tic4x.c (tic4x_globl): Call S_SET_EXTERNAL as well as
+	S_SET_STORAGE_CLASS.
+
+2008-09-30  Wesley W. Terpstra  <wesley@terpstra.ca>
+	    Nick Clifton  <nickc@redhat.com>
+
+	* coffgen.c (coff_write_symbols): Check to see if a symbol's flags
+	do not match it class and if necessary update the class.
+	(null_error_handler): New function.  Suppresses the generation of
+	bfd error messages.
+	* coff64-rs6000.c (bfd_xcoff_backend_data): Update comment.
+
+2008-09-30  Alan Modra  <amodra@bigpond.net.au>
+
+	* Makefile.am: Run "make dep-am".
+	* Makefile.in: Regenerate.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* dw2gencfi.c (output_cfi_insn): Fix typo in invocation of
+	tc_cfi_emit_pcrel_expr macro.
+
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+	    Steve Ellcey  <sje@cup.hp.com>
+
+	* configure: Regenerate for new libtool.
+	* aclocal.m4: Ditto.
+	* Makefile.in: Ditto.
+	* doc/Makefile.in: Ditto.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	PR 6878
+	* app.c (do_scrub_chars): Only issue warnings about tick
+	characters detected in symbol strings if hex ticks are supported.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* dw2gencfi.c (output_cfi_insn): Fix typo in invocation of
+	tc_cfi_emit_pcrel_expr macro.
+
+2008-09-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+	* NEWS: Mention .cfi_val_encoded_addr.
+
+2008-09-26  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* Makefile.am (TARG_ENV_HFILES): Add config/te-solaris.h.
+	* Makefile.in (TARG_ENV_HFILES): Likewise.
+	* configure.tgt (Solaris targets): Set em=solaris.
+	* config/te-solaris.h: New file.
+
+2008-09-26  Jie Zhang  <jie.zhang@analog.com>
+
+	* config/bfin-parse.y (asm_1): Fix reduce/reduce conflicts.
+
+2008-09-24  Richard Henderson  <rth@redhat.com>
+
+	* dw2gencfi.c (DWARF2_ADDR_SIZE): Provide default.
+	(struct cfi_insn_data): Add ea member.
+	(CFI_val_encoded_addr, dot_cfi_val_encoded_addr): New.
+	(output_cfi_insn): Handle CFI_val_encoded_addr.
+	(select_cie_for_fde): Don't match CFI_val_encoded_addr.
+	* doc/as.texinfo (.cfi_val_encoded_addr): Document.
+
+2008-09-25  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6913
+	* listing.c (print_options): Don't call fprintf without format string.
+
+2008-09-19  Alan Modra  <amodra@bigpond.net.au>
+
+	* write.c (TC_FORCE_RELOCATION_SUB_LOCAL): Heed md_register_arithmetic.
+	(TC_VALIDATE_FIX_SUB): Likewise.
+	* config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
+	* config/tc-hppa.h (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
+	* config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Likewise.
+	* config/tc-sh.h (TC_VALIDATE_FIX_SUB): Likewise.
+	(TC_FORCE_RELOCATION_SUB_LOCAL): Likewise.
+	* config/tc-sh64.h (TC_VALIDATE_FIX_SUB): Likewise.
+	* config/tc-xtensa.h (TC_VALIDATE_FIX_SUB): Likewise.
+	* doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS,
+	TC_FORCE_RELOCATION_SUB_LOCAL, TC_VALIDATE_FIX_SUB): Show new param.
+
+	* write.c (md_register_arithmetic): Define.
+	(fixup_segment): Adjust TC_FORCE_RELOCATION_SUB_ABS invocation.
+	Modify error message when registers involved.
+	(TC_FORCE_RELOCATION_SUB_ABS): Heed md_register_arithmetic.
+	* config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Likewise.
+
+2008-09-15  Alan Modra  <amodra@bigpond.net.au>
+
+	* write.c (install_reloc): Correct EMIT_SECTION_SYMBOLS test.
+
+2008-09-15  Alan Modra  <amodra@bigpond.net.au>
+
+	* config/tc-frv.c (md_apply_fix): Use abs_section_sym for
+	relocs with no symbol.
+	* config/tc-mmix.c (md_assemble): Mark fake symbol on
+	BFD_RELOC_MMIX_BASE_PLUS_OFFSET as OK for use by relocs.
+	(mmix_md_end): Likewise mark mmix reg contents section symbol.
+
+2008-09-14  Chris Smith <chris@zxdesign.info>
+
+	* config/tc-z80.c: Opcode generation of ld a,(bc) and ld a,(de) was
+	broken, as the opcode of ld a,(de) was being emitted for both.
+
+2008-09-12  Sterling Augustine  <sterling@tensilica.com>
+
+	* config/tc-xtensa.c (init_op_placement_info_table): Allow number of
+	operands equal to MAX_INSN_ARGS.
+
+2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* configure.in: Call AC_SYS_LARGEFILE.
+	* config.in: Regenerate.
+	* configure: Regenerate.
+
+2008-09-09  Peter Bergner  <bergner@vnet.ibm.com>
+
+	* config/tc-ppc.c (ppc_setup_opcodes): Simplify POWER4/NOPOWER4 test.
+	Remove POWER5 and POWER6 tests.
+
+2008-09-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+	* config/tc-hppa.c (hppa_regname_to_dw2regnum): Add register name to
+	number support for 32-bit targets.
+
 2008-09-08  Tristan Gingold  <gingold@adacore.com>
 
 	* NEWS: Add a marker for the 2.19 features.
diff --git a/gas/Makefile.am b/gas/Makefile.am
index a8b61cf..38fe255 100644
--- a/gas/Makefile.am
+++ b/gas/Makefile.am
@@ -406,6 +406,7 @@
 	config/te-pe.h \
 	config/te-psos.h \
 	config/te-riscix.h \
+	config/te-solaris.h \
 	config/te-sparcaout.h \
 	config/te-sun3.h \
 	config/te-svr4.h \
@@ -1032,9 +1033,9 @@
 AMKDEP = #DO NOT PUT ANYTHING BETWEEN THIS LINE AND THE MATCHING WARNING BELOW.
 DEPTC_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \
   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h \
-  $(INCDIR)/opcode/alpha.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/safe-ctype.h $(srcdir)/config/atof-vax.c
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/alpha.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/safe-ctype.h \
+  $(srcdir)/config/atof-vax.c
 DEPTC_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h subsegs.h \
@@ -1051,20 +1052,20 @@
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h dwarf2dbg.h \
   struc-symbol.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(INCDIR)/opcode/arc.h $(srcdir)/../opcodes/arc-ext.h \
-  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   dwarf2dbg.h
 DEPTC_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   dwarf2dbg.h
 DEPTC_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h dw2gencfi.h \
   $(INCDIR)/elf/dwarf2.h dwarf2dbg.h
 DEPTC_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
@@ -1076,15 +1077,14 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-bfin.h dwarf2dbg.h \
   struc-symbol.h $(srcdir)/config/bfin-defs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(BFDDIR)/libbfd.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/elf/common.h $(INCDIR)/elf/bfin.h \
-  $(INCDIR)/elf/reloc-macros.h $(srcdir)/config/bfin-aux.h \
+  $(INCDIR)/safe-ctype.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h \
+  $(INCDIR)/elf/bfin.h $(INCDIR)/elf/reloc-macros.h $(srcdir)/config/bfin-aux.h \
   $(srcdir)/config/bfin-defs.h $(INCDIR)/opcode/bfin.h
 DEPTC_cr16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cr16.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/opcode/cr16.h \
-  $(INCDIR)/elf/cr16.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/cr16.h $(INCDIR)/elf/cr16.h \
+  $(INCDIR)/elf/reloc-macros.h
 DEPTC_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/cris.h \
@@ -1093,12 +1093,12 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/cris.h dwarf2dbg.h
+  $(INCDIR)/opcode/cris.h
 DEPTC_crx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-crx.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/opcode/crx.h \
-  $(INCDIR)/elf/crx.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/crx.h $(INCDIR)/elf/crx.h \
+  $(INCDIR)/elf/reloc-macros.h
 DEPTC_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h $(INCDIR)/safe-ctype.h \
@@ -1111,7 +1111,7 @@
 DEPTC_dlx_elf = $(INCDIR)/safe-ctype.h $(srcdir)/config/obj-elf.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-dlx.h \
-  dwarf2dbg.h $(srcdir)/config/tc-dlx.h $(INCDIR)/opcode/dlx.h
+  dwarf2dbg.h $(INCDIR)/opcode/dlx.h
 DEPTC_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h dwarf2dbg.h \
@@ -1125,8 +1125,8 @@
   $(INCDIR)/obstack.h $(srcdir)/../opcodes/frv-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/frv-opc.h \
-  cgen.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/frv.h $(INCDIR)/elf/reloc-macros.h
+  cgen.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/elf/frv.h \
+  $(INCDIR)/elf/reloc-macros.h
 DEPTC_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
@@ -1134,7 +1134,7 @@
 DEPTC_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h dwarf2dbg.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/h8300.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h \
   $(INCDIR)/safe-ctype.h $(INCDIR)/elf/h8.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1166,8 +1166,8 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h $(srcdir)/../opcodes/i386-opc.h \
   $(INCDIR)/opcode/i386.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h dw2gencfi.h \
-  $(INCDIR)/elf/dwarf2.h $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
+  subsegs.h $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
+  $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
   $(srcdir)/../opcodes/i386-init.h
 DEPTC_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1186,16 +1186,15 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/ia64.h \
-  $(INCDIR)/elf/ia64.h
+  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h
 DEPTC_ip2k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ip2k.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/ip2k-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/ip2k-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/ip2k.h \
-  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
+  cgen.h $(INCDIR)/elf/ip2k.h $(INCDIR)/elf/reloc-macros.h \
+  $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
 DEPTC_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32c.h dwarf2dbg.h \
@@ -1203,9 +1202,9 @@
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/m32c-opc.h \
   $(srcdir)/../opcodes/cgen-types.h ../bfd/bfd_stdint.h \
-  $(srcdir)/../opcodes/cgen-ops.h cgen.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/safe-ctype.h
+  $(srcdir)/../opcodes/cgen-ops.h cgen.h $(INCDIR)/elf/m32c.h \
+  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h \
+  $(INCDIR)/safe-ctype.h
 DEPTC_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h dwarf2dbg.h \
@@ -1218,31 +1217,27 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/m68hc11.h dwarf2dbg.h $(INCDIR)/elf/m68hc11.h \
+  $(INCDIR)/opcode/m68hc11.h $(INCDIR)/elf/m68hc11.h \
   $(INCDIR)/elf/reloc-macros.h
 DEPTC_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
 DEPTC_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
 DEPTC_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h $(INCDIR)/elf/m68k.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h \
+  $(INCDIR)/elf/m68k.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_maxq_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-maxq.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/maxq.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(srcdir)/config/tc-maxq.h \
-  $(INCDIR)/opcode/maxq.h
+  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/maxq.h
 DEPTC_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
@@ -1255,10 +1250,10 @@
 DEPTC_mep_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mep.h dwarf2dbg.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mep-desc.h \
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mep-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/mep-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  cgen.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/xregex.h \
   $(INCDIR)/xregex2.h
 DEPTC_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
@@ -1275,21 +1270,20 @@
   $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h dw2gencfi.h \
   $(INCDIR)/elf/dwarf2.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h \
-  ecoff.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h \
   $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/mips.h \
   itbl-ops.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(srcdir)/config/obj-elf.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h \
+  $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
 DEPTC_mmix_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mmix.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/elf/mmix.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/opcode/mmix.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/obstack.h
+  $(INCDIR)/safe-ctype.h
 DEPTC_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h dwarf2dbg.h \
@@ -1299,19 +1293,19 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/mn10300.h dwarf2dbg.h
+  $(INCDIR)/opcode/mn10300.h
 DEPTC_msp430_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-msp430.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/msp430.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h
+  $(INCDIR)/safe-ctype.h
 DEPTC_mt_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mt.h dwarf2dbg.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mt-desc.h \
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mt-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/mt-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/mt.h $(INCDIR)/elf/reloc-macros.h \
+  cgen.h $(INCDIR)/elf/mt.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
 DEPTC_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ns32k.h \
@@ -1344,29 +1338,27 @@
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/pj.h
 DEPTC_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h subsegs.h \
-  $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/opcode/ppc.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
+  subsegs.h $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h
 DEPTC_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/ppc.h \
-  $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/elf/ppc.h \
+  $(INCDIR)/elf/reloc-macros.h
 DEPTC_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-s390.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  struc-symbol.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/opcode/s390.h $(INCDIR)/elf/s390.h $(INCDIR)/elf/reloc-macros.h
+  struc-symbol.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/s390.h \
+  $(INCDIR)/elf/s390.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_score_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-score.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \
   $(INCDIR)/opcode/score-inst.h $(INCDIR)/opcode/score-datadep.h \
-  struc-symbol.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
-  dwarf2dbg.h
+  struc-symbol.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
@@ -1384,8 +1376,8 @@
   $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h \
   $(INCDIR)/safe-ctype.h $(srcdir)/../opcodes/sh64-opc.h \
   $(srcdir)/config/tc-sh.c subsegs.h $(INCDIR)/obstack.h \
-  $(srcdir)/../opcodes/sh-opc.h $(INCDIR)/safe-ctype.h \
-  struc-symbol.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h
+  $(srcdir)/../opcodes/sh-opc.h struc-symbol.h dwarf2dbg.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h
 DEPTC_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/sparc.h \
@@ -1400,13 +1392,12 @@
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(INCDIR)/opcode/sparc.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/elf/sparc.h $(INCDIR)/elf/reloc-macros.h \
-  dwarf2dbg.h
+  $(INCDIR)/elf/sparc.h $(INCDIR)/elf/reloc-macros.h
 DEPTC_spu_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-spu.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/spu-insns.h
+  subsegs.h $(INCDIR)/obstack.h
 DEPTC_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
   $(INCDIR)/opcode/tic30.h
@@ -1418,36 +1409,35 @@
   $(srcdir)/config/tc-tic4x.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/tic4x.h $(INCDIR)/coff/ti.h $(BFDDIR)/libcoff.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic4x.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/obstack.h
+  $(INCDIR)/obstack.h
 DEPTC_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
   sb.h macro.h subsegs.h $(INCDIR)/obstack.h struc-symbol.h \
-  $(INCDIR)/opcode/tic54x.h $(srcdir)/config/obj-coff.h
+  $(INCDIR)/opcode/tic54x.h
 DEPTC_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h $(INCDIR)/elf/v850.h \
   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h \
-  dwarf2dbg.h
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h
 DEPTC_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(srcdir)/config/vax-inst.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \
+  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/safe-ctype.h \
   $(INCDIR)/opcode/vax.h
 DEPTC_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h dwarf2dbg.h \
   $(srcdir)/config/vax-inst.h $(INCDIR)/obstack.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h $(INCDIR)/elf/vax.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/opcode/vax.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/elf/vax.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/opcode/vax.h
 DEPTC_xc16x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xc16x.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(srcdir)/../opcodes/xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
   $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(srcdir)/../opcodes/xc16x-opc.h cgen.h dwarf2dbg.h \
-  $(INCDIR)/elf/xc16x.h $(INCDIR)/elf/reloc-macros.h
+  $(srcdir)/../opcodes/xc16x-opc.h cgen.h $(INCDIR)/elf/xc16x.h \
+  $(INCDIR)/elf/reloc-macros.h
 DEPTC_xstormy16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xstormy16.h \
@@ -1459,9 +1449,8 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xtensa.h $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/xtensa-config.h sb.h $(INCDIR)/safe-ctype.h \
-  $(srcdir)/config/tc-xtensa.h subsegs.h $(INCDIR)/obstack.h \
-  $(srcdir)/config/xtensa-relax.h dwarf2dbg.h $(srcdir)/config/xtensa-istack.h \
-  struc-symbol.h $(INCDIR)/xtensa-config.h
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/config/xtensa-relax.h \
+  dwarf2dbg.h $(srcdir)/config/xtensa-istack.h struc-symbol.h
 DEPTC_z80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z80.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z80.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
@@ -1485,8 +1474,8 @@
 DEPOBJ_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
   $(INCDIR)/elf/alpha.h $(INCDIR)/elf/reloc-macros.h \
   $(INCDIR)/aout/aout64.h
 DEPOBJ_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h
@@ -1494,34 +1483,34 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
 DEPOBJ_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_bfin_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-bfin.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_cr16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cr16.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
@@ -1529,59 +1518,59 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_crx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-crx.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_dlx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-dlx.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_frv_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-frv.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h \
   $(BFDDIR)/elf-bfd.h $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/i370.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/elf/i370.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h \
   $(srcdir)/../opcodes/i386-opc.h $(INCDIR)/opcode/i386.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1590,88 +1579,87 @@
   $(srcdir)/../opcodes/i386-opc.h $(INCDIR)/opcode/i386.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/x86_64.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h $(srcdir)/../opcodes/i386-opc.h \
   $(INCDIR)/opcode/i386.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
-  $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/elf/x86-64.h \
+  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
 DEPOBJ_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
 DEPOBJ_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_ip2k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ip2k.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32c.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
 DEPOBJ_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_maxq_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-maxq.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/maxq.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_mep_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mep.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/mep.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \
   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
@@ -1679,34 +1667,34 @@
 DEPOBJ_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
   $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
 DEPOBJ_mmix_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mmix.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_msp430_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-msp430.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_mt_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mt.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
@@ -1714,15 +1702,15 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-openrisc.h \
   dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_or32_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-or32.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/or32.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
 DEPOBJ_or32_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-or32.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_pdp11_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-pdp11.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
@@ -1730,85 +1718,84 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pdp11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
+  subsegs.h
 DEPOBJ_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/ppc.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
+  struc-symbol.h $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-s390.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_score_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-score.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 DEPOBJ_sh64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh64.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
 DEPOBJ_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
 DEPOBJ_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_spu_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-spu.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
 DEPOBJ_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_tic4x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic4x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic4x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h $(INCDIR)/elf/v850.h \
   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/obstack.h
@@ -1816,31 +1803,30 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_xc16x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xc16x.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_xstormy16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xstormy16.h \
   dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 DEPOBJ_xtensa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xtensa.h $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/xtensa-config.h $(INCDIR)/safe-ctype.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
 DEPOBJ_z80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z80.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z80.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 DEPOBJ_hppa_som = $(srcdir)/config/obj-som.h subsegs.h \
   $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(BFDDIR)/som.h \
   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def
@@ -2067,12 +2053,12 @@
   $(srcdir)/config/obj-coff.h $(INCDIR)/coff/internal.h \
   $(BFDDIR)/libcoff.h
 DEP_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 DEP_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(srcdir)/config/obj-coff.h $(INCDIR)/coff/internal.h \
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(srcdir)/config/obj-coff.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h
 DEP_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
diff --git a/gas/Makefile.in b/gas/Makefile.in
index 6b68a98..5735a0a 100644
--- a/gas/Makefile.in
+++ b/gas/Makefile.in
@@ -64,7 +64,8 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -144,6 +145,7 @@
 DATADIRNAME = @DATADIRNAME@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -174,6 +176,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -184,9 +187,13 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
 OPCODES_LIB = @OPCODES_LIB@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -207,7 +214,13 @@
 YACC = `if [ -f ../bison/bison ] ; then echo ../bison/bison -y -L../bison/bison ; else echo @YACC@ ; fi`
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@@ -653,6 +666,7 @@
 	config/te-pe.h \
 	config/te-psos.h \
 	config/te-riscix.h \
+	config/te-solaris.h \
 	config/te-sparcaout.h \
 	config/te-sun3.h \
 	config/te-svr4.h \
@@ -792,9 +806,9 @@
 AMKDEP = #DO NOT PUT ANYTHING BETWEEN THIS LINE AND THE MATCHING WARNING BELOW.
 DEPTC_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \
   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h \
-  $(INCDIR)/opcode/alpha.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/safe-ctype.h $(srcdir)/config/atof-vax.c
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/alpha.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/safe-ctype.h \
+  $(srcdir)/config/atof-vax.c
 
 DEPTC_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -814,23 +828,23 @@
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h dwarf2dbg.h \
   struc-symbol.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(INCDIR)/opcode/arc.h $(srcdir)/../opcodes/arc-ext.h \
-  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   dwarf2dbg.h
 
 DEPTC_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   dwarf2dbg.h
 
 DEPTC_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arm.h \
   $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h dw2gencfi.h \
   $(INCDIR)/elf/dwarf2.h dwarf2dbg.h
 
@@ -844,16 +858,15 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-bfin.h dwarf2dbg.h \
   struc-symbol.h $(srcdir)/config/bfin-defs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(BFDDIR)/libbfd.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/elf/common.h $(INCDIR)/elf/bfin.h \
-  $(INCDIR)/elf/reloc-macros.h $(srcdir)/config/bfin-aux.h \
+  $(INCDIR)/safe-ctype.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h \
+  $(INCDIR)/elf/bfin.h $(INCDIR)/elf/reloc-macros.h $(srcdir)/config/bfin-aux.h \
   $(srcdir)/config/bfin-defs.h $(INCDIR)/opcode/bfin.h
 
 DEPTC_cr16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cr16.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/opcode/cr16.h \
-  $(INCDIR)/elf/cr16.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/cr16.h $(INCDIR)/elf/cr16.h \
+  $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
@@ -864,13 +877,13 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/cris.h dwarf2dbg.h
+  $(INCDIR)/opcode/cris.h
 
 DEPTC_crx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-crx.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/opcode/crx.h \
-  $(INCDIR)/elf/crx.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/crx.h $(INCDIR)/elf/crx.h \
+  $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -886,7 +899,7 @@
 DEPTC_dlx_elf = $(INCDIR)/safe-ctype.h $(srcdir)/config/obj-elf.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-dlx.h \
-  dwarf2dbg.h $(srcdir)/config/tc-dlx.h $(INCDIR)/opcode/dlx.h
+  dwarf2dbg.h $(INCDIR)/opcode/dlx.h
 
 DEPTC_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -902,8 +915,8 @@
   $(INCDIR)/obstack.h $(srcdir)/../opcodes/frv-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/frv-opc.h \
-  cgen.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/frv.h $(INCDIR)/elf/reloc-macros.h
+  cgen.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/elf/frv.h \
+  $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(INCDIR)/coff/external.h \
@@ -913,7 +926,7 @@
 DEPTC_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h dwarf2dbg.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/h8300.h \
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h \
   $(INCDIR)/safe-ctype.h $(INCDIR)/elf/h8.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
@@ -950,8 +963,8 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h $(srcdir)/../opcodes/i386-opc.h \
   $(INCDIR)/opcode/i386.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h dw2gencfi.h \
-  $(INCDIR)/elf/dwarf2.h $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
+  subsegs.h $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
+  $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
   $(srcdir)/../opcodes/i386-init.h
 
 DEPTC_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
@@ -974,8 +987,7 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/ia64.h \
-  $(INCDIR)/elf/ia64.h
+  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h
 
 DEPTC_ip2k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -983,8 +995,8 @@
   subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/ip2k-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/ip2k-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/ip2k.h \
-  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
+  cgen.h $(INCDIR)/elf/ip2k.h $(INCDIR)/elf/reloc-macros.h \
+  $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
 
 DEPTC_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -993,9 +1005,9 @@
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/m32c-opc.h \
   $(srcdir)/../opcodes/cgen-types.h ../bfd/bfd_stdint.h \
-  $(srcdir)/../opcodes/cgen-ops.h cgen.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/safe-ctype.h
+  $(srcdir)/../opcodes/cgen-ops.h cgen.h $(INCDIR)/elf/m32c.h \
+  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h \
+  $(INCDIR)/safe-ctype.h
 
 DEPTC_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1010,35 +1022,31 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/m68hc11.h dwarf2dbg.h $(INCDIR)/elf/m68hc11.h \
+  $(INCDIR)/opcode/m68hc11.h $(INCDIR)/elf/m68hc11.h \
   $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
 
 DEPTC_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
 
 DEPTC_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h $(INCDIR)/elf/m68k.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/obstack.h subsegs.h dwarf2dbg.h dw2gencfi.h \
+  $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h \
+  $(INCDIR)/elf/m68k.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_maxq_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-maxq.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/maxq.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(srcdir)/config/tc-maxq.h \
-  $(INCDIR)/opcode/maxq.h
+  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/maxq.h
 
 DEPTC_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(INCDIR)/coff/external.h \
@@ -1054,10 +1062,10 @@
 DEPTC_mep_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mep.h dwarf2dbg.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mep-desc.h \
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mep-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/mep-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  cgen.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h $(INCDIR)/xregex.h \
   $(INCDIR)/xregex2.h
 
@@ -1076,23 +1084,22 @@
   $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h dw2gencfi.h \
   $(INCDIR)/elf/dwarf2.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h \
-  ecoff.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h \
   $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/mips.h \
   itbl-ops.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(srcdir)/config/obj-elf.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h \
+  $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
 
 DEPTC_mmix_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mmix.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/elf/mmix.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/opcode/mmix.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h $(INCDIR)/obstack.h
+  $(INCDIR)/safe-ctype.h
 
 DEPTC_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1104,21 +1111,21 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/mn10300.h dwarf2dbg.h
+  $(INCDIR)/opcode/mn10300.h
 
 DEPTC_msp430_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-msp430.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/msp430.h \
-  $(INCDIR)/safe-ctype.h dwarf2dbg.h
+  $(INCDIR)/safe-ctype.h
 
 DEPTC_mt_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mt.h dwarf2dbg.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mt-desc.h \
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mt-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
   $(INCDIR)/opcode/cgen-bitset.h $(srcdir)/../opcodes/mt-opc.h \
-  cgen.h $(INCDIR)/elf/common.h $(INCDIR)/elf/mt.h $(INCDIR)/elf/reloc-macros.h \
+  cgen.h $(INCDIR)/elf/mt.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/libbfd.h $(INCDIR)/hashtab.h
 
 DEPTC_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
@@ -1159,32 +1166,30 @@
   $(INCDIR)/safe-ctype.h $(INCDIR)/opcode/pj.h
 
 DEPTC_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h subsegs.h \
-  $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/opcode/ppc.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
+  subsegs.h $(INCDIR)/obstack.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h
 
 DEPTC_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/ppc.h \
-  $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/elf/ppc.h \
+  $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-s390.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  struc-symbol.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/opcode/s390.h $(INCDIR)/elf/s390.h $(INCDIR)/elf/reloc-macros.h
+  struc-symbol.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h $(INCDIR)/opcode/s390.h \
+  $(INCDIR)/elf/s390.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_score_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-score.h dwarf2dbg.h \
   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \
   $(INCDIR)/opcode/score-inst.h $(INCDIR)/opcode/score-datadep.h \
-  struc-symbol.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
-  dwarf2dbg.h
+  struc-symbol.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(INCDIR)/coff/external.h \
@@ -1205,8 +1210,8 @@
   $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h \
   $(INCDIR)/safe-ctype.h $(srcdir)/../opcodes/sh64-opc.h \
   $(srcdir)/config/tc-sh.c subsegs.h $(INCDIR)/obstack.h \
-  $(srcdir)/../opcodes/sh-opc.h $(INCDIR)/safe-ctype.h \
-  struc-symbol.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h
+  $(srcdir)/../opcodes/sh-opc.h struc-symbol.h dwarf2dbg.h \
+  dw2gencfi.h $(INCDIR)/elf/dwarf2.h
 
 DEPTC_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
@@ -1224,14 +1229,13 @@
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(INCDIR)/opcode/sparc.h dw2gencfi.h $(INCDIR)/elf/dwarf2.h \
-  $(INCDIR)/elf/sparc.h $(INCDIR)/elf/reloc-macros.h \
-  dwarf2dbg.h
+  $(INCDIR)/elf/sparc.h $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_spu_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-spu.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/spu-insns.h
+  subsegs.h $(INCDIR)/obstack.h
 
 DEPTC_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
@@ -1246,32 +1250,31 @@
   $(srcdir)/config/tc-tic4x.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/tic4x.h $(INCDIR)/coff/ti.h $(BFDDIR)/libcoff.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic4x.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/obstack.h
+  $(INCDIR)/obstack.h
 
 DEPTC_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/safe-ctype.h \
   sb.h macro.h subsegs.h $(INCDIR)/obstack.h struc-symbol.h \
-  $(INCDIR)/opcode/tic54x.h $(srcdir)/config/obj-coff.h
+  $(INCDIR)/opcode/tic54x.h
 
 DEPTC_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h $(INCDIR)/elf/v850.h \
   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h \
-  dwarf2dbg.h
+  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h
 
 DEPTC_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(srcdir)/config/vax-inst.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \
+  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/safe-ctype.h \
   $(INCDIR)/opcode/vax.h
 
 DEPTC_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h dwarf2dbg.h \
   $(srcdir)/config/vax-inst.h $(INCDIR)/obstack.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h $(INCDIR)/elf/vax.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/opcode/vax.h
+  $(INCDIR)/safe-ctype.h $(INCDIR)/elf/vax.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/opcode/vax.h
 
 DEPTC_xc16x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1279,8 +1282,8 @@
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
   $(srcdir)/../opcodes/xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
   $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(srcdir)/../opcodes/xc16x-opc.h cgen.h dwarf2dbg.h \
-  $(INCDIR)/elf/xc16x.h $(INCDIR)/elf/reloc-macros.h
+  $(srcdir)/../opcodes/xc16x-opc.h cgen.h $(INCDIR)/elf/xc16x.h \
+  $(INCDIR)/elf/reloc-macros.h
 
 DEPTC_xstormy16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
@@ -1294,9 +1297,8 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xtensa.h $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/xtensa-config.h sb.h $(INCDIR)/safe-ctype.h \
-  $(srcdir)/config/tc-xtensa.h subsegs.h $(INCDIR)/obstack.h \
-  $(srcdir)/config/xtensa-relax.h dwarf2dbg.h $(srcdir)/config/xtensa-istack.h \
-  struc-symbol.h $(INCDIR)/xtensa-config.h
+  subsegs.h $(INCDIR)/obstack.h $(srcdir)/config/xtensa-relax.h \
+  dwarf2dbg.h $(srcdir)/config/xtensa-istack.h struc-symbol.h
 
 DEPTC_z80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z80.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z80.h $(INCDIR)/coff/external.h \
@@ -1327,8 +1329,8 @@
 DEPOBJ_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
   $(INCDIR)/elf/alpha.h $(INCDIR)/elf/reloc-macros.h \
   $(INCDIR)/aout/aout64.h
 
@@ -1337,7 +1339,7 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1346,31 +1348,31 @@
 DEPOBJ_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_bfin_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-bfin.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_cr16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cr16.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1380,69 +1382,69 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_crx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-crx.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_dlx_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-dlx.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_frv_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-frv.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h \
   $(BFDDIR)/elf-bfd.h $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/i370.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/elf/i370.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h \
   $(srcdir)/../opcodes/i386-opc.h $(INCDIR)/opcode/i386.h \
@@ -1453,62 +1455,61 @@
   $(srcdir)/../opcodes/i386-opc.h $(INCDIR)/opcode/i386.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/x86_64.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h $(srcdir)/../opcodes/i386-opc.h \
   $(INCDIR)/opcode/i386.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/elf/x86-64.h $(INCDIR)/elf/reloc-macros.h \
-  $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/elf/x86-64.h \
+  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
 
 DEPOBJ_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h $(INCDIR)/opcode/ia64.h \
   $(INCDIR)/elf/ia64.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_ip2k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ip2k.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32c.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1517,41 +1518,41 @@
 DEPOBJ_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_maxq_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-maxq.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/maxq.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mep_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mep.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/mep.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \
   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
@@ -1561,39 +1562,39 @@
 DEPOBJ_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
   $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mmix_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mmix.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_msp430_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-msp430.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_mt_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mt.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1603,17 +1604,17 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-openrisc.h \
   dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_or32_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-or32.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/or32.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
 
 DEPOBJ_or32_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-or32.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_pdp11_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-pdp11.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1623,54 +1624,55 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pdp11.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/obstack.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
+  subsegs.h
 
 DEPOBJ_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/elf/ppc.h \
-  $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
+  struc-symbol.h $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-s390.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_score_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-score.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h \
+  $(INCDIR)/aout/aout64.h
 
 DEPOBJ_sh64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh64.h $(srcdir)/config/tc-sh.h \
   $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1679,20 +1681,19 @@
 DEPOBJ_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_spu_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-spu.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1701,24 +1702,23 @@
 DEPOBJ_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_tic4x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic4x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic4x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h $(INCDIR)/elf/v850.h \
   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(INCDIR)/safe-ctype.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
@@ -1728,36 +1728,35 @@
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_xc16x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xc16x.h dwarf2dbg.h \
   $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_xstormy16_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xstormy16.h \
   dwarf2dbg.h $(INCDIR)/safe-ctype.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  struc-symbol.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_xtensa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-xtensa.h $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/xtensa-config.h $(INCDIR)/safe-ctype.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/obstack.h struc-symbol.h \
-  dwarf2dbg.h $(INCDIR)/aout/aout64.h
+  $(INCDIR)/obstack.h struc-symbol.h dwarf2dbg.h $(INCDIR)/aout/aout64.h
 
 DEPOBJ_z80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z80.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z80.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h \
   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(INCDIR)/coff/external.h \
   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/obstack.h
+  subsegs.h
 
 DEPOBJ_hppa_som = $(srcdir)/config/obj-som.h subsegs.h \
   $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(BFDDIR)/som.h \
@@ -2042,13 +2041,13 @@
   $(BFDDIR)/libcoff.h
 
 DEP_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+  $(INCDIR)/opcode/ppc.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h \
+  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
 DEP_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h dwarf2dbg.h \
-  $(srcdir)/config/obj-coff.h $(INCDIR)/coff/internal.h \
+  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h $(INCDIR)/opcode/ppc.h \
+  dwarf2dbg.h $(srcdir)/config/obj-coff.h $(INCDIR)/coff/internal.h \
   $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h
 
 DEP_s390_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
diff --git a/gas/NEWS b/gas/NEWS
index 3c804c3..16324d6 100644
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -2,6 +2,9 @@
 
 Changes in 2.19:
 
+* New pseudo op .cfi_val_encoded_addr, to record constant addresses in unwind
+  tables without runtime relocation.
+
 * New command line option, -h-tick-hex, for sh, m32c, and h8/300 targets, which
   adds compatibility with H'00 style hex constants.
 
diff --git a/gas/aclocal.m4 b/gas/aclocal.m4
index 2e8c99b..07a9f41 100644
--- a/gas/aclocal.m4
+++ b/gas/aclocal.m4
@@ -892,4 +892,5 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
 m4_include([acinclude.m4])
diff --git a/gas/app.c b/gas/app.c
index 6fa604f..b9832d1 100644
--- a/gas/app.c
+++ b/gas/app.c
@@ -1024,7 +1024,8 @@
 
 #ifndef IEEE_STYLE
 	case LEX_IS_ONECHAR_QUOTE:
-	  if (state == 9)
+#ifdef H_TICK_HEX
+	  if (state == 9 && enable_h_tick_hex)
 	    {
 	      char c;
 
@@ -1032,6 +1033,7 @@
 	      as_warn ("'%c found after symbol", c);
 	      UNGET (c);
 	    }
+#endif
 	  if (state == 10)
 	    {
 	      /* Preserve the whitespace in foo 'b'.  */
diff --git a/gas/config.in b/gas/config.in
index a7b6434..1a74437 100644
--- a/gas/config.in
+++ b/gas/config.in
@@ -247,11 +247,17 @@
    `char[]'. */
 #undef YYTEXT_POINTER
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
 #endif
 
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to 1 if on MINIX. */
 #undef _MINIX
 
diff --git a/gas/config/bfin-parse.y b/gas/config/bfin-parse.y
index 283b813..83cc688 100644
--- a/gas/config/bfin-parse.y
+++ b/gas/config/bfin-parse.y
@@ -1,5 +1,5 @@
 /* bfin-parse.y  ADI Blackfin parser
-   Copyright 2005, 2006, 2007
+   Copyright 2005, 2006, 2007, 2008
    Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
@@ -23,7 +23,7 @@
 #include "as.h"
 #include <obstack.h>
 
-#include "bfin-aux.h"  // opcode generating auxiliaries
+#include "bfin-aux.h"  /* Opcode generating auxiliaries.  */
 #include "libbfd.h"
 #include "elf/common.h"
 #include "elf/bfin.h"
@@ -1932,22 +1932,20 @@
 	  else
 	    return yyerror ("Bad shift value or register");
 	}
-	| HALF_REG ASSIGN HALF_REG LESS_LESS expr
-	{
-	  if (IS_UIMM ($5, 4))
-	    {
-	      notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
-	      $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, 2, HL2 ($1, $3));
-	    }
-	  else
-	    return yyerror ("Bad shift value");
-	}
 	| HALF_REG ASSIGN HALF_REG LESS_LESS expr smod 
 	{
 	  if (IS_UIMM ($5, 4))
 	    {
-	      notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
-	      $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, $6.s0, HL2 ($1, $3));
+	      if ($6.s0)
+		{
+		  notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4 (S)\n");
+		  $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, $6.s0, HL2 ($1, $3));
+		}
+	      else
+		{
+		  notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
+		  $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, 2, HL2 ($1, $3));
+		}
 	    }
 	  else
 	    return yyerror ("Bad shift value");
diff --git a/gas/config/tc-bfin.c b/gas/config/tc-bfin.c
index 8dccdbc..c3b8aef 100644
--- a/gas/config/tc-bfin.c
+++ b/gas/config/tc-bfin.c
@@ -960,7 +960,7 @@
 INSTR_T
 gencode (unsigned long x)
 {
-  INSTR_T cell = (INSTR_T) obstack_alloc (&mempool, sizeof (struct bfin_insn));
+  INSTR_T cell = obstack_alloc (&mempool, sizeof (struct bfin_insn));
   memset (cell, 0, sizeof (struct bfin_insn));
   cell->value = (x);
   return cell;
@@ -973,7 +973,7 @@
 static void *
 allocate (int n)
 {
-  return (void *) obstack_alloc (&mempool, n);
+  return obstack_alloc (&mempool, n);
 }
 
 Expr_Node *
@@ -1452,14 +1452,14 @@
     {
       int value, offset;
       switch (sz)
-	{				// load/store access size
-	case 0:			// 32 bit
+	{				/* load/store access size */
+	case 0:			/* 32 bit */
 	  value = EXPR_VALUE (poffset) >> 2;
 	  break;
-	case 1:			// 16 bit
+	case 1:			/* 16 bit */
 	  value = EXPR_VALUE (poffset) >> 1;
 	  break;
-	case 2:			// 8 bit
+	case 2:			/* 8 bit */
 	  value = EXPR_VALUE (poffset);
 	  break;
 	default:
diff --git a/gas/config/tc-cris.c b/gas/config/tc-cris.c
index 325f842..c76e0d4 100644
--- a/gas/config/tc-cris.c
+++ b/gas/config/tc-cris.c
@@ -52,7 +52,7 @@
 
 /* Like in ":GOT", ":GOTOFF" etc.  Other ports use '@', but that's in
    line_separator_chars for CRIS, so we avoid it.  */
-#define PIC_SUFFIX_CHAR ':'
+#define RELOC_SUFFIX_CHAR ':'
 
 /* This might be CRIS_INSN_NONE if we're assembling a prefix-insn only.
    Note that some prefix-insns might be assembled as CRIS_INSN_NORMAL.  */
@@ -150,9 +150,9 @@
 static void s_cris_arch (int);
 
 /* Get ":GOT", ":GOTOFF", ":PLT" etc. suffixes.  */
-static void cris_get_pic_suffix (char **, bfd_reloc_code_real_type *,
-				 expressionS *);
-static unsigned int cris_get_pic_reloc_size (bfd_reloc_code_real_type);
+static void cris_get_reloc_suffix (char **, bfd_reloc_code_real_type *,
+				   expressionS *);
+static unsigned int cris_get_specified_reloc_size (bfd_reloc_code_real_type);
 
 /* All the .syntax functions.  */
 static void cris_force_reg_prefix (void);
@@ -183,6 +183,9 @@
 /* Whether or not we allow PIC, and expand to PIC-friendly constructs.  */
 static bfd_boolean pic = FALSE;
 
+/* Whether or not we allow TLS suffixes.  For the moment, we always do.  */
+static const bfd_boolean tls = TRUE;
+
 /* If we're configured for "cris", default to allow all v0..v10
    instructions and register names.  */
 #ifndef DEFAULT_CRIS_ARCH
@@ -1252,7 +1255,7 @@
       /* When the expression is unknown for a BDAP, it can need 0, 2 or 4
 	 extra bytes, so we handle it separately.  */
     case PREFIX_BDAP_IMM:
-      /* We only do it if the relocation is unspecified, i.e. not a PIC
+      /* We only do it if the relocation is unspecified, i.e. not a PIC or TLS
 	 relocation.  */
       if (prefix.reloc == BFD_RELOC_NONE)
 	{
@@ -1269,13 +1272,13 @@
       md_number_to_chars (opcodep, (long) prefix.opcode, 2);
 
       /* Having a specified reloc only happens for DIP and for BDAP with
-	 PIC operands, but it is ok to drop through here for the other
+	 PIC or TLS operands, but it is ok to drop through here for the other
 	 prefixes as they can have no relocs specified.  */
       if (prefix.reloc != BFD_RELOC_NONE)
 	{
 	  unsigned int relocsize
 	    = (prefix.kind == PREFIX_DIP
-	       ? 4 : cris_get_pic_reloc_size (prefix.reloc));
+	       ? 4 : cris_get_specified_reloc_size (prefix.reloc));
 
 	  p = frag_more (relocsize);
 	  fix_new_exp (frag_now, (p - frag_now->fr_literal), relocsize,
@@ -1889,7 +1892,7 @@
 			 whether or not this is autoincrement mode.  */
 		      out_insnp->opcode |= (mode << 10);
 
-		      /* If there was a PIC reloc specifier, then it was
+		      /* If there was a reloc specifier, then it was
 			 attached to the prefix.  Note that we can't check
 			 that the reloc size matches, since we don't have
 			 all the operands yet in all cases.  */
@@ -1903,8 +1906,8 @@
 
 	    case 'N':
 	    case 'Y':
-	      /* Like 's', but immediate operand only.  Also does not
-		 modify insn.  There are no insns where a PIC reloc
+	      /* Like 's', but immediate operand only.  Also do not
+		 modify insn.  There are no insns where an explicit reloc
 		 specifier makes sense.  */
 	      if (cris_get_expression (&s, &out_insnp->expr))
 		{
@@ -1927,9 +1930,10 @@
 		     relocation.  */
 		  out_insnp->expr.X_add_number += 6;
 
-		  if (pic && *s == PIC_SUFFIX_CHAR)
-		    cris_get_pic_suffix (&s, &out_insnp->reloc,
-					 &out_insnp->expr);
+		  /* TLS specifiers do not make sense here.  */
+		  if (pic && *s == RELOC_SUFFIX_CHAR)
+		    cris_get_reloc_suffix (&s, &out_insnp->reloc,
+					   &out_insnp->expr);
 
 		  continue;
 		}
@@ -2194,13 +2198,17 @@
 		}
 
 	      /* If there was a relocation specified for the immediate
-		 expression (i.e. it had a PIC modifier) check that the
-		 size of the PIC relocation matches the size specified by
+		 expression (i.e. it had a PIC or TLS modifier) check that the
+		 size of the relocation matches the size specified by
 		 the opcode.  */
 	      if (out_insnp->reloc != BFD_RELOC_NONE
-		  && (cris_get_pic_reloc_size (out_insnp->reloc)
+		  && (cris_get_specified_reloc_size (out_insnp->reloc)
 		      != (unsigned int) out_insnp->imm_oprnd_size))
-		as_bad (_("PIC relocation size does not match operand size"));
+		as_bad (out_insnp->reloc == BFD_RELOC_CRIS_32_GD
+			|| out_insnp->reloc == BFD_RELOC_CRIS_32_TPREL
+			|| out_insnp->reloc == BFD_RELOC_CRIS_16_TPREL
+			? _("TLS relocation size does not match operand size")
+			: _("PIC relocation size does not match operand size"));
 	    }
 	  else if (instruction->op == cris_muls_op
 		   || instruction->op == cris_mulu_op)
@@ -2715,8 +2723,8 @@
 
 			  /* We tentatively put an opcode corresponding to
 			     a 32-bit operand here, although it may be
-			     relaxed when there's no PIC specifier for the
-			     operand.  */
+			     relaxed when there's no relocation
+			     specifier for the operand.  */
 			  prefixp->opcode
 			    = (BDAP_INDIR_OPCODE
 			       | (prefixp->base_reg_number << 12)
@@ -2726,18 +2734,18 @@
 
 			  /* This can have a PIC suffix, specifying reloc
 			     type to use.  */
-			  if (pic && **cPP == PIC_SUFFIX_CHAR)
+			  if ((pic || tls) && **cPP == RELOC_SUFFIX_CHAR)
 			    {
 			      unsigned int relocsize;
 
-			      cris_get_pic_suffix (cPP, &prefixp->reloc,
-						   &prefixp->expr);
+			      cris_get_reloc_suffix (cPP, &prefixp->reloc,
+						     &prefixp->expr);
 
 			      /* Tweak the size of the immediate operand
 				 in the prefix opcode if it isn't what we
 				 set.  */
 			      relocsize
-				= cris_get_pic_reloc_size (prefixp->reloc);
+				= cris_get_specified_reloc_size (prefixp->reloc);
 			      if (relocsize != 4)
 				prefixp->opcode
 				  = ((prefixp->opcode & ~(3 << 4))
@@ -2763,8 +2771,9 @@
 			     in the blanks and break out to match the
 			     final ']'.
 
-			     Note that we don't allow a PIC suffix for an
-			     operand with a minus sign.  */
+			     Note that we don't allow a relocation
+			     suffix for an operand with a minus
+			     sign.  */
 			  prefixp->kind = PREFIX_BDAP_IMM;
 			  break;
 			}
@@ -2802,8 +2811,8 @@
 
       /* This can have a PIC suffix, specifying reloc type to use.  The
 	 caller must check that the reloc size matches the operand size.  */
-      if (pic && **cPP == PIC_SUFFIX_CHAR)
-	cris_get_pic_suffix (cPP, &prefixp->reloc, imm_exprP);
+      if ((pic || tls) && **cPP == RELOC_SUFFIX_CHAR)
+	cris_get_reloc_suffix (cPP, &prefixp->reloc, imm_exprP);
 
       return 1;
     }
@@ -2971,15 +2980,15 @@
 		   | REG_PC /* << 0 */);
 
 	      /* This can have a PIC suffix, specifying reloc type to use.  */
-	      if (pic && **cPP == PIC_SUFFIX_CHAR)
+	      if ((pic || tls) && **cPP == RELOC_SUFFIX_CHAR)
 		{
 		  unsigned int relocsize;
 
-		  cris_get_pic_suffix (cPP, &prefixp->reloc, &prefixp->expr);
+		  cris_get_reloc_suffix (cPP, &prefixp->reloc, &prefixp->expr);
 
 		  /* Tweak the size of the immediate operand in the prefix
 		     opcode if it isn't what we set.  */
-		  relocsize = cris_get_pic_reloc_size (prefixp->reloc);
+		  relocsize = cris_get_specified_reloc_size (prefixp->reloc);
 		  if (relocsize != 4)
 		    prefixp->opcode
 		      = ((prefixp->opcode & ~(3 << 4))
@@ -3426,13 +3435,19 @@
     md_number_to_chars (writep + 8, MOVE_PC_INCR_OPCODE_SUFFIX, 2);
 }
 
-/* Get the size of an immediate-reloc in bytes.  Only valid for PIC
-   relocs.  */
+/* Get the size of an immediate-reloc in bytes.  Only valid for
+   specified relocs (TLS, PIC).  */
 
 static unsigned int
-cris_get_pic_reloc_size (bfd_reloc_code_real_type reloc)
+cris_get_specified_reloc_size (bfd_reloc_code_real_type reloc)
 {
-  return reloc == BFD_RELOC_CRIS_16_GOTPLT || reloc == BFD_RELOC_CRIS_16_GOT
+  return
+    reloc == BFD_RELOC_CRIS_16_GOTPLT
+    || reloc == BFD_RELOC_CRIS_16_GOT
+    || reloc == BFD_RELOC_CRIS_16_GOT_GD
+    || reloc == BFD_RELOC_CRIS_16_DTPREL
+    || reloc == BFD_RELOC_CRIS_16_GOT_TPREL
+    || reloc == BFD_RELOC_CRIS_16_TPREL
     ? 2 : 4;
 }
 
@@ -3440,8 +3455,8 @@
    Adjust *EXPRP with any addend found after the PIC suffix.  */
 
 static void
-cris_get_pic_suffix (char **cPP, bfd_reloc_code_real_type *relocp,
-		     expressionS *exprP)
+cris_get_reloc_suffix (char **cPP, bfd_reloc_code_real_type *relocp,
+		       expressionS *exprP)
 {
   char *s = *cPP;
   unsigned int i;
@@ -3452,10 +3467,14 @@
     const char *const suffix;
     unsigned int len;
     bfd_reloc_code_real_type reloc;
+    bfd_boolean pic_p;
+    bfd_boolean tls_p;
   } pic_suffixes[] =
     {
 #undef PICMAP
-#define PICMAP(s, r) {s, sizeof (s) - 1, r}
+#define PICMAP(s, r) {s, sizeof (s) - 1, r, TRUE, FALSE}
+#define PICTLSMAP(s, r) {s, sizeof (s) - 1, r, TRUE, TRUE}
+#define TLSMAP(s, r) {s, sizeof (s) - 1, r, FALSE, TRUE}
       /* Keep this in order with longest unambiguous prefix first.  */
       PICMAP ("GOTPLT16", BFD_RELOC_CRIS_16_GOTPLT),
       PICMAP ("GOTPLT", BFD_RELOC_CRIS_32_GOTPLT),
@@ -3463,7 +3482,16 @@
       PICMAP ("PLT", BFD_RELOC_CRIS_32_PLT_PCREL),
       PICMAP ("GOTOFF", BFD_RELOC_CRIS_32_GOTREL),
       PICMAP ("GOT16", BFD_RELOC_CRIS_16_GOT),
-      PICMAP ("GOT", BFD_RELOC_CRIS_32_GOT)
+      PICMAP ("GOT", BFD_RELOC_CRIS_32_GOT),
+      PICTLSMAP ("GDGOTREL16", BFD_RELOC_CRIS_16_GOT_GD),
+      PICTLSMAP ("GDGOTREL", BFD_RELOC_CRIS_32_GOT_GD),
+      TLSMAP ("GD", BFD_RELOC_CRIS_32_GD),
+      PICTLSMAP ("DTPREL16", BFD_RELOC_CRIS_16_DTPREL),
+      PICTLSMAP ("DTPREL", BFD_RELOC_CRIS_32_DTPREL),
+      PICTLSMAP ("TPOFFGOT16", BFD_RELOC_CRIS_16_GOT_TPREL),
+      PICTLSMAP ("TPOFFGOT", BFD_RELOC_CRIS_32_GOT_TPREL),
+      TLSMAP ("TPOFF16", BFD_RELOC_CRIS_16_TPREL),
+      TLSMAP ("TPOFF", BFD_RELOC_CRIS_32_TPREL)
     };
 
   /* We've already seen the ':', so consume it.  */
@@ -3472,7 +3500,11 @@
   for (i = 0; i < sizeof (pic_suffixes)/sizeof (pic_suffixes[0]); i++)
     {
       if (strncmp (s, pic_suffixes[i].suffix, pic_suffixes[i].len) == 0
-	  && ! is_part_of_name (s[pic_suffixes[i].len]))
+	  && ! is_part_of_name (s[pic_suffixes[i].len])
+	  /* PIC and non-PIC relocations are exclusive.  */
+	  && (pic != 0) == (pic_suffixes[i].pic_p != 0)
+	  /* But TLS can be active for non-TLS relocations too.  */
+	  && (pic_suffixes[i].tls_p == 0 || tls))
 	{
 	  /* We have a match.  Consume the suffix and set the relocation
 	     type.   */
@@ -3599,6 +3631,15 @@
     case BFD_RELOC_CRIS_32_GOTPLT:
     case BFD_RELOC_CRIS_32_PLT_GOTREL:
     case BFD_RELOC_CRIS_32_PLT_PCREL:
+    case BFD_RELOC_CRIS_32_GOT_GD:
+    case BFD_RELOC_CRIS_16_GOT_GD:
+    case BFD_RELOC_CRIS_32_GD:
+    case BFD_RELOC_CRIS_32_DTPREL:
+    case BFD_RELOC_CRIS_16_DTPREL:
+    case BFD_RELOC_CRIS_32_GOT_TPREL:
+    case BFD_RELOC_CRIS_16_GOT_TPREL:
+    case BFD_RELOC_CRIS_32_TPREL:
+    case BFD_RELOC_CRIS_16_TPREL:
       /* We don't want to put in any kind of non-zero bits in the data
 	 being relocated for these.  */
       break;
@@ -3870,6 +3911,15 @@
     case BFD_RELOC_CRIS_UNSIGNED_8:
     case BFD_RELOC_CRIS_UNSIGNED_16:
     case BFD_RELOC_CRIS_LAPCQ_OFFSET:
+    case BFD_RELOC_CRIS_32_GOT_GD:
+    case BFD_RELOC_CRIS_16_GOT_GD:
+    case BFD_RELOC_CRIS_32_GD:
+    case BFD_RELOC_CRIS_32_DTPREL:
+    case BFD_RELOC_CRIS_16_DTPREL:
+    case BFD_RELOC_CRIS_32_GOT_TPREL:
+    case BFD_RELOC_CRIS_16_GOT_TPREL:
+    case BFD_RELOC_CRIS_32_TPREL:
+    case BFD_RELOC_CRIS_16_TPREL:
       code = fixP->fx_r_type;
       break;
     default:
diff --git a/gas/config/tc-frv.c b/gas/config/tc-frv.c
index e58def9..4551d75 100644
--- a/gas/config/tc-frv.c
+++ b/gas/config/tc-frv.c
@@ -1475,7 +1475,7 @@
       case BFD_RELOC_FRV_TLSDESC_RELAX:
       case BFD_RELOC_FRV_GETTLSOFF_RELAX:
       case BFD_RELOC_FRV_TLSOFF_RELAX:
-	fixP->fx_addsy = expr_build_uconstant (0);
+	fixP->fx_addsy = abs_section_sym;
 	break;
       }
   else
diff --git a/gas/config/tc-frv.h b/gas/config/tc-frv.h
index ad7eee0..732dacd 100644
--- a/gas/config/tc-frv.h
+++ b/gas/config/tc-frv.h
@@ -61,7 +61,7 @@
 /* If we simplify subtractions that aren't SUB_SAME or SUB_ABS, we end
    up with PCrel fixups, but since we don't have any PCrel relocs, we
    crash.  Preventing simplification gets us a good, early error.  */
-#define TC_FORCE_RELOCATION_SUB_LOCAL(fixP) 1
+#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG) 1
 
 #undef GAS_CGEN_MAX_FIXUPS
 #define GAS_CGEN_MAX_FIXUPS 1
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index da84526..7bb7966 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -8676,9 +8676,19 @@
     {
       p = regname + 2;
       regnum = strtoul (p, &q, 10);
+#if TARGET_ARCH_SIZE == 64
       if (p == q || *q || regnum <= 4 || regnum >= 32)
 	return -1;
       regnum += 32 - 4;
+#else
+      if (p == q
+	  || (*q  && ((*q != 'L' && *q != 'R') || *(q + 1)))
+	  || regnum <= 4 || regnum >= 32)
+	return -1;
+      regnum = (regnum - 4) * 2 + 32;
+      if (*q == 'R')
+	regnum++;
+#endif
     }
   return regnum;
 }
diff --git a/gas/config/tc-hppa.h b/gas/config/tc-hppa.h
index 498cb25..05168b1 100644
--- a/gas/config/tc-hppa.h
+++ b/gas/config/tc-hppa.h
@@ -155,7 +155,7 @@
    difference expression can't be used between text and data symbols,
    or between symbols in different executable modules.  */
 #define DIFF_EXPR_OK 1
-#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX) 1
+#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG) 1
 #define UNDEFINED_DIFFERENCE_OK
 #endif
 
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 539ea79..71abb01 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -150,25 +150,6 @@
 }
 sib_byte;
 
-enum processor_type
-{
-  PROCESSOR_UNKNOWN,
-  PROCESSOR_I386,
-  PROCESSOR_I486,
-  PROCESSOR_PENTIUM,
-  PROCESSOR_PENTIUMPRO,
-  PROCESSOR_PENTIUM4,
-  PROCESSOR_NOCONA,
-  PROCESSOR_CORE,
-  PROCESSOR_CORE2,
-  PROCESSOR_K6,
-  PROCESSOR_ATHLON,
-  PROCESSOR_K8,
-  PROCESSOR_GENERIC32,
-  PROCESSOR_GENERIC64,
-  PROCESSOR_AMDFAM10
-};
-
 /* x86 arch names, types and features */
 typedef struct
 {
@@ -468,16 +449,16 @@
 static int cpu_arch_tune_set = 0;
 
 /* Cpu we are generating instructions for.  */
-static enum processor_type cpu_arch_tune = PROCESSOR_UNKNOWN;
+enum processor_type cpu_arch_tune = PROCESSOR_UNKNOWN;
 
 /* CPU feature flags of cpu we are generating instructions for.  */
 static i386_cpu_flags cpu_arch_tune_flags;
 
 /* CPU instruction set architecture used.  */
-static enum processor_type cpu_arch_isa = PROCESSOR_UNKNOWN;
+enum processor_type cpu_arch_isa = PROCESSOR_UNKNOWN;
 
 /* CPU feature flags of instruction set architecture used.  */
-static i386_cpu_flags cpu_arch_isa_flags;
+i386_cpu_flags cpu_arch_isa_flags;
 
 /* If set, conditional jumps are not automatically promoted to handle
    larger than a byte offset.  */
@@ -993,7 +974,7 @@
     {
       const char *const *patt = NULL;
 
-      if (cpu_arch_isa == PROCESSOR_UNKNOWN)
+      if (fragP->tc_frag_data.isa == PROCESSOR_UNKNOWN)
 	{
 	  /* PROCESSOR_UNKNOWN means that all ISAs may be used.  */
 	  switch (cpu_arch_tune)
@@ -1001,7 +982,7 @@
 	    case PROCESSOR_UNKNOWN:
 	      /* We use cpu_arch_isa_flags to check if we SHOULD
 		 optimize for Cpu686.  */
-	      if (cpu_arch_isa_flags.bitfield.cpui686)
+	      if (fragP->tc_frag_data.isa_flags.bitfield.cpui686)
 		patt = alt_long_patt;
 	      else
 		patt = f32_patt;
@@ -1030,7 +1011,7 @@
 	}
       else
 	{
-	  switch (cpu_arch_tune)
+	  switch (fragP->tc_frag_data.tune)
 	    {
 	    case PROCESSOR_UNKNOWN:
 	      /* When cpu_arch_isa is set, cpu_arch_tune shouldn't be
@@ -1048,7 +1029,7 @@
 	    case PROCESSOR_GENERIC32:
 	      /* We use cpu_arch_isa_flags to check if we CAN optimize
 		 for Cpu686.  */
-	      if (cpu_arch_isa_flags.bitfield.cpui686)
+	      if (fragP->tc_frag_data.isa_flags.bitfield.cpui686)
 		patt = alt_short_patt;
 	      else
 		patt = f32_patt;
@@ -1058,7 +1039,7 @@
 	    case PROCESSOR_NOCONA:
 	    case PROCESSOR_CORE:
 	    case PROCESSOR_CORE2:
-	      if (cpu_arch_isa_flags.bitfield.cpui686)
+	      if (fragP->tc_frag_data.isa_flags.bitfield.cpui686)
 		patt = alt_long_patt;
 	      else
 		patt = f32_patt;
@@ -10105,6 +10086,15 @@
   return -1;
 }
 
+#ifdef TE_SOLARIS
+void
+i386_solaris_fix_up_eh_frame (segT sec)
+{
+  if (flag_code == CODE_64BIT)
+    elf_section_type (sec) = SHT_X86_64_UNWIND;
+}
+#endif
+
 #ifdef TE_PE
 void
 tc_pe_dwarf2_emit_offset (symbolS *symbol, unsigned int size)
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h
index a670ff9..f7f829c 100644
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -187,6 +187,50 @@
 
 #define md_number_to_chars number_to_chars_littleendian
 
+enum processor_type
+{
+  PROCESSOR_UNKNOWN,
+  PROCESSOR_I386,
+  PROCESSOR_I486,
+  PROCESSOR_PENTIUM,
+  PROCESSOR_PENTIUMPRO,
+  PROCESSOR_PENTIUM4,
+  PROCESSOR_NOCONA,
+  PROCESSOR_CORE,
+  PROCESSOR_CORE2,
+  PROCESSOR_K6,
+  PROCESSOR_ATHLON,
+  PROCESSOR_K8,
+  PROCESSOR_GENERIC32,
+  PROCESSOR_GENERIC64,
+  PROCESSOR_AMDFAM10
+};
+
+extern enum processor_type cpu_arch_tune;
+extern enum processor_type cpu_arch_isa;
+extern i386_cpu_flags cpu_arch_isa_flags;
+
+struct i386_tc_frag_data
+{
+  enum processor_type isa;
+  i386_cpu_flags isa_flags;
+  enum processor_type tune;
+};
+
+/* We need to emit the right NOP pattern in .align frags.  This is
+   done after the text-to-bits assembly pass, so we need to mark it with
+   the isa/tune settings at the time the .align was assembled.  */
+#define TC_FRAG_TYPE struct i386_tc_frag_data
+
+#define TC_FRAG_INIT(FRAGP)					\
+ do								\
+   {								\
+     (FRAGP)->tc_frag_data.isa = cpu_arch_isa;			\
+     (FRAGP)->tc_frag_data.isa_flags = cpu_arch_isa_flags;	\
+     (FRAGP)->tc_frag_data.tune = cpu_arch_tune;		\
+   }								\
+ while (0)
+
 #ifdef SCO_ELF
 #define tc_init_after_args() sco_id ()
 extern void sco_id (void);
@@ -212,6 +256,11 @@
 #define md_elf_section_type(str,len) i386_elf_section_type (str, len)
 extern int i386_elf_section_type (const char *, size_t);
 
+#ifdef TE_SOLARIS
+#define md_fix_up_eh_frame(sec) i386_solaris_fix_up_eh_frame (sec)
+extern void i386_solaris_fix_up_eh_frame (segT);
+#endif
+
 /* Support for SHF_X86_64_LARGE */
 extern int x86_64_section_word (char *, size_t);
 extern int x86_64_section_letter (int, char **);
diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c
index f3e3cf5..4f2e2f8 100644
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -4422,7 +4422,7 @@
   obstack_begin (&robyn, 4000);
   for (i = 0; i < m68k_numopcodes; i++)
     {
-      hack = slak = (struct m68k_incant *) obstack_alloc (&robyn, sizeof (struct m68k_incant));
+      hack = slak = obstack_alloc (&robyn, sizeof (struct m68k_incant));
       do
 	{
 	  ins = m68k_sorted_opcodes[i];
@@ -6184,8 +6184,8 @@
     case MCC ('g', 't'): return MCC ('l', 't');
     case MCC ('l', 'e'): return MCC ('g', 'e');
     /* Issue a warning for conditions we can not swap.  */
-    case MCC ('n', 'e'): return MCC ('n', 'e'); // no problem here
-    case MCC ('e', 'q'): return MCC ('e', 'q'); // also no problem
+    case MCC ('n', 'e'): return MCC ('n', 'e'); /* no problem here */
+    case MCC ('e', 'q'): return MCC ('e', 'q'); /* also no problem */
     case MCC ('v', 'c'):
     case MCC ('v', 's'):
     default :
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
index f55961b..5c65384 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -1949,17 +1949,17 @@
      helps us detect invalid uses of them.  */
   for (i = 0; reg_names[i].name; i++) 
     symbol_table_insert (symbol_new (reg_names[i].name, reg_section,
-				     reg_names[i].num, // & RNUM_MASK,
+				     reg_names[i].num, /* & RNUM_MASK, */
 				     &zero_address_frag));
   if (HAVE_NEWABI)
     for (i = 0; reg_names_n32n64[i].name; i++) 
       symbol_table_insert (symbol_new (reg_names_n32n64[i].name, reg_section,
-				       reg_names_n32n64[i].num, // & RNUM_MASK,
+				       reg_names_n32n64[i].num, /* & RNUM_MASK, */
 				       &zero_address_frag));
   else
     for (i = 0; reg_names_o32[i].name; i++) 
       symbol_table_insert (symbol_new (reg_names_o32[i].name, reg_section,
-				       reg_names_o32[i].num, // & RNUM_MASK,
+				       reg_names_o32[i].num, /* & RNUM_MASK, */
 				       &zero_address_frag));
 
   mips_no_prev_insn ();
@@ -15163,8 +15163,6 @@
   { "20kc",           MIPS_CPU_ASE_MIPS3D,	ISA_MIPS64,	CPU_MIPS64 },
   { "25kf",           MIPS_CPU_ASE_MIPS3D,	ISA_MIPS64,     CPU_MIPS64 },
 
-  /* MIPS 64 Release 2 */
-
   /* Broadcom SB-1 CPU core */
   { "sb1",            MIPS_CPU_ASE_MIPS3D | MIPS_CPU_ASE_MDMX,
 						ISA_MIPS64,	CPU_SB1 },
@@ -15172,6 +15170,8 @@
   { "sb1a",           MIPS_CPU_ASE_MIPS3D | MIPS_CPU_ASE_MDMX,
 						ISA_MIPS64,	CPU_SB1 },
 
+  /* MIPS 64 Release 2 */
+
   /* Cavium Networks Octeon CPU core */
   { "octeon",	      0,      ISA_MIPS64R2,   CPU_OCTEON },
 
diff --git a/gas/config/tc-mmix.c b/gas/config/tc-mmix.c
index c2b3789..320ed2b 100644
--- a/gas/config/tc-mmix.c
+++ b/gas/config/tc-mmix.c
@@ -1365,6 +1365,9 @@
 	     pass expressions as symbols and use fix_new, not fix_new_exp.  */
 	  sym = make_expr_symbol (exp + 1);
 
+	  /* Mark the symbol as being OK for a reloc.  */
+	  symbol_get_bfdsym (sym)->flags |= BSF_KEEP;
+
 	  /* Now we know it can be a "base address plus offset".  Add
 	     proper fixup types so we can handle this later, when we've
 	     parsed everything.  */
@@ -3448,6 +3451,7 @@
 {
   fragS *fragP;
   symbolS *mainsym;
+  asection *regsec;
   int i;
 
   /* The first frag of GREG:s going into the register contents section.  */
@@ -3512,9 +3516,9 @@
 	 and the same allocation order (within a file) as mmixal.  */
       segT this_segment = now_seg;
       subsegT this_subsegment = now_subseg;
-      asection *regsec
-	= bfd_make_section_old_way (stdoutput,
-				    MMIX_REG_CONTENTS_SECTION_NAME);
+
+      regsec = bfd_make_section_old_way (stdoutput,
+					 MMIX_REG_CONTENTS_SECTION_NAME);
       subseg_set (regsec, 0);
 
       /* Finally emit the initialization-value.  Emit a variable frag, which
@@ -3541,6 +3545,11 @@
       subseg_set (this_segment, this_subsegment);
     }
 
+  regsec = bfd_get_section_by_name (stdoutput, MMIX_REG_CONTENTS_SECTION_NAME);
+  /* Mark the section symbol as being OK for a reloc.  */
+  if (regsec != NULL)
+    regsec->symbol->flags |= BSF_KEEP;
+
   /* Iterate over frags resulting from GREGs and move those that evidently
      have the same value together and point one to another.
 
diff --git a/gas/config/tc-mmix.h b/gas/config/tc-mmix.h
index 0e72d98..1fa3463 100644
--- a/gas/config/tc-mmix.h
+++ b/gas/config/tc-mmix.h
@@ -224,3 +224,6 @@
 
 /* This target is buggy, and sets fix size too large.  */
 #define TC_FX_SIZE_SLACK(FIX) 6
+
+/* MMIX has global register symbols.  */
+#define TC_GLOBAL_REGISTER_SYMBOL_OK
diff --git a/gas/config/tc-mn10300.h b/gas/config/tc-mn10300.h
index 63ca74a..2fffaa3 100644
--- a/gas/config/tc-mn10300.h
+++ b/gas/config/tc-mn10300.h
@@ -70,7 +70,7 @@
 
 /* We validate subtract arguments within tc_gen_reloc(), so don't
    report errors at this point.  */
-#define TC_VALIDATE_FIX_SUB(FIX) 1
+#define TC_VALIDATE_FIX_SUB(FIX, SEG) 1
 
 /* Fixup debug sections since we will never relax them.  Ideally, we
    could do away with this and instead check every single fixup with
diff --git a/gas/config/tc-ns32k.c b/gas/config/tc-ns32k.c
index 66aeae8..509239b 100644
--- a/gas/config/tc-ns32k.c
+++ b/gas/config/tc-ns32k.c
@@ -880,7 +880,7 @@
 {
   bit_fixS *bit_fixP;
 
-  bit_fixP = (bit_fixS *) obstack_alloc (&notes, sizeof (bit_fixS));
+  bit_fixP = obstack_alloc (&notes, sizeof (bit_fixS));
 
   bit_fixP->fx_bit_size = size;
   bit_fixP->fx_bit_offset = offset;
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index 76a9e8e..648ed72 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -1428,15 +1428,8 @@
 	  && ((op->flags & PPC_OPCODE_BOOKE64) == 0
 	      || (ppc_cpu & PPC_OPCODE_BOOKE64) == PPC_OPCODE_BOOKE64
 	      || (ppc_cpu & PPC_OPCODE_BOOKE) == 0)
-	  && ((op->flags & (PPC_OPCODE_POWER4 | PPC_OPCODE_NOPOWER4)) == 0
-	      || ((op->flags & PPC_OPCODE_POWER4)
-		  == (ppc_cpu & PPC_OPCODE_POWER4)))
-	  && ((op->flags & PPC_OPCODE_POWER5) == 0
-	      || ((op->flags & PPC_OPCODE_POWER5)
-		  == (ppc_cpu & PPC_OPCODE_POWER5)))
-	  && ((op->flags & PPC_OPCODE_POWER6) == 0
-	      || ((op->flags & PPC_OPCODE_POWER6)
-		  == (ppc_cpu & PPC_OPCODE_POWER6))))
+	  && ((ppc_cpu & PPC_OPCODE_POWER4) == 0
+	      || (op->flags & PPC_OPCODE_NOPOWER4) == 0))
 	{
 	  const char *retval;
 
diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h
index dfdabd4..51b6561 100644
--- a/gas/config/tc-sh.h
+++ b/gas/config/tc-sh.h
@@ -83,8 +83,9 @@
    || (sh_relax && SWITCH_TABLE (FIX)))
 
 /* Don't complain when we leave fx_subsy around.  */
-#define TC_VALIDATE_FIX_SUB(FIX)			\
-  (sh_relax && SWITCH_TABLE (FIX))
+#define TC_VALIDATE_FIX_SUB(FIX, SEG)			\
+  ((md_register_arithmetic || (SEG) != reg_section)	\
+   && sh_relax && SWITCH_TABLE (FIX))
 
 #define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section (FIX, SEC)
 extern long md_pcrel_from_section (struct fix *, segT);
@@ -207,18 +208,22 @@
    || (FIX)->fx_r_type == BFD_RELOC_SH_GOTPC		\
    || TC_FORCE_RELOCATION (FIX))
 
-#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX) (sh_relax && SWITCH_TABLE (FIX))
+#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG)		\
+  ((!md_register_arithmetic && (SEG) == reg_section)	\
+   || (sh_relax && SWITCH_TABLE (FIX)))
 
 /* This keeps the subtracted symbol around, for use by PLT_PCREL
    relocs.  */
-#define TC_FORCE_RELOCATION_SUB_ABS(FIX)		\
-  ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL)
+#define TC_FORCE_RELOCATION_SUB_ABS(FIX, SEG)		\
+  ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL		\
+   || (!md_register_arithmetic && (SEG) == reg_section))
 
 /* Don't complain when we leave fx_subsy around.  */
 #undef TC_VALIDATE_FIX_SUB
-#define TC_VALIDATE_FIX_SUB(FIX)			\
-  ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL		\
-   || (sh_relax && SWITCH_TABLE (FIX)))
+#define TC_VALIDATE_FIX_SUB(FIX, SEG)			\
+  ((md_register_arithmetic || (SEG) != reg_section)	\
+   && ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL	\
+       || (sh_relax && SWITCH_TABLE (FIX))))
 
 #define md_parse_name(name, exprP, mode, nextcharP) \
   sh_parse_name ((name), (exprP), (mode), (nextcharP))
diff --git a/gas/config/tc-sh64.h b/gas/config/tc-sh64.h
index 23e72f6..17f0900 100644
--- a/gas/config/tc-sh64.h
+++ b/gas/config/tc-sh64.h
@@ -115,10 +115,11 @@
 
 /* Don't complain when we leave fx_subsy around.  */
 #undef TC_VALIDATE_FIX_SUB
-#define TC_VALIDATE_FIX_SUB(FIX)			\
-  ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL		\
-   || (sh_relax && SWITCH_TABLE (FIX))			\
-   || *symbol_get_tc ((FIX)->fx_addsy) != NULL)
+#define TC_VALIDATE_FIX_SUB(FIX, SEG)			\
+  ((md_register_arithmetic || (SEG) != reg_section)	\
+   && ((FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL	\
+       || (sh_relax && SWITCH_TABLE (FIX))		\
+       || *symbol_get_tc ((FIX)->fx_addsy) != NULL))
 
 /* Note the kludge: we want to put back C, and we also want to consume the
    expression, since we have handled it ourselves.  FIXME: What we really
diff --git a/gas/config/tc-tic4x.c b/gas/config/tc-tic4x.c
index c373e20..bc92de2 100644
--- a/gas/config/tc-tic4x.c
+++ b/gas/config/tc-tic4x.c
@@ -821,6 +821,7 @@
       *input_line_pointer = c;
       SKIP_WHITESPACE ();
       S_SET_STORAGE_CLASS (symbolP, C_EXT);
+      S_SET_EXTERNAL (symbolP);
       if (c == ',')
 	{
 	  input_line_pointer++;
diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
index b893cef..b6c35ec 100644
--- a/gas/config/tc-xtensa.c
+++ b/gas/config/tc-xtensa.c
@@ -11058,7 +11058,7 @@
     {
       op_placement_info *opi = &op_placement_table[opcode];
       /* FIXME: Make tinsn allocation dynamic.  */
-      if (xtensa_opcode_num_operands (isa, opcode) >= MAX_INSN_ARGS)
+      if (xtensa_opcode_num_operands (isa, opcode) > MAX_INSN_ARGS)
 	as_fatal (_("too many operands in instruction"));
       opi->narrowest = XTENSA_UNDEFINED;
       opi->narrowest_size = 0x7F;
diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h
index 987b82a..dbb5267 100644
--- a/gas/config/tc-xtensa.h
+++ b/gas/config/tc-xtensa.h
@@ -335,7 +335,7 @@
 #define TC_FORCE_RELOCATION(fix)	xtensa_force_relocation (fix)
 #define TC_FORCE_RELOCATION_SUB_SAME(fix, seg) \
   (! SEG_NORMAL (seg) || xtensa_force_relocation (fix))
-#define	TC_VALIDATE_FIX_SUB(fix)	xtensa_validate_fix_sub (fix)
+#define	TC_VALIDATE_FIX_SUB(fix, seg)	xtensa_validate_fix_sub (fix)
 #define NO_PSEUDO_DOT			xtensa_check_inside_bundle ()
 #define tc_canonicalize_symbol_name(s)	xtensa_section_rename (s)
 #define tc_canonicalize_section_name(s)	xtensa_section_rename (s)
diff --git a/gas/config/tc-z80.c b/gas/config/tc-z80.c
index 89a4603..825d920 100644
--- a/gas/config/tc-z80.c
+++ b/gas/config/tc-z80.c
@@ -1471,7 +1471,7 @@
 	  && (src->X_add_number == REG_BC || src->X_add_number == REG_DE))
 	{
 	  q = frag_more (1);
-	  *q = 0x0A + ((dest & 1) << 4);
+	  *q = 0x0A + ((src->X_add_number & 1) << 4);
 	  break;
 	}
 
diff --git a/gas/config/te-solaris.h b/gas/config/te-solaris.h
new file mode 100644
index 0000000..a3c2cea
--- /dev/null
+++ b/gas/config/te-solaris.h
@@ -0,0 +1,30 @@
+/* Copyright 2008 Free Software Foundation, Inc.
+
+   This file is part of GAS, the GNU Assembler.
+
+   GAS 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 3,
+   or (at your option) any later version.
+
+   GAS 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 GAS; see the file COPYING.  If not, write to the Free
+   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
+   02110-1301, USA.  */
+
+#define TE_SOLARIS
+
+#define LOCAL_LABELS_DOLLAR 1
+#define LOCAL_LABELS_FB 1
+
+/* The Sun linker doesn't merge read-only and read-write sections into
+   a single read-write section so we must force all EH frame sections
+   to be read-write.  */
+#define DWARF2_EH_FRAME_READ_ONLY 0
+
+#include "obj-format.h"
diff --git a/gas/configure b/gas/configure
index a1594dd..892bfb8 100755
--- a/gas/configure
+++ b/gas/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO WARN_CFLAGS NO_WERROR GDBINIT cgen_cpu_prefix extra_objects target_cpu_type obj_format te_file install_tooldir atof OPCODES_LIB YACC LEX LEXLIB LEX_OUTPUT_ROOT USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE ALLOCA LIBM datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 WARN_CFLAGS NO_WERROR GDBINIT cgen_cpu_prefix extra_objects target_cpu_type obj_format te_file install_tooldir atof OPCODES_LIB YACC LEX LEXLIB LEX_OUTPUT_ROOT USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE ALLOCA LIBM datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -1002,6 +1002,7 @@
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
+  --disable-largefile     omit support for large files
   --enable-shared[=PKGS]
                           build shared libraries [default=yes]
   --enable-static[=PKGS]
@@ -4732,11 +4733,382 @@
 _ACEOF
 
 
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
+
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -4751,124 +5123,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi;
-
-
-
-
-
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5089,7 +5343,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5251,13 +5504,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5254: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5507: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5257: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5510: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5260: output\"" >&5)
+  (eval echo "\"\$as_me:5513: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5303,7 +5556,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5364,8 +5617,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5412,7 +5665,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5423,7 +5675,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5503,6 +5757,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5557,6 +5900,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -5979,7 +6328,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6059,7 +6408,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6103,6 +6452,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6242,7 +6592,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6281,6 +6631,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6312,7 +6667,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6315 "configure"' > conftest.$ac_ext
+  echo '#line 6670 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6487,7 +6842,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6499,6 +6858,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6561,6 +7473,128 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+            # Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_shared=yes ;;
+    no) enable_shared=no ;;
+    *)
+      enable_shared=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_shared=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_shared=yes
+fi;
+
+
+
+
+
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -6907,7 +7941,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -6939,11 +7973,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:6942: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7976: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:6946: \$? = $ac_status" >&5
+   echo "$as_me:7980: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -6993,19 +8027,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7020,10 +8060,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7072,18 +8113,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7113,11 +8144,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7130,6 +8175,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7245,10 +8296,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7261,27 +8312,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7264: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8315: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7268: \$? = $ac_status" >&5
+   echo "$as_me:8319: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7304,10 +8355,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7320,20 +8371,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7366,11 +8417,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7369: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8420: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7373: \$? = $ac_status" >&5
+   echo "$as_me:8424: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7421,11 +8472,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7424: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8475: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7428: \$? = $ac_status" >&5
+   echo "$as_me:8479: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7515,16 +8566,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7586,19 +8638,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7612,7 +8663,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7663,6 +8714,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7677,6 +8729,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7685,8 +8743,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7696,6 +8752,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -7891,6 +8963,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8043,20 +9116,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8078,73 +9156,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8226,7 +9261,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8344,25 +9379,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -8801,8 +9840,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -8928,13 +9967,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -8957,14 +10001,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -8987,7 +10031,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9253,7 +10297,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9274,7 +10318,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9458,7 +10502,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9484,6 +10528,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9628,7 +10679,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -9875,7 +10926,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10169,7 +11220,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10218,7 +11269,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10221 "configure"
+#line 11272 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10259,10 +11310,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10278,7 +11325,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10318,7 +11365,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10321 "configure"
+#line 11368 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10359,10 +11406,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10378,7 +11421,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -11923,7 +12966,7 @@
   LEX=${am_missing_run}flex
 fi
 
-ALL_LINGUAS="fr tr es rw"
+ALL_LINGUAS="fr tr es rw id"
 # If we haven't got the data from the intl directory,
 # assume NLS is disabled.
 USE_NLS=no
@@ -14698,6 +15741,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14714,6 +15758,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14724,6 +15769,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14797,6 +15847,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -14809,6 +15860,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -14817,6 +15869,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -15079,11 +16136,23 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@AR@,$AR,;t t
 s,@ac_ct_AR@,$ac_ct_AR,;t t
 s,@RANLIB@,$RANLIB,;t t
 s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@WARN_CFLAGS@,$WARN_CFLAGS,;t t
 s,@NO_WERROR@,$NO_WERROR,;t t
 s,@GDBINIT@,$GDBINIT,;t t
@@ -15824,36 +16893,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -15930,6 +16999,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -15963,6 +17035,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -15978,6 +17053,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -16218,6 +17308,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -16235,6 +17326,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -16264,10 +17376,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -16288,6 +17421,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -16320,6 +17454,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -16344,6 +17498,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/gas/configure.in b/gas/configure.in
index 1203893..2b10296 100644
--- a/gas/configure.in
+++ b/gas/configure.in
@@ -24,6 +24,7 @@
 AC_PROG_CC
 AC_GNU_SOURCE
 AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
 
 LT_INIT
 
@@ -603,7 +604,7 @@
 AC_PROG_YACC
 AM_PROG_LEX
 
-ALL_LINGUAS="fr tr es rw"
+ALL_LINGUAS="fr tr es rw id"
 ZW_GNU_GETTEXT_SISTER_DIR
 AM_PO_SUBDIRS
 
diff --git a/gas/configure.tgt b/gas/configure.tgt
index fd355c9..76b10be 100644
--- a/gas/configure.tgt
+++ b/gas/configure.tgt
@@ -198,7 +198,7 @@
   i386-*-linux-*)			fmt=elf em=linux ;;
   i386-*-lynxos*)			fmt=elf em=lynx ;;
   i386-*-sysv[45]*)			fmt=elf ;;
-  i386-*-solaris*)			fmt=elf ;;
+  i386-*-solaris*)			fmt=elf em=solaris ;;
   i386-*-freebsdaout*)			fmt=aout em=386bsd ;;
   i386-*-freebsd[12].*)			fmt=aout em=386bsd ;;
   i386-*-freebsd[12])			fmt=aout em=386bsd ;;
@@ -322,7 +322,7 @@
   ppc-*-*n*bsd* | ppc-*-elf*)		fmt=elf ;;
   ppc-*-eabi* | ppc-*-sysv4*)		fmt=elf ;;
   ppc-*-linux-*)			fmt=elf em=linux ;;
-  ppc-*-solaris*)			fmt=elf ;;
+  ppc-*-solaris*)			fmt=elf em=solaris ;;
   ppc-*-rtems*)				fmt=elf ;;
   ppc-*-macos*)				fmt=coff em=macos ;;
   ppc-*-nto*)				fmt=elf ;;
@@ -362,7 +362,7 @@
   sparc-fujitsu-none)			fmt=aout ;;
   sparc-*-elf)				fmt=elf ;;
   sparc-*-sysv4*)			fmt=elf ;;
-  sparc-*-solaris*)			fmt=elf ;;
+  sparc-*-solaris*)			fmt=elf em=solaris ;;
   sparc-*-netbsdelf*)			fmt=elf em=nbsd ;;
   sparc-*-netbsd*)
     case ${cpu} in
@@ -408,7 +408,8 @@
   *-*-generic)				fmt=generic ;;
   *-*-xray | *-*-hms)			fmt=coff ;;
   *-*-sim)				fmt=coff ;;
-  *-*-elf | *-*-sysv4* | *-*-solaris*)	fmt=elf ;;
+  *-*-elf | *-*-sysv4*)			fmt=elf ;;
+  *-*-solaris*)				fmt=elf em=solaris ;;
   *-*-aros*)				fmt=elf em=linux ;;
   *-*-vxworks* | *-*-windiss)		fmt=elf em=vxworks ;;
   *-*-netware)				fmt=elf em=netware ;;
diff --git a/gas/doc/Makefile.in b/gas/doc/Makefile.in
index 4e02c58..3122f7c 100644
--- a/gas/doc/Makefile.in
+++ b/gas/doc/Makefile.in
@@ -53,7 +53,8 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
@@ -99,6 +100,7 @@
 DATADIRNAME = @DATADIRNAME@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -129,6 +131,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -139,9 +142,13 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
 OPCODES_LIB = @OPCODES_LIB@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -162,7 +169,13 @@
 YACC = @YACC@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo
index 92b4cde..78b241e7 100644
--- a/gas/doc/as.texinfo
+++ b/gas/doc/as.texinfo
@@ -3354,8 +3354,8 @@
 the same local label.
 
 Dollar labels are defined in exactly the same way as ordinary local labels,
-except that instead of being terminated by a colon, they are terminated by a
-dollar sign, e.g., @samp{@b{55$}}.
+except that they have a dollar sign suffix to their numeric value, e.g.,
+@samp{@b{55$:}}.
 
 They can also be distinguished from ordinary local labels by their transformed
 names which use ASCII character @samp{\001} (control-A) as the magic character
@@ -3373,8 +3373,9 @@
 @command{@value{AS}} is assembling into.  Thus, the expression @samp{melvin:
 .long .} defines @code{melvin} to contain its own address.
 Assigning a value to @code{.} is treated the same as a @code{.org}
-directive.  Thus, the expression @samp{.=.+4} is the same as saying
+directive.
 @ifclear no-space-dir
+Thus, the expression @samp{.=.+4} is the same as saying
 @samp{.space 4}.
 @end ifclear
 
@@ -3807,10 +3808,8 @@
 * Asciz::                       @code{.asciz "@var{string}"}@dots{}
 * Balign::                      @code{.balign @var{abs-expr} , @var{abs-expr}}
 * Byte::                        @code{.byte @var{expressions}}
-* Comm::                        @code{.comm @var{symbol} , @var{length} }
-
 * CFI directives::		@code{.cfi_startproc [simple]}, @code{.cfi_endproc}, etc.
-
+* Comm::                        @code{.comm @var{symbol} , @var{length} }
 * Data::                        @code{.data @var{subsection}}
 @ifset COFF
 * Def::                         @code{.def @var{name}}
@@ -3841,10 +3840,7 @@
 * Exitm::			@code{.exitm}
 * Extern::                      @code{.extern}
 * Fail::			@code{.fail}
-@ifclear no-file-dir
-* File::                        @code{.file @var{string}}
-@end ifclear
-
+* File::                        @code{.file}
 * Fill::                        @code{.fill @var{repeat} , @var{size} , @var{value}}
 * Float::                       @code{.float @var{flonums}}
 * Func::                        @code{.func}  
@@ -3875,8 +3871,11 @@
 * Linkonce::			@code{.linkonce [@var{type}]}
 * List::                        @code{.list}
 * Ln::                          @code{.ln @var{line-number}}
-
-* LNS directives::              @code{.file}, @code{.loc}, etc.
+* Loc::                         @code{.loc @var{fileno} @var{lineno}}
+* Loc_mark_labels::             @code{.loc_mark_labels @var{enable}}
+@ifset ELF
+* Local::                       @code{.local @var{names}}
+@end ifset
 
 * Long::                        @code{.long @var{expressions}}
 @ignore
@@ -3923,10 +3922,14 @@
 @ifset COFF-ELF
 * Size::                        @code{.size [@var{name} , @var{expression}]}
 @end ifset
-
+@ifclear no-space-dir
 * Skip::                        @code{.skip @var{size} , @var{fill}}
+@end ifclear
+
 * Sleb128::			@code{.sleb128 @var{expressions}}
+@ifclear no-space-dir
 * Space::                       @code{.space @var{size} , @var{fill}}
+@end ifclear
 @ifset have-stabs
 * Stab::                        @code{.stabd, .stabn, .stabs}
 @end ifset
@@ -4035,6 +4038,42 @@
 described later, which have a consistent behavior across all
 architectures (but are specific to GAS).
 
+@node Altmacro
+@section @code{.altmacro}
+Enable alternate macro mode, enabling:
+
+@ftable @code
+@item LOCAL @var{name} [ , @dots{} ]
+One additional directive, @code{LOCAL}, is available.  It is used to
+generate a string replacement for each of the @var{name} arguments, and
+replace any instances of @var{name} in each macro expansion.  The
+replacement string is unique in the assembly, and different for each
+separate macro expansion.  @code{LOCAL} allows you to write macros that
+define symbols, without fear of conflict between separate macro expansions.
+
+@item String delimiters
+You can write strings delimited in these other ways besides
+@code{"@var{string}"}:
+
+@table @code
+@item '@var{string}'
+You can delimit strings with single-quote characters.
+
+@item <@var{string}>
+You can delimit strings with matching angle brackets.
+@end table
+
+@item single-character string escape
+To include any single character literally in a string (even if the
+character would otherwise have some special meaning), you can prefix the
+character with @samp{!} (an exclamation mark).  For example, you can
+write @samp{<4.3 !> 5.4!!>} to get the literal text @samp{4.3 > 5.4!}.
+
+@item Expression results as strings
+You can write @samp{%@var{expr}} to evaluate the expression @var{expr}
+and use the result as a string.  
+@end ftable
+
 @node Ascii
 @section @code{.ascii "@var{string}"}@dots{}
 
@@ -4097,37 +4136,6 @@
 @code{.byte} expects zero or more expressions, separated by commas.
 Each expression is assembled into the next byte.
 
-@node Comm
-@section @code{.comm @var{symbol} , @var{length} }
-
-@cindex @code{comm} directive
-@cindex symbol, common
-@code{.comm} declares a common symbol named @var{symbol}.  When linking, a
-common symbol in one object file may be merged with a defined or common symbol
-of the same name in another object file.  If @code{@value{LD}} does not see a
-definition for the symbol--just one or more common symbols--then it will
-allocate @var{length} bytes of uninitialized memory.  @var{length} must be an
-absolute expression.  If @code{@value{LD}} sees multiple common symbols with
-the same name, and they do not all have the same size, it will allocate space
-using the largest size.
-
-@ifset ELF
-When using ELF, the @code{.comm} directive takes an optional third argument.
-This is the desired alignment of the symbol, specified as a byte boundary (for
-example, an alignment of 16 means that the least significant 4 bits of the
-address should be zero).  The alignment must be an absolute expression, and it
-must be a power of two.  If @code{@value{LD}} allocates uninitialized memory
-for the common symbol, it will use the alignment when placing the symbol.  If
-no alignment is specified, @command{@value{AS}} will set the alignment to the
-largest power of two less than or equal to the size of the symbol, up to a
-maximum of 16.
-@end ifset
-
-@ifset HPPA
-The syntax for @code{.comm} differs slightly on the HPPA.  The syntax is
-@samp{@var{symbol} .comm, @var{length}}; @var{symbol} is optional.
-@end ifset
-
 @node CFI directives
 @section @code{.cfi_startproc [simple]}
 @cindex @code{cfi_startproc} directive
@@ -4230,60 +4238,47 @@
 might use this to add OS-specific CFI opcodes, or generic CFI
 opcodes that GAS does not yet support.
 
-@node LNS directives
-@section @code{.file @var{fileno} @var{filename}}
-@cindex @code{file} directive
-When emitting dwarf2 line number information @code{.file} assigns filenames
-to the @code{.debug_line} file name table.  The @var{fileno} operand should
-be a unique positive integer to use as the index of the entry in the table.
-The @var{filename} operand is a C string literal.
+@section @code{.cfi_val_encoded_addr @var{register}, @var{encoding}, @var{label}}
+The current value of @var{register} is @var{label}.  The value of @var{label}
+will be encoded in the output file according to @var{encoding}; see the
+description of @code{.cfi_personality} for details on this encoding.
 
-The detail of filename indices is exposed to the user because the filename
-table is shared with the @code{.debug_info} section of the dwarf2 debugging
-information, and thus the user must know the exact indices that table
-entries will have.
+The usefulness of equating a register to a fixed label is probably
+limited to the return address register.  Here, it can be useful to
+mark a code segment that has only one return address which is reached
+by a direct branch and no copy of the return address exists in memory
+or another register.
 
-@section @code{.loc @var{fileno} @var{lineno} [@var{column}] [@var{options}]}
-@cindex @code{loc} directive
-The @code{.loc} directive will add row to the @code{.debug_line} line
-number matrix corresponding to the immediately following assembly
-instruction.  The @var{fileno}, @var{lineno}, and optional @var{column}
-arguments will be applied to the @code{.debug_line} state machine before
-the row is added.
+@node Comm
+@section @code{.comm @var{symbol} , @var{length} }
 
-The @var{options} are a sequence of the following tokens in any order:
+@cindex @code{comm} directive
+@cindex symbol, common
+@code{.comm} declares a common symbol named @var{symbol}.  When linking, a
+common symbol in one object file may be merged with a defined or common symbol
+of the same name in another object file.  If @code{@value{LD}} does not see a
+definition for the symbol--just one or more common symbols--then it will
+allocate @var{length} bytes of uninitialized memory.  @var{length} must be an
+absolute expression.  If @code{@value{LD}} sees multiple common symbols with
+the same name, and they do not all have the same size, it will allocate space
+using the largest size.
 
-@table @code
-@item basic_block
-This option will set the @code{basic_block} register in the
-@code{.debug_line} state machine to @code{true}.
+@ifset ELF
+When using ELF, the @code{.comm} directive takes an optional third argument.
+This is the desired alignment of the symbol, specified as a byte boundary (for
+example, an alignment of 16 means that the least significant 4 bits of the
+address should be zero).  The alignment must be an absolute expression, and it
+must be a power of two.  If @code{@value{LD}} allocates uninitialized memory
+for the common symbol, it will use the alignment when placing the symbol.  If
+no alignment is specified, @command{@value{AS}} will set the alignment to the
+largest power of two less than or equal to the size of the symbol, up to a
+maximum of 16.
+@end ifset
 
-@item prologue_end
-This option will set the @code{prologue_end} register in the
-@code{.debug_line} state machine to @code{true}.
-
-@item epilogue_begin
-This option will set the @code{epilogue_begin} register in the
-@code{.debug_line} state machine to @code{true}.
-
-@item is_stmt @var{value}
-This option will set the @code{is_stmt} register in the
-@code{.debug_line} state machine to @code{value}, which must be 
-either 0 or 1.
-
-@item isa @var{value}
-This directive will set the @code{isa} register in the @code{.debug_line}
-state machine to @var{value}, which must be an unsigned integer.
-
-@end table
-
-@section @code{.loc_mark_labels @var{enable}}
-@cindex @code{loc_mark_labels} directive
-The @code{.loc_mark_labels} directive makes the assembler emit an entry
-to the @code{.debug_line} line number matrix with the @code{basic_block}
-register in the state machine set whenever a code label is seen.
-The @var{enable} argument should be either 1 or 0, to enable or disable
-this function respectively.
+@ifset HPPA
+The syntax for @code{.comm} differs slightly on the HPPA.  The syntax is
+@samp{@var{symbol} .comm, @var{length}}; @var{symbol} is optional.
+@end ifset
 
 @node Data
 @section @code{.data @var{subsection}}
@@ -4515,21 +4510,51 @@
 include the value of @var{expression}.  This can occasionally be useful inside
 complex nested macros or conditional assembly.
 
-@ifclear no-file-dir
 @node File
-@section @code{.file @var{string}}
-
+@section @code{.file}
 @cindex @code{file} directive
+
+@ifclear no-file-dir
+There are two different versions of the @code{.file} directive.  Targets
+that support DWARF2 line number information use the DWARF2 version of
+@code{.file}.  Other targets use the default version.
+
+@subheading Default Version
+
 @cindex logical file name
 @cindex file name, logical
-@code{.file} tells @command{@value{AS}} that we are about to start a new logical
-file.  @var{string} is the new file name.  In general, the filename is
+This version of the @code{.file} directive tells @command{@value{AS}} that we
+are about to start a new logical file.  The syntax is:
+
+@smallexample
+.file @var{string}
+@end smallexample
+
+@var{string} is the new file name.  In general, the filename is
 recognized whether or not it is surrounded by quotes @samp{"}; but if you wish
 to specify an empty file name, you must give the quotes--@code{""}.  This
 statement may go away in future: it is only recognized to be compatible with
 old @command{@value{AS}} programs.
+
+@subheading DWARF2 Version
 @end ifclear
 
+When emitting DWARF2 line number information, @code{.file} assigns filenames
+to the @code{.debug_line} file name table.  The syntax is:
+
+@smallexample
+.file @var{fileno} @var{filename}
+@end smallexample
+
+The @var{fileno} operand should be a unique positive integer to use as the
+index of the entry in the table.  The @var{filename} operand is a C string
+literal.
+
+The detail of filename indices is exposed to the user because the filename
+table is shared with the @code{.debug_info} section of the DWARF2 debugging
+information, and thus the user must know the exact indices that table
+entries will have.
+
 @node Fill
 @section @code{.fill @var{repeat} , @var{size} , @var{value}}
 
@@ -4910,13 +4935,6 @@
 @section @code{.line @var{line-number}}
 
 @cindex @code{line} directive
-@end ifclear
-@ifset no-line-dir
-@node Ln
-@section @code{.ln @var{line-number}}
-
-@cindex @code{ln} directive
-@end ifset
 @cindex logical line number
 @ifset aout-bout
 Change the logical line number.  @var{line-number} must be an absolute
@@ -4925,10 +4943,8 @@
 reported as on logical line number @var{line-number} @minus{} 1.  One day
 @command{@value{AS}} will no longer support this directive: it is recognized only
 for compatibility with existing assembler programs.
-
 @end ifset
 
-@ifclear no-line-dir
 Even though this is a directive associated with the @code{a.out} or
 @code{b.out} object-code formats, @command{@value{AS}} still recognizes it
 when producing COFF output, and treats @samp{.line} as though it
@@ -4977,6 +4993,21 @@
 Warn if any of the duplicates do not have exactly the same contents.
 @end table
 
+@node List
+@section @code{.list}
+
+@cindex @code{list} directive
+@cindex listing control, turning on
+Control (in conjunction with the @code{.nolist} directive) whether or
+not assembly listings are generated.  These two directives maintain an
+internal counter (which is zero initially).   @code{.list} increments the
+counter, and @code{.nolist} decrements it.  Assembly listings are
+generated whenever the counter is greater than zero.
+
+By default, listings are disabled.  When you enable them (with the
+@samp{-a} command line option; @pxref{Invoking,,Command-Line Options}),
+the initial value of the listing counter is one.
+
 @node Ln
 @section @code{.ln @var{line-number}}
 
@@ -4998,30 +5029,67 @@
 @end ifset
 @end ifset
 
-@node MRI
-@section @code{.mri @var{val}}
+@node Loc
+@section @code{.loc @var{fileno} @var{lineno} [@var{column}] [@var{options}]}
+@cindex @code{loc} directive
+When emitting DWARF2 line number information,
+the @code{.loc} directive will add a row to the @code{.debug_line} line
+number matrix corresponding to the immediately following assembly
+instruction.  The @var{fileno}, @var{lineno}, and optional @var{column}
+arguments will be applied to the @code{.debug_line} state machine before
+the row is added.
 
-@cindex @code{mri} directive
-@cindex MRI mode, temporarily
-If @var{val} is non-zero, this tells @command{@value{AS}} to enter MRI mode.  If
-@var{val} is zero, this tells @command{@value{AS}} to exit MRI mode.  This change
-affects code assembled until the next @code{.mri} directive, or until the end
-of the file.  @xref{M, MRI mode, MRI mode}.
+The @var{options} are a sequence of the following tokens in any order:
 
-@node List
-@section @code{.list}
+@table @code
+@item basic_block
+This option will set the @code{basic_block} register in the
+@code{.debug_line} state machine to @code{true}.
 
-@cindex @code{list} directive
-@cindex listing control, turning on
-Control (in conjunction with the @code{.nolist} directive) whether or
-not assembly listings are generated.  These two directives maintain an
-internal counter (which is zero initially).   @code{.list} increments the
-counter, and @code{.nolist} decrements it.  Assembly listings are
-generated whenever the counter is greater than zero.
+@item prologue_end
+This option will set the @code{prologue_end} register in the
+@code{.debug_line} state machine to @code{true}.
 
-By default, listings are disabled.  When you enable them (with the
-@samp{-a} command line option; @pxref{Invoking,,Command-Line Options}),
-the initial value of the listing counter is one.
+@item epilogue_begin
+This option will set the @code{epilogue_begin} register in the
+@code{.debug_line} state machine to @code{true}.
+
+@item is_stmt @var{value}
+This option will set the @code{is_stmt} register in the
+@code{.debug_line} state machine to @code{value}, which must be 
+either 0 or 1.
+
+@item isa @var{value}
+This directive will set the @code{isa} register in the @code{.debug_line}
+state machine to @var{value}, which must be an unsigned integer.
+
+@end table
+
+@node Loc_mark_labels
+@section @code{.loc_mark_labels @var{enable}}
+@cindex @code{loc_mark_labels} directive
+When emitting DWARF2 line number information,
+the @code{.loc_mark_labels} directive makes the assembler emit an entry
+to the @code{.debug_line} line number matrix with the @code{basic_block}
+register in the state machine set whenever a code label is seen.
+The @var{enable} argument should be either 1 or 0, to enable or disable
+this function respectively.
+
+@ifset ELF
+@node Local
+@section @code{.local @var{names}}
+
+@cindex @code{local} directive
+This directive, which is available for ELF targets, marks each symbol in
+the comma-separated list of @code{names} as a local symbol so that it
+will not be externally visible.  If the symbols do not already exist,
+they will be created.
+
+For targets where the @code{.lcomm} directive (@pxref{Lcomm}) does not
+accept an alignment argument, which is the case for most ELF targets,
+the @code{.local} directive can be used in combination with @code{.comm}
+(@pxref{Comm}) to define aligned local common data.
+@end ifset
 
 @node Long
 @section @code{.long @var{expressions}}
@@ -5224,41 +5292,15 @@
 @xref{Altmacro,,@code{.altmacro}}.
 @end ftable
 
-@node Altmacro
-@section @code{.altmacro}
-Enable alternate macro mode, enabling:
+@node MRI
+@section @code{.mri @var{val}}
 
-@ftable @code
-@item LOCAL @var{name} [ , @dots{} ]
-One additional directive, @code{LOCAL}, is available.  It is used to
-generate a string replacement for each of the @var{name} arguments, and
-replace any instances of @var{name} in each macro expansion.  The
-replacement string is unique in the assembly, and different for each
-separate macro expansion.  @code{LOCAL} allows you to write macros that
-define symbols, without fear of conflict between separate macro expansions.
-
-@item String delimiters
-You can write strings delimited in these other ways besides
-@code{"@var{string}"}:
-
-@table @code
-@item '@var{string}'
-You can delimit strings with single-quote characters.
-
-@item <@var{string}>
-You can delimit strings with matching angle brackets.
-@end table
-
-@item single-character string escape
-To include any single character literally in a string (even if the
-character would otherwise have some special meaning), you can prefix the
-character with @samp{!} (an exclamation mark).  For example, you can
-write @samp{<4.3 !> 5.4!!>} to get the literal text @samp{4.3 > 5.4!}.
-
-@item Expression results as strings
-You can write @samp{%@var{expr}} to evaluate the expression @var{expr}
-and use the result as a string.  
-@end ftable
+@cindex @code{mri} directive
+@cindex MRI mode, temporarily
+If @var{val} is non-zero, this tells @command{@value{AS}} to enter MRI mode.  If
+@var{val} is zero, this tells @command{@value{AS}} to exit MRI mode.  This change
+affects code assembled until the next @code{.mri} directive, or until the end
+of the file.  @xref{M, MRI mode, MRI mode}.
 
 @node Noaltmacro
 @section @code{.noaltmacro}
@@ -5362,6 +5404,22 @@
 undefined.
 
 @ifset ELF
+@node PopSection
+@section @code{.popsection}
+
+@cindex @code{popsection} directive
+@cindex Section Stack
+This is one of the ELF section stack manipulation directives.  The others are
+@code{.section} (@pxref{Section}), @code{.subsection} (@pxref{SubSection}), 
+@code{.pushsection} (@pxref{PushSection}), and @code{.previous} 
+(@pxref{Previous}).
+
+This directive replaces the current section (and subsection) with the top
+section (and subsection) on the section stack.  This section is popped off the
+stack. 
+@end ifset
+
+@ifset ELF
 @node Previous
 @section @code{.previous}
 
@@ -5414,22 +5472,6 @@
 the top section on the section stack.
 @end ifset
 
-@ifset ELF
-@node PopSection
-@section @code{.popsection}
-
-@cindex @code{popsection} directive
-@cindex Section Stack
-This is one of the ELF section stack manipulation directives.  The others are
-@code{.section} (@pxref{Section}), @code{.subsection} (@pxref{SubSection}), 
-@code{.pushsection} (@pxref{PushSection}), and @code{.previous} 
-(@pxref{Previous}).
-
-This directive replaces the current section (and subsection) with the top
-section (and subsection) on the section stack.  This section is popped off the
-stack. 
-@end ifset
-
 @node Print
 @section @code{.print @var{string}}
 
@@ -5887,14 +5929,6 @@
 @end ifset
 @end ifset
 
-@node Sleb128
-@section @code{.sleb128 @var{expressions}}
-
-@cindex @code{sleb128} directive
-@var{sleb128} stands for ``signed little endian base 128.''  This is a 
-compact, variable length representation of numbers used by the DWARF
-symbolic debugging format.  @xref{Uleb128, ,@code{.uleb128}}.
-
 @ifclear no-space-dir
 @node Skip
 @section @code{.skip @var{size} , @var{fill}}
@@ -5905,7 +5939,17 @@
 @var{size} and @var{fill} are absolute expressions.  If the comma and
 @var{fill} are omitted, @var{fill} is assumed to be zero.  This is the same as
 @samp{.space}.
+@end ifclear
 
+@node Sleb128
+@section @code{.sleb128 @var{expressions}}
+
+@cindex @code{sleb128} directive
+@var{sleb128} stands for ``signed little endian base 128.''  This is a 
+compact, variable length representation of numbers used by the DWARF
+symbolic debugging format.  @xref{Uleb128, ,@code{.uleb128}}.
+
+@ifclear no-space-dir
 @node Space
 @section @code{.space @var{size} , @var{fill}}
 
diff --git a/gas/doc/internals.texi b/gas/doc/internals.texi
index cfb9a93..89e9198 100644
--- a/gas/doc/internals.texi
+++ b/gas/doc/internals.texi
@@ -1309,22 +1309,27 @@
 @w{@code{! SEG_NORMAL (@var{seg}) || TC_FORCE_RELOCATION (@var{fix})}} will
 be used.
 
-@item TC_FORCE_RELOCATION_SUB_ABS (@var{fix})
+@item TC_FORCE_RELOCATION_SUB_ABS (@var{fix}, @var{seg)
 @cindex TC_FORCE_RELOCATION_SUB_ABS
 Like @code{TC_FORCE_RELOCATION_SUB_SAME}, but used when the subtrahend is an
 absolute symbol.  If the macro is undefined a default of @code{0} is used.
 
-@item TC_FORCE_RELOCATION_SUB_LOCAL (@var{fix})
+@item TC_FORCE_RELOCATION_SUB_LOCAL (@var{fix}, @var{seg)
 @cindex TC_FORCE_RELOCATION_SUB_LOCAL
 Like @code{TC_FORCE_RELOCATION_SUB_ABS}, but the subtrahend is a symbol in the
 same section as the fixup.
 
-@item TC_VALIDATE_FIX_SUB (@var{fix})
+@item TC_VALIDATE_FIX_SUB (@var{fix}, @var{seg})
 @cindex TC_VALIDATE_FIX_SUB
 This macro is evaluated for any fixup with a @code{fx_subsy} that
 @code{fixup_segment} cannot reduce to a number.  If the macro returns
 @code{false} an error will be reported.
 
+@item TC_GLOBAL_REGISTER_SYMBOL_OK
+@cindex TC_GLOBAL_REGISTER_SYMBOL_OK
+Define this macro if global register symbols are supported. The default
+is to disallow global register symbols.
+
 @item MD_APPLY_SYM_VALUE (@var{fix})
 @cindex MD_APPLY_SYM_VALUE
 This macro controls whether the symbol value becomes part of the value passed
diff --git a/gas/dw2gencfi.c b/gas/dw2gencfi.c
index 49a23ad..4adfeab 100644
--- a/gas/dw2gencfi.c
+++ b/gas/dw2gencfi.c
@@ -58,6 +58,10 @@
 # define tc_cfi_frame_initial_instructions() ((void)0)
 #endif
 
+#ifndef DWARF2_ADDR_SIZE
+# define DWARF2_ADDR_SIZE(bfd) (bfd_arch_bits_per_address (bfd) / 8)
+#endif
+
 
 struct cfi_insn_data
 {
@@ -86,6 +90,11 @@
       struct cfi_escape_data *next;
       expressionS exp;
     } *esc;
+
+    struct {
+      unsigned reg, encoding;
+      expressionS exp;
+    } ea;
   } u;
 };
 
@@ -376,6 +385,7 @@
 static void dot_cfi_endproc (int);
 static void dot_cfi_personality (int);
 static void dot_cfi_lsda (int);
+static void dot_cfi_val_encoded_addr (int);
 
 /* Fake CFI type; outside the byte range of any real CFI insn.  */
 #define CFI_adjust_cfa_offset	0x100
@@ -383,6 +393,7 @@
 #define CFI_rel_offset		0x102
 #define CFI_escape		0x103
 #define CFI_signal_frame	0x104
+#define CFI_val_encoded_addr	0x105
 
 const pseudo_typeS cfi_pseudo_table[] =
   {
@@ -406,6 +417,7 @@
     { "cfi_signal_frame", dot_cfi, CFI_signal_frame },
     { "cfi_personality", dot_cfi_personality, 0 },
     { "cfi_lsda", dot_cfi_lsda, 0 },
+    { "cfi_val_encoded_addr", dot_cfi_val_encoded_addr, 0 },
     { NULL, NULL, 0 }
   };
 
@@ -654,7 +666,7 @@
     }
 
   fde = frchain_now->frch_cfi_data->cur_fde_data;
-  encoding = get_absolute_expression ();
+  encoding = cfi_parse_const ();
   if (encoding == DW_EH_PE_omit)
     {
       demand_empty_rest_of_line ();
@@ -724,7 +736,7 @@
     }
 
   fde = frchain_now->frch_cfi_data->cur_fde_data;
-  encoding = get_absolute_expression ();
+  encoding = cfi_parse_const ();
   if (encoding == DW_EH_PE_omit)
     {
       demand_empty_rest_of_line ();
@@ -783,6 +795,71 @@
 }
 
 static void
+dot_cfi_val_encoded_addr (int ignored ATTRIBUTE_UNUSED)
+{
+  struct cfi_insn_data *insn_ptr;
+  offsetT encoding;
+
+  if (frchain_now->frch_cfi_data == NULL)
+    {
+      as_bad (_("CFI instruction used without previous .cfi_startproc"));
+      ignore_rest_of_line ();
+      return;
+    }
+
+  /* If the last address was not at the current PC, advance to current.  */
+  if (symbol_get_frag (frchain_now->frch_cfi_data->last_address) != frag_now
+      || S_GET_VALUE (frchain_now->frch_cfi_data->last_address)
+	 != frag_now_fix ())
+    cfi_add_advance_loc (symbol_temp_new_now ());
+
+  insn_ptr = alloc_cfi_insn_data ();
+  insn_ptr->insn = CFI_val_encoded_addr;
+  
+  insn_ptr->u.ea.reg = cfi_parse_reg ();
+
+  cfi_parse_separator ();
+  encoding = cfi_parse_const ();
+  if ((encoding & 0xff) != encoding
+      || ((encoding & 0x70) != 0
+#if CFI_DIFF_EXPR_OK || defined tc_cfi_emit_pcrel_expr
+	  && (encoding & 0x70) != DW_EH_PE_pcrel
+#endif
+	  )
+	 /* leb128 can be handled, but does something actually need it?  */
+      || (encoding & 7) == DW_EH_PE_uleb128
+      || (encoding & 7) > DW_EH_PE_udata8)
+    {
+      as_bad (_("invalid or unsupported encoding in .cfi_lsda"));
+      encoding = DW_EH_PE_omit;
+    }
+
+  cfi_parse_separator ();
+  expression_and_evaluate (&insn_ptr->u.ea.exp);
+  switch (insn_ptr->u.ea.exp.X_op)
+    {
+    case O_symbol:
+      break;
+    case O_constant:
+      if ((encoding & 0x70) != DW_EH_PE_pcrel)
+        break;
+    default:
+      encoding = DW_EH_PE_omit;
+      break;
+    }
+
+  insn_ptr->u.ea.encoding = encoding;
+  if (encoding == DW_EH_PE_omit)
+    {
+      as_bad (_("wrong third argument to .cfi_val_encoded_addr"));
+      ignore_rest_of_line ();
+      return;
+    }
+
+  demand_empty_rest_of_line ();
+}
+
+static void
 dot_cfi_startproc (int ignored ATTRIBUTE_UNUSED)
 {
   int simple = 0;
@@ -1028,6 +1105,64 @@
 	break;
       }
 
+    case CFI_val_encoded_addr:
+      {
+        unsigned encoding = insn->u.ea.encoding;
+        offsetT encoding_size;
+
+	if (encoding == DW_EH_PE_omit)
+	  break;
+	out_one (DW_CFA_val_expression);
+	out_uleb128 (insn->u.ea.reg);
+
+        switch (encoding & 0x7)
+	  {
+	  case DW_EH_PE_absptr:
+	    encoding_size = DWARF2_ADDR_SIZE (stdoutput);
+	    break;
+	  case DW_EH_PE_udata2:
+	    encoding_size = 2;
+	    break;
+	  case DW_EH_PE_udata4:
+	    encoding_size = 4;
+	    break;
+	  case DW_EH_PE_udata8:
+	    encoding_size = 8;
+	    break;
+	  default:
+	    abort ();
+	  }
+
+	/* If the user has requested absolute encoding,
+	   then use the smaller DW_OP_addr encoding.  */
+	if (insn->u.ea.encoding == DW_EH_PE_absptr)
+	  {
+	    out_uleb128 (1 + encoding_size);
+	    out_one (DW_OP_addr);
+	  }
+	else
+	  {
+	    out_uleb128 (1 + 1 + encoding_size);
+	    out_one (DW_OP_GNU_encoded_addr);
+	    out_one (encoding);
+
+	    if ((encoding & 0x70) == DW_EH_PE_pcrel)
+	      {
+#if CFI_DIFF_EXPR_OK
+		insn->u.ea.exp.X_op = O_subtract;
+		insn->u.ea.exp.X_op_symbol = symbol_temp_new_now ();
+#elif defined (tc_cfi_emit_pcrel_expr)
+		tc_cfi_emit_pcrel_expr (&insn->u.ea.exp, encoding_size);
+		break;
+#else
+		abort ();
+#endif
+	      }
+	  }
+	emit_expr (&insn->u.ea.exp, encoding_size);
+      }
+      break;
+      
     default:
       abort ();
     }
@@ -1292,6 +1427,7 @@
 	      break;
 
 	    case CFI_escape:
+	    case CFI_val_encoded_addr:
 	      /* Don't bother matching these for now.  */
 	      goto fail;
 
@@ -1307,7 +1443,8 @@
 	  && (!j
 	      || j->insn == DW_CFA_advance_loc
 	      || j->insn == DW_CFA_remember_state
-	      || j->insn == CFI_escape))
+	      || j->insn == CFI_escape
+	      || j->insn == CFI_val_encoded_addr))
 	{
 	  *pfirst = j;
 	  return cie;
@@ -1329,7 +1466,8 @@
   for (i = cie->first; i ; i = i->next)
     if (i->insn == DW_CFA_advance_loc
 	|| i->insn == DW_CFA_remember_state
-	|| i->insn == CFI_escape)
+	|| i->insn == CFI_escape
+	|| i->insn == CFI_val_encoded_addr)
       break;
 
   cie->last = i;
@@ -1358,6 +1496,10 @@
   subseg_set (cfi_seg, 0);
   record_alignment (cfi_seg, EH_FRAME_ALIGNMENT);
 
+#ifdef md_fix_up_eh_frame
+  md_fix_up_eh_frame (cfi_seg);
+#endif
+
   /* Make sure check_eh_frame doesn't do anything with our output.  */
   save_flag_traditional_format = flag_traditional_format;
   flag_traditional_format = 1;
diff --git a/gas/frags.c b/gas/frags.c
index 052e76f..1cad6a7 100644
--- a/gas/frags.c
+++ b/gas/frags.c
@@ -69,7 +69,7 @@
   (void) obstack_alloc (ob, 0);
   oalign = obstack_alignment_mask (ob);
   obstack_alignment_mask (ob) = 0;
-  ptr = (fragS *) obstack_alloc (ob, SIZEOF_STRUCT_FRAG);
+  ptr = obstack_alloc (ob, SIZEOF_STRUCT_FRAG);
   obstack_alignment_mask (ob) = oalign;
   memset (ptr, 0, SIZEOF_STRUCT_FRAG);
   return ptr;
diff --git a/gas/hash.c b/gas/hash.c
index 4a4768c..06fadcb 100644
--- a/gas/hash.c
+++ b/gas/hash.c
@@ -237,7 +237,7 @@
   ++table->insertions;
 #endif
 
-  p = (struct hash_entry *) obstack_alloc (&table->memory, sizeof (*p));
+  p = obstack_alloc (&table->memory, sizeof (*p));
   p->string = key;
   p->hash = hash;
   p->data = value;
@@ -274,7 +274,7 @@
       ++table->insertions;
 #endif
 
-      p = (struct hash_entry *) obstack_alloc (&table->memory, sizeof (*p));
+      p = obstack_alloc (&table->memory, sizeof (*p));
       p->string = key;
       p->hash = hash;
       p->data = value;
diff --git a/gas/listing.c b/gas/listing.c
index 6932e86..025a2ca 100644
--- a/gas/listing.c
+++ b/gas/listing.c
@@ -471,8 +471,10 @@
 	  fclose (last_open_file);
 	}
 
+      /* Open the file in the binary mode so that ftell above can
+	 return a reliable value that we can feed to fseek below.  */
       last_open_file_info = file;
-      last_open_file = fopen (file->filename, FOPEN_RT);
+      last_open_file = fopen (file->filename, FOPEN_RB);
       if (last_open_file == NULL)
 	{
 	  file->at_end = 1;
@@ -489,7 +491,7 @@
   /* Leave room for null.  */
   size -= 1;
 
-  while (c != EOF && c != '\n')
+  while (c != EOF && c != '\n' && c != '\r')
     {
       if (count < size)
 	*p++ = c;
@@ -498,6 +500,17 @@
       c = fgetc (last_open_file);
 
     }
+
+  /* If '\r' is followed by '\n', swallow that.  Likewise, if '\n'
+     is followed by '\r', swallow that as well.  */
+  if (c == '\r' || c == '\n')
+    {
+      int next = fgetc (last_open_file);
+      if ((c == '\r' && next != '\n')
+	  || (c == '\n' && next != '\r'))
+	ungetc (next, last_open_file);
+    }
+
   if (c == EOF)
     {
       file->at_end = 1;
@@ -1100,7 +1113,7 @@
   int pos = strlen (field_name);
   char **p;
 
-  fprintf (list_file, field_name);
+  fputs (field_name, list_file);
   for (p = &argv[1]; *p != NULL; p++)
     if (**p == '-')
       {
diff --git a/gas/po/id.po b/gas/po/id.po
new file mode 100644
index 0000000..cc6cd58
--- /dev/null
+++ b/gas/po/id.po
@@ -0,0 +1,15310 @@
+# Pesan Bahasa Indonesia untuk GAS
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gas 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-10-16 10:00+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: app.c:488 app.c:502
+msgid "end of file in comment"
+msgstr "akhir dari berkas dalam komentar"
+
+#: app.c:580 app.c:627
+#, c-format
+msgid "end of file in string; '%c' inserted"
+msgstr "akhir dari berkas dalam string; '%c' dimasukan"
+
+#: app.c:653
+#, c-format
+msgid "unknown escape '\\%c' in string; ignored"
+msgstr "escape '\\%c' tidak dikenal dalam string; diabaikan"
+
+#: app.c:816
+msgid "end of file not at end of a line; newline inserted"
+msgstr "akhir dari berkas bukan di akhir dari baris; baris-baru dimasukan"
+
+#: app.c:973
+msgid "end of file in multiline comment"
+msgstr "akhir dari berkas dalam multi-baris komentar"
+
+#: app.c:1046
+msgid "end of file after a one-character quote; \\0 inserted"
+msgstr "akhir dari berkas sesudah satu-karater quote; \\0 dimasukan"
+
+#: app.c:1054
+msgid "end of file in escape character"
+msgstr "akhir dari berkas dalam karakter escape"
+
+#: app.c:1066
+msgid "missing close quote; (assumed)"
+msgstr "hilang close quote; (diasumsikan)"
+
+#: app.c:1135 app.c:1190 app.c:1201 app.c:1275
+msgid "end of file in comment; newline inserted"
+msgstr "akhir dari berkas dalam komentar; baris-baru dimasukan"
+
+#: as.c:158
+msgid "missing emulation mode name"
+msgstr "hilang nama mode emulasi"
+
+#: as.c:173
+#, c-format
+msgid "unrecognized emulation name `%s'"
+msgstr "nama emulasi `%s' tidak dikenal"
+
+#: as.c:220
+#, c-format
+msgid "GNU assembler version %s (%s) using BFD version %s\n"
+msgstr "GNU assembler versi %s (%s) menggunakan BFD versi %s\n"
+
+#: as.c:227
+#, c-format
+msgid "Usage: %s [option...] [asmfile...]\n"
+msgstr "Penggunaan: %s [opsi...] [asmfile...]\n"
+
+#: as.c:229
+#, c-format
+msgid ""
+"Options:\n"
+"  -a[sub-option...]\t  turn on listings\n"
+"                      \t  Sub-options [default hls]:\n"
+"                      \t  c      omit false conditionals\n"
+"                      \t  d      omit debugging directives\n"
+"                      \t  g      include general info\n"
+"                      \t  h      include high-level source\n"
+"                      \t  l      include assembly\n"
+"                      \t  m      include macro expansions\n"
+"                      \t  n      omit forms processing\n"
+"                      \t  s      include symbols\n"
+"                      \t  =FILE  list to FILE (must be last sub-option)\n"
+msgstr ""
+"Opsi:\n"
+"  -a[sub-opsi...]\t    aktifkan listing\n"
+"                      \t  Sub-opsi [default hls]:\n"
+"                      \t  c      abaikan kondisional salah\n"
+"                      \t  d      abaikan debugging direktif\n"
+"                      \t  g      masukan informasi umum\n"
+"                      \t  h      masukan sumber tingkat-tinggi\n"
+"                      \t  l      masukan assembly\n"
+"                      \t  m      masukan ekspansi macro\n"
+"                      \t  n      abaikan pemrosesan form\n"
+"                      \t  s      masukan simbol\n"
+"                      \t  =FILE  daftar dari BERKAS (harus akhir dari sub-opsi)\n"
+
+#: as.c:243
+#, c-format
+msgid "  --alternate             initially turn on alternate macro syntax\n"
+msgstr "  --alternate             inisialisasi aktifkan alternatif sintax macro\n"
+
+#: as.c:245
+#, c-format
+msgid "  -D                      produce assembler debugging messages\n"
+msgstr "  -D                      hasilkan pesan debug assembler\n"
+
+#: as.c:247
+#, c-format
+msgid "  --debug-prefix-map OLD=NEW  Map OLD to NEW in debug information\n"
+msgstr "  --debug-prefix-map LAMA=BARU  Peta LAMA ke BARU dalam informasi debug\n"
+
+#: as.c:249
+#, c-format
+msgid "  --defsym SYM=VAL        define symbol SYM to given value\n"
+msgstr "  --defsym SUM=VAL        definisikan simbol SIM ke nilai yang diberikan\n"
+
+#: as.c:265
+#, c-format
+msgid "                          emulate output (default %s)\n"
+msgstr "                          emulasikan keluaran (default %s)\n"
+
+#: as.c:270
+#, c-format
+msgid "  --execstack             require executable stack for this object\n"
+msgstr "  --execstack             membutuhkan executable stack untuk objek ini\n"
+
+#: as.c:272
+#, c-format
+msgid "  --noexecstack           don't require executable stack for this object\n"
+msgstr "  --nonexecstack           tidak membutuhkan executable stack untuk objek ini\n"
+
+#: as.c:275
+#, c-format
+msgid "  -f                      skip whitespace and comment preprocessing\n"
+msgstr "  -f                      lewati whitespace dan pemroses komentar\n"
+
+#: as.c:277
+#, c-format
+msgid "  -g --gen-debug          generate debugging information\n"
+msgstr "  -g --gen-debug           hasilkan informasi debug\n"
+
+#: as.c:279
+#, c-format
+msgid "  --gstabs                generate STABS debugging information\n"
+msgstr "  --gstabs                hasilkan informasi STAB debug\n"
+
+#: as.c:281
+#, c-format
+msgid "  --gstabs+               generate STABS debug info with GNU extensions\n"
+msgstr "  --gstabs+               hasilkan informasi debug STABS dengan ekstensi GNU\n"
+
+#: as.c:283
+#, c-format
+msgid "  --gdwarf-2              generate DWARF2 debugging information\n"
+msgstr "  --gdwarf-2              hasilkan DWARF2 informasi debug\n"
+
+#: as.c:285
+#, c-format
+msgid "  --hash-size=<value>     set the hash table size close to <value>\n"
+msgstr "  --hash-size=<nilai>     set ukuran tabel hash mendekati ke <nilai>\n"
+
+#: as.c:287
+#, c-format
+msgid "  --help                  show this message and exit\n"
+msgstr "  --help                  tampilkan pesan ini dan keluar\n"
+
+#: as.c:289
+#, c-format
+msgid "  --target-help           show target specific options\n"
+msgstr "  --target-help           tampilkan opsi spesifik target\n"
+
+#: as.c:291
+#, c-format
+msgid "  -I DIR                  add DIR to search list for .include directives\n"
+msgstr "  -I DIR                  tambahkan DIR ke daftar pencarian untuk direktif .include\n"
+
+#: as.c:293
+#, c-format
+msgid "  -J                      don't warn about signed overflow\n"
+msgstr "  -J                      jangan peringatkan tentang signed overflow\n"
+
+#: as.c:295
+#, c-format
+msgid "  -K                      warn when differences altered for long displacements\n"
+msgstr "  -K                      peringatkan ketika perbedaan mengubah untuk long displacements\n"
+
+#: as.c:297
+#, c-format
+msgid "  -L,--keep-locals        keep local symbols (e.g. starting with `L')\n"
+msgstr "  -L,--keep-locals        jaga simbol lokal (contoh dimulai dengan `L')\n"
+
+#: as.c:299
+#, c-format
+msgid "  -M,--mri                assemble in MRI compatibility mode\n"
+msgstr "  -M,--mri                kumpulkan dalam mode kompabilitas MRI\n"
+
+#: as.c:301
+#, c-format
+msgid "  --MD FILE               write dependency information in FILE (default none)\n"
+msgstr "  --MD BERKAS             tulis informasi dependensi dalam BERKAS (baku  kosong)\n"
+
+#: as.c:303
+#, c-format
+msgid "  -nocpp                  ignored\n"
+msgstr "  -nocpp                  diabaikan\n"
+
+#: as.c:305
+#, c-format
+msgid "  -o OBJFILE              name the object-file output OBJFILE (default a.out)\n"
+msgstr "  -o OBJFILE              nama dari berkas-objek mengeluarkan OBJFILE (baku a.out)\n"
+
+#: as.c:307
+#, c-format
+msgid "  -R                      fold data section into text section\n"
+msgstr "  -R                      fold daerah data kedalam daerah text\n"
+
+#: as.c:309
+#, c-format
+msgid ""
+"  --reduce-memory-overheads \n"
+"                          prefer smaller memory use at the cost of longer\n"
+"                          assembly times\n"
+msgstr ""
+"  --kurangi-memory-overheads \n"
+"                          lebih suka menggunakan lebih kecil memori dengan konsekuensi\n"
+"                          waktu perakitan lebih lama\n"
+
+#: as.c:313
+#, c-format
+msgid "  --statistics            print various measured statistics from execution\n"
+msgstr "  --statistics            tampilkan berbagai statistik yang diukur dari eksekusi\n"
+
+#: as.c:315
+#, c-format
+msgid "  --strip-local-absolute  strip local absolute symbols\n"
+msgstr "  --strip-local-absolute  strip local absolute symbols\n"
+
+#: as.c:317
+#, c-format
+msgid "  --traditional-format    Use same format as native assembler when possible\n"
+msgstr "  --traditional-format    Gunakan format sama seperti native assembler ketika memungkinkan\n"
+
+#: as.c:319
+#, c-format
+msgid "  --version               print assembler version number and exit\n"
+msgstr "  --version               tampilkan nomor versi perakit dan keluar\n"
+
+#: as.c:321
+#, c-format
+msgid "  -W  --no-warn           suppress warnings\n"
+msgstr "  -W  --no-warn           tekan peringatan\n"
+
+#: as.c:323
+#, c-format
+msgid "  --warn                  don't suppress warnings\n"
+msgstr "  --warn                  jangan tekan peringatan\n"
+
+#: as.c:325
+#, c-format
+msgid "  --fatal-warnings        treat warnings as errors\n"
+msgstr "  --fatal-warnings        perlakukan peringatan sebagai erros\n"
+
+#: as.c:328
+#, c-format
+msgid ""
+"  --itbl INSTTBL          extend instruction set to include instructions\n"
+"                          matching the specifications defined in file INSTTBL\n"
+msgstr ""
+"  --itbl INSTTBL          eksten instruksi set termasuk instruksi\n"
+"                          cocok dengan spesifikasi yang didefinisikan dalam berkas INSTTBL\n"
+
+#: as.c:332
+#, c-format
+msgid "  -w                      ignored\n"
+msgstr "  -w                      abaikan\n"
+
+#: as.c:334
+#, c-format
+msgid "  -X                      ignored\n"
+msgstr "  -X                      abaikan\n"
+
+#: as.c:336
+#, c-format
+msgid "  -Z                      generate object file even after errors\n"
+msgstr "  -Z                      hasilkan berkas objek walaupun setelah errors\n"
+
+#: as.c:338
+#, c-format
+msgid ""
+"  --listing-lhs-width     set the width in words of the output data column of\n"
+"                          the listing\n"
+msgstr ""
+"  --listing-lhs-width     set lebar dalam kata dari keluaran data kolom dari\n"
+"                          listing\n"
+
+#: as.c:341
+#, c-format
+msgid ""
+"  --listing-lhs-width2    set the width in words of the continuation lines\n"
+"                          of the output data column; ignored if smaller than\n"
+"                          the width of the first line\n"
+msgstr ""
+"  --listing-lhs-width2    set lebar dari kata dari baris kelanjutan\n"
+"                          dari kolom keluaran data; abaikan jika lebih kecil dari\n"
+"                          lebar dari baris pertama\n"
+
+#: as.c:345
+#, c-format
+msgid ""
+"  --listing-rhs-width     set the max width in characters of the lines from\n"
+"                          the source file\n"
+msgstr ""
+"  --listing-rhs-width     set lebar maksimal dalam karakter dari baris dari\n"
+"                          berkas sumber\n"
+
+#: as.c:348
+#, c-format
+msgid ""
+"  --listing-cont-lines    set the maximum number of continuation lines used\n"
+"                          for the output data column of the listing\n"
+msgstr ""
+"  --listing-cont-lines    set jumlah maksimal dari baris kelanjutan yang digunakan\n"
+"                          untuk kolom keluaran data dari listing\n"
+
+#: as.c:351
+#, c-format
+msgid "  @FILE                   read options from FILE\n"
+msgstr "  @BERKAS                 baca opsi dari BERKAS\n"
+
+#: as.c:359
+#, c-format
+msgid "Report bugs to %s\n"
+msgstr "Laporkan bugs ke %s\n"
+
+#: as.c:564
+#, c-format
+msgid "unrecognized option -%c%s"
+msgstr "opsi tidak dikenal -%c%s"
+
+#. This output is intended to follow the GNU standards document.
+#: as.c:602
+#, c-format
+msgid "GNU assembler %s\n"
+msgstr "GNU perakit %s\n"
+
+#: as.c:603
+#, c-format
+msgid "Copyright 2007 Free Software Foundation, Inc.\n"
+msgstr "Hak cipta 2007 Free Software Foundation, Inc.\n"
+
+#: as.c:604
+#, c-format
+msgid ""
+"This program is free software; you may redistribute it under the terms of\n"
+"the GNU General Public License version 3 or later.\n"
+"This program has absolutely no warranty.\n"
+msgstr ""
+"Aplikasi ini adalah perangkat lunak bebas; anda boleh mendistribusikannya dibawah ketentuan dari\n"
+"Lisensi Umum Publik GNU versi 3 atau lebih lanjut.\n"
+"Aplikasi ini tidak memiliki garansi apapun.\n"
+
+#: as.c:608
+#, c-format
+msgid "This assembler was configured for a target of `%s'.\n"
+msgstr "Perakit ini dikonfigurasikan untuk sebuah target dari `%s'.\n"
+
+#: as.c:615
+msgid "multiple emulation names specified"
+msgstr "multiple nama emulasi dispesifikasikan"
+
+#: as.c:617
+msgid "emulations not handled in this configuration"
+msgstr "emulasi tidak ditangani dalam konfigurasi ini"
+
+#: as.c:622
+#, c-format
+msgid "alias = %s\n"
+msgstr "alias = %s\n"
+
+#: as.c:623
+#, c-format
+msgid "canonical = %s\n"
+msgstr "kanonikal = %s\n"
+
+#: as.c:624
+#, c-format
+msgid "cpu-type = %s\n"
+msgstr "tipe-cpu = %s\n"
+
+#: as.c:626
+#, c-format
+msgid "format = %s\n"
+msgstr "format = %s\n"
+
+#: as.c:629
+#, c-format
+msgid "bfd-target = %s\n"
+msgstr "target-bfd = %s\n"
+
+#: as.c:646
+msgid "bad defsym; format is --defsym name=value"
+msgstr "bad defsym; format adalah --defsym nama=nilai"
+
+#: as.c:666
+msgid "no file name following -t option"
+msgstr "tidak ada nama berkas mengikuti opsi -t"
+
+#: as.c:681
+#, c-format
+msgid "failed to read instruction table %s\n"
+msgstr "gagal untuk membaca tabel instruksi %s\n"
+
+#: as.c:852
+#, c-format
+msgid "invalid listing option `%c'"
+msgstr "opsi listing `%c' tidak valid"
+
+#: as.c:905
+msgid "--hash-size needs a numeric argument"
+msgstr "--hash-size membutuhkan sebuah argumen numerik"
+
+#: as.c:930
+#, c-format
+msgid "%s: total time in assembly: %ld.%06ld\n"
+msgstr "%s: total waktu dalam perakitan: %ld.%06ld\n"
+
+#: as.c:933
+#, c-format
+msgid "%s: data size %ld\n"
+msgstr "%s: ukuran data %ld\n"
+
+#: as.c:1245
+#, c-format
+msgid "%d warnings, treating warnings as errors"
+msgstr "%d peringatan, memperlakukan peringatan sebagai errors"
+
+#: as.h:237
+#, c-format
+msgid "Case value %ld unexpected at line %d of file \"%s\"\n"
+msgstr "Masalah nilai %ld tidak diduga di baris %d dari berkas \"%s\"\n"
+
+#.
+#. * We have a GROSS internal error.
+#. * This should never happen.
+#.
+#: atof-generic.c:417 config/tc-m68k.c:3396
+msgid "failed sanity check"
+msgstr "gagal pemeriksaan keadaan"
+
+#: cgen.c:113 config/tc-alpha.c:1926 config/tc-alpha.c:1950
+#: config/tc-arc.c:1681 config/tc-d10v.c:550 config/tc-d30v.c:538
+#: config/tc-mn10200.c:1100 config/tc-mn10300.c:1749 config/tc-ppc.c:2510
+#: config/tc-ppc.c:2734 config/tc-ppc.c:2746 config/tc-s390.c:1201
+#: config/tc-s390.c:1301 config/tc-s390.c:1430 config/tc-v850.c:1730
+#: config/tc-v850.c:1753 config/tc-v850.c:1956
+msgid "too many fixups"
+msgstr "terlalu banyak perbaikan"
+
+#: cgen.c:400 cgen.c:420 config/tc-arc.c:1662 config/tc-d10v.c:461
+#: config/tc-d30v.c:453 config/tc-mn10200.c:1042 config/tc-mn10300.c:1674
+#: config/tc-ppc.c:2549 config/tc-s390.c:1189 config/tc-v850.c:1932
+#: config/tc-z80.c:422
+msgid "illegal operand"
+msgstr "operan tidak legal"
+
+#: cgen.c:424 config/tc-arc.c:1664 config/tc-avr.c:539 config/tc-d10v.c:463
+#: config/tc-d30v.c:455 config/tc-h8300.c:449 config/tc-mcore.c:662
+#: config/tc-mmix.c:488 config/tc-mn10200.c:1045 config/tc-mn10300.c:1677
+#: config/tc-msp430.c:452 config/tc-or32.c:307 config/tc-ppc.c:2551
+#: config/tc-s390.c:1191 config/tc-sh.c:1359 config/tc-sh64.c:2213
+#: config/tc-v850.c:1935 config/tc-z80.c:575 config/tc-z8k.c:350
+msgid "missing operand"
+msgstr "operan hilang"
+
+#: cgen.c:798
+msgid "a reloc on this operand implies an overflow"
+msgstr "sebuah relokasi di operan ini mengindikasikan sebuah overflow"
+
+#: cgen.c:821
+msgid "operand mask overflow"
+msgstr "operan mask overflow"
+
+#. We can't actually support subtracting a symbol.
+#: cgen.c:884 config/tc-arc.c:1247 config/tc-arm.c:1527 config/tc-arm.c:8182
+#: config/tc-arm.c:8233 config/tc-arm.c:8466 config/tc-arm.c:9189
+#: config/tc-arm.c:9992 config/tc-arm.c:10020 config/tc-arm.c:10278
+#: config/tc-arm.c:10295 config/tc-arm.c:10417 config/tc-avr.c:1057
+#: config/tc-cris.c:3984 config/tc-d10v.c:1502 config/tc-d30v.c:1903
+#: config/tc-mips.c:4346 config/tc-mips.c:5470 config/tc-mips.c:6408
+#: config/tc-mips.c:6984 config/tc-msp430.c:1937 config/tc-ppc.c:5661
+#: config/tc-spu.c:907 config/tc-spu.c:931 config/tc-v850.c:2271
+#: config/tc-xstormy16.c:484 config/tc-xtensa.c:5756 config/tc-xtensa.c:11697
+msgid "expression too complex"
+msgstr "ekspresi terlalu kompleks"
+
+#: cgen.c:978 config/tc-arc.c:1308 config/tc-ppc.c:5786 config/tc-s390.c:2006
+#: config/tc-v850.c:2311 config/tc-xstormy16.c:538
+msgid "unresolved expression that must be resolved"
+msgstr "ekspresi tidak terselesaikan harus diselesaikan"
+
+#: cgen.c:1003 config/tc-xstormy16.c:563
+#, c-format
+msgid "internal error: can't install fix for reloc type %d (`%s')"
+msgstr "internal error: tidak dapat memasang fix untuk tipe relokasi %d (`%s')"
+
+#: cgen.c:1033
+msgid "relocation is not supported"
+msgstr "relokasi tidak didukung"
+
+#: cond.c:83
+msgid "invalid identifier for \".ifdef\""
+msgstr "identifier tidak valid untuk \".ifdef\""
+
+#: cond.c:150
+msgid "non-constant expression in \".if\" statement"
+msgstr "bukan-konstan ekspresi dalam pernyataan \".if\""
+
+#: cond.c:277
+msgid "bad format for ifc or ifnc"
+msgstr "format buruk untuk ifc atau ifnc"
+
+#: cond.c:307
+msgid "\".elseif\" without matching \".if\""
+msgstr "\".elseif\" tanpa pencocokan \".if\""
+
+#: cond.c:311
+msgid "\".elseif\" after \".else\""
+msgstr "\".elseif\" sesudah \".else\""
+
+#: cond.c:314 cond.c:420
+msgid "here is the previous \"else\""
+msgstr "disini adalah sebelum \"else\""
+
+#: cond.c:317 cond.c:423
+msgid "here is the previous \"if\""
+msgstr "disini adalah sebelum \"if\""
+
+#: cond.c:346
+msgid "non-constant expression in \".elseif\" statement"
+msgstr "bukan-konstan ekspresi dalam pernyataan \".elseif\""
+
+#: cond.c:384
+msgid "\".endif\" without \".if\""
+msgstr "\".endif\" tanpa \".if\""
+
+#: cond.c:413
+msgid "\".else\" without matching \".if\""
+msgstr "\".else\" tanpa pencocokan \".if\""
+
+#: cond.c:417
+msgid "duplicate \"else\""
+msgstr "duplikasi \"else\""
+
+#: cond.c:468
+msgid ".ifeqs syntax error"
+msgstr ".ifeqs syntax error"
+
+#: cond.c:549
+msgid "end of macro inside conditional"
+msgstr "end dari makro dalam kondisional"
+
+#: cond.c:551
+msgid "end of file inside conditional"
+msgstr "end dari berkas didalam kondisional"
+
+#: cond.c:554
+msgid "here is the start of the unterminated conditional"
+msgstr "disini adalah awal dari kondisional tidak terselesaikan"
+
+#: cond.c:558
+msgid "here is the \"else\" of the unterminated conditional"
+msgstr "disini adalah \"else\" dari kondisional tidak terselesaikan"
+
+#: config/atof-ieee.c:141
+msgid "cannot create floating-point number"
+msgstr "tidak dapat membuat nomor floating-point"
+
+#: config/atof-ieee.c:784 config/atof-vax.c:450 config/tc-arm.c:923
+#: config/tc-ia64.c:11316 config/tc-tic30.c:1261 config/tc-tic4x.c:2598
+msgid "Unrecognized or unsupported floating point constant"
+msgstr "Tidak dikenal atau tidak didukung konstanta floating point"
+
+#: config/obj-aout.c:85
+#, c-format
+msgid "Attempt to put a common symbol into set %s"
+msgstr "Mencoba untuk meletakan sebuah simbol umum kedalam set %s"
+
+#: config/obj-aout.c:89
+#, c-format
+msgid "Attempt to put an undefined symbol into set %s"
+msgstr "Mencoba untuk meletakan sebuah simbol tidak terdefinisi dalam set %s"
+
+#: config/obj-aout.c:116 config/obj-coff.c:1339
+#, c-format
+msgid "Symbol `%s' can not be both weak and common"
+msgstr "Simbol `%s' tidak dapat keduanya lemah dan umum"
+
+#: config/obj-coff.c:133
+#, c-format
+msgid "Inserting \"%s\" into structure table failed: %s"
+msgstr "Memasukan \"%s\" kedalam tabel struktur gagal: %s"
+
+#. Zero is used as an end marker in the file.
+#: config/obj-coff.c:366
+msgid "Line numbers must be positive integers\n"
+msgstr "Nomor baris harus berupa integer positif\n"
+
+#: config/obj-coff.c:398
+msgid ".ln pseudo-op inside .def/.endef: ignored."
+msgstr ".ln pseudo-op didalam .def/.endef; diabaikan."
+
+#: config/obj-coff.c:440 ecoff.c:3240
+msgid ".loc outside of .text"
+msgstr ".loc diluar dari .text"
+
+#: config/obj-coff.c:447
+msgid ".loc pseudo-op inside .def/.endef: ignored."
+msgstr ".loc pseudo-op didalam .def/.endef: diabaikan."
+
+#: config/obj-coff.c:528
+msgid ".def pseudo-op used inside of .def/.endef: ignored."
+msgstr ".def pseudo-op digunakan didalam dari .def/.endef: diabaikan."
+
+#: config/obj-coff.c:567
+msgid ".endef pseudo-op used outside of .def/.endef: ignored."
+msgstr ".endef pseudo-op digunakan diluar dari .def/.endef: diabaikan."
+
+#: config/obj-coff.c:606
+#, c-format
+msgid "`%s' symbol without preceding function"
+msgstr "`%s' simbol tanpa fungsi yang mengawali"
+
+#: config/obj-coff.c:693
+#, c-format
+msgid "unexpected storage class %d"
+msgstr "kelas penyimpanan tidak diduga %d"
+
+#: config/obj-coff.c:801
+msgid ".dim pseudo-op used outside of .def/.endef: ignored."
+msgstr ".dim pseudo-op digunakan diluar dari .def/.endef: diabaikan."
+
+#: config/obj-coff.c:821
+msgid "badly formed .dim directive ignored"
+msgstr "badly formed .dim direktive diabaikan"
+
+#: config/obj-coff.c:870
+msgid ".size pseudo-op used outside of .def/.endef ignored."
+msgstr ".size pseudo-op digunakan diluar deari .def/.endef diabaikan."
+
+#: config/obj-coff.c:885
+msgid ".scl pseudo-op used outside of .def/.endef ignored."
+msgstr ".scl psudo-op digunakan diluar dari .def/.endef diabaikan."
+
+#: config/obj-coff.c:902
+msgid ".tag pseudo-op used outside of .def/.endef ignored."
+msgstr ".tag pseudo-op digunakan diluar dari .def/.endef diabaikan."
+
+#: config/obj-coff.c:920
+#, c-format
+msgid "tag not found for .tag %s"
+msgstr "tag tidak ditemukan untuk .tag %s"
+
+#: config/obj-coff.c:933
+msgid ".type pseudo-op used outside of .def/.endef ignored."
+msgstr ".type pseudo-op digunakan diluar dari .def/.endef diabaikan."
+
+#: config/obj-coff.c:952
+msgid ".val pseudo-op used outside of .def/.endef ignored."
+msgstr ".val pseudo-op digunakan diluar dari .def/.endef diabaikan."
+
+#: config/obj-coff.c:1119
+msgid "badly formed .weak directive ignored"
+msgstr "badly formed .wek direktive diabaikan"
+
+#: config/obj-coff.c:1297
+msgid "mismatched .eb"
+msgstr "tidak cocok .eb"
+
+#: config/obj-coff.c:1318
+#, c-format
+msgid "C_EFCN symbol for %s out of scope"
+msgstr "C_EFCN simbol untuk %s diluar dari jangkauan"
+
+#. STYP_INFO
+#. STYP_LIB
+#. STYP_OVER
+#: config/obj-coff.c:1590
+#, c-format
+msgid "unsupported section attribute '%c'"
+msgstr "daerah atribut tidak didukung '%c'"
+
+#: config/obj-coff.c:1594 config/tc-ppc.c:4741
+#, c-format
+msgid "unknown section attribute '%c'"
+msgstr "daerah atribut tidak dikenal '%c'"
+
+#: config/obj-coff.c:1622 config/tc-ppc.c:4759 config/tc-tic54x.c:4011
+#: read.c:2760
+#, c-format
+msgid "error setting flags for \"%s\": %s"
+msgstr "error menset tanda untuk \"%s\": %s"
+
+#: config/obj-coff.c:1633
+#, c-format
+msgid "Ignoring changed section attributes for %s"
+msgstr "Mengabaikan perubahan daerah atribut untuk %s"
+
+#: config/obj-coff.c:1764
+#, c-format
+msgid "0x%lx: \"%s\" type = %ld, class = %d, segment = %d\n"
+msgstr "0x%lx: \"%s\" tipe = %ld, kelas = %d, segmen = %d\n"
+
+#: config/obj-ecoff.c:125
+msgid "Can't set GP value"
+msgstr "Tidak dapat menset nilai GP"
+
+#: config/obj-ecoff.c:132
+msgid "Can't set register masks"
+msgstr "Tidak dapat menset mask register"
+
+#: config/obj-elf.c:323 config/tc-sparc.c:3946 config/tc-v850.c:450
+#, c-format
+msgid "bad .common segment %s"
+msgstr "segmen .%s .common buruk"
+
+#: config/obj-elf.c:601
+#, c-format
+msgid "setting incorrect section type for %s"
+msgstr "konfigurasi tipe daerah tidak benar untuk %s"
+
+#: config/obj-elf.c:606
+#, c-format
+msgid "ignoring incorrect section type for %s"
+msgstr "mengabaikan tipe daerah tidak benar untuk %s"
+
+#: config/obj-elf.c:648
+#, c-format
+msgid "setting incorrect section attributes for %s"
+msgstr "konfigurasi atribut daerah tidak benar untuk %s"
+
+#: config/obj-elf.c:700
+#, c-format
+msgid "ignoring changed section type for %s"
+msgstr "mengabaikan perubahan tipe daerah untuk %s"
+
+#: config/obj-elf.c:712
+#, c-format
+msgid "ignoring changed section attributes for %s"
+msgstr "mengabaikan perubahan atribut daerah untuk %s"
+
+#: config/obj-elf.c:714
+#, c-format
+msgid "ignoring changed section entity size for %s"
+msgstr "mengabaikan perubahan besar daerah entity untuk %s"
+
+#: config/obj-elf.c:767
+msgid "unrecognized .section attribute: want a,w,x,M,S,G,T"
+msgstr "tidak dikenal atribut .section: ingin a,w,x,M,S,G,T"
+
+#: config/obj-elf.c:809 read.c:2744
+msgid "unrecognized section type"
+msgstr "tipe daerah tidak dikenal"
+
+#: config/obj-elf.c:839
+msgid "unrecognized section attribute"
+msgstr "atribut daerah tidak dikenal"
+
+#: config/obj-elf.c:870
+msgid "missing name"
+msgstr "nama hilang"
+
+#: config/obj-elf.c:998
+msgid "invalid merge entity size"
+msgstr "ukuran gabungan entity tidak valid"
+
+#: config/obj-elf.c:1005
+msgid "entity size for SHF_MERGE not specified"
+msgstr "ukuran entity untuk SHF_MERGE tidak dispesifikasikan"
+
+#: config/obj-elf.c:1025
+msgid "group name for SHF_GROUP not specified"
+msgstr "nama grup untuk SHF_GROUP tidak dispesifikasikan"
+
+#: config/obj-elf.c:1038
+msgid "character following name is not '#'"
+msgstr "karakter mengikuti nama bukan '#'"
+
+#: config/obj-elf.c:1157
+msgid ".previous without corresponding .section; ignored"
+msgstr ".previous tanpa .section yang berhubungan; diabaikan"
+
+#: config/obj-elf.c:1183
+msgid ".popsection without corresponding .pushsection; ignored"
+msgstr ".popsection tanpat .pushsection yang berhubungan; diabaikan"
+
+#: config/obj-elf.c:1235
+msgid "expected comma after name in .symver"
+msgstr "diduga koma setelah nama dalam .symver"
+
+#: config/obj-elf.c:1259
+#, c-format
+msgid "missing version name in `%s' for symbol `%s'"
+msgstr "hilang nama versi dalam `%s' untuk simbol `%s'"
+
+#: config/obj-elf.c:1270
+#, c-format
+msgid "multiple versions [`%s'|`%s'] for symbol `%s'"
+msgstr "multiple versi [`%s'|`%s'] untuk simbol `%s'"
+
+#: config/obj-elf.c:1307
+#, c-format
+msgid "expected `%s' to have already been set for .vtable_inherit"
+msgstr "diduga `%s' telah diset untuk .vtable_inherit"
+
+#: config/obj-elf.c:1317
+msgid "expected comma after name in .vtable_inherit"
+msgstr "diduga koma setelah nama dalam .vtable_inherit"
+
+#: config/obj-elf.c:1377
+msgid "expected comma after name in .vtable_entry"
+msgstr "diduga koma setelah nama dalam .vtable_entry"
+
+#: config/obj-elf.c:1500
+msgid "expected quoted string"
+msgstr "diduga quoted string"
+
+#: config/obj-elf.c:1520
+#, c-format
+msgid "expected comma after name `%s' in .size directive"
+msgstr "diduga koma setelah nama `%s' dalam .size direktif"
+
+#: config/obj-elf.c:1529
+msgid "missing expression in .size directive"
+msgstr "hilang ekspresi dalam .size direktif"
+
+#: config/obj-elf.c:1656
+#, c-format
+msgid "symbol '%s' is already defined"
+msgstr "simbol '%s' telah terdefinisi"
+
+#: config/obj-elf.c:1671
+#, c-format
+msgid "unrecognized symbol type \"%s\""
+msgstr "tipe simbol \"%s\" tidak dikenal"
+
+#: config/obj-elf.c:1842
+msgid ".size expression too complicated to fix up"
+msgstr "ekspresi .size terlalu kompleks untuk diperbaiki"
+
+#: config/obj-elf.c:1874
+#, c-format
+msgid "invalid attempt to declare external version name as default in symbol `%s'"
+msgstr "tidak valid attemt untuk mendeklarasikan versi nama eksternal sebagai default dalam simbol `%s'"
+
+#: config/obj-elf.c:1935 ecoff.c:3598
+#, c-format
+msgid "symbol `%s' can not be both weak and common"
+msgstr "simbol `%s' tidak dapat keduanya lemah dan umum"
+
+#: config/obj-elf.c:2042
+#, c-format
+msgid "assuming all members of group `%s' are COMDAT"
+msgstr "mengasumsikan seluruh anggota dari grup `%s' adalah COMDAT"
+
+#: config/obj-elf.c:2064
+#, c-format
+msgid "can't create group: %s"
+msgstr "tidak dapat membuat grup: %s"
+
+#: config/obj-elf.c:2174
+#, c-format
+msgid "failed to set up debugging information: %s"
+msgstr "gagal men set up informasi debug: %s"
+
+#: config/obj-elf.c:2194
+#, c-format
+msgid "can't start writing .mdebug section: %s"
+msgstr "tidak dapat memulai menulis daerah .mdebug: %s"
+
+#: config/obj-elf.c:2202
+#, c-format
+msgid "could not write .mdebug section: %s"
+msgstr "tidak dapat menulis daerah .mdebug: %s"
+
+#: config/obj-som.c:58
+msgid "Only one .compiler pseudo-op per file!"
+msgstr "Hanya satu .compiler pseudo-op setiap berkas!"
+
+#: config/obj-som.c:75 config/obj-som.c:146 config/obj-som.c:188
+msgid "Expected quoted string"
+msgstr "diduga quoted string"
+
+#: config/obj-som.c:88
+msgid ".compiler directive missing language and version"
+msgstr ".compiler direktif hilang bahasa dan versi"
+
+#: config/obj-som.c:98
+msgid ".compiler directive missing version"
+msgstr ".compiler direktif hilang versi"
+
+#: config/obj-som.c:114
+#, c-format
+msgid "FATAL: Attaching compiler header %s"
+msgstr "FATAL: Attaching kompiler header %s"
+
+#: config/obj-som.c:129
+msgid "Only one .version pseudo-op per file!"
+msgstr "hanya satu .version pseudo-op setiap berkas!"
+
+#: config/obj-som.c:153
+#, c-format
+msgid "attaching version header %s: %s"
+msgstr "memasang header versi %s: %s"
+
+#: config/obj-som.c:171
+msgid "Only one .copyright pseudo-op per file!"
+msgstr "Hanya satu .copyright pseudo-op setiap berkas!"
+
+#: config/obj-som.c:195
+#, c-format
+msgid "attaching copyright header %s: %s"
+msgstr "attaching copyright header %s: %s"
+
+#: config/tc-alpha.c:592
+#, c-format
+msgid "No !literal!%ld was found"
+msgstr "Tidak ada !literal!%ld ditemukan"
+
+#: config/tc-alpha.c:599
+#, c-format
+msgid "No !tlsgd!%ld was found"
+msgstr "Tidak ada !tlsgd!%ld ditemukan"
+
+#: config/tc-alpha.c:606
+#, c-format
+msgid "No !tlsldm!%ld was found"
+msgstr "Tidak ada !tlsldm!%ld ditemukan"
+
+#: config/tc-alpha.c:615
+#, c-format
+msgid "No ldah !gpdisp!%ld was found"
+msgstr "Tidak ada ldah !gpdisp!%ld ditemukan"
+
+#: config/tc-alpha.c:665
+#, c-format
+msgid "too many !literal!%ld for %s"
+msgstr "terlalu banyak !literal!%ld untuk %s"
+
+#: config/tc-alpha.c:695
+#, c-format
+msgid "No lda !gpdisp!%ld was found"
+msgstr "Tidak ada lda !gpdisp!%ld ditemukan"
+
+#. Only support one relocation op per insn.
+#: config/tc-alpha.c:852
+msgid "More than one relocation op per insn"
+msgstr "Lebih dari satu relokasi op per insn"
+
+#: config/tc-alpha.c:868
+msgid "No relocation operand"
+msgstr "Tidak ada operand relokasi"
+
+#: config/tc-alpha.c:878
+#, c-format
+msgid "Unknown relocation operand: !%s"
+msgstr "operan relokasi tidak diketahui: !%s"
+
+#: config/tc-alpha.c:888
+#, c-format
+msgid "no sequence number after !%s"
+msgstr "tidak ada nomor pengurutan setelah !%s"
+
+#: config/tc-alpha.c:898
+#, c-format
+msgid "!%s does not use a sequence number"
+msgstr "!%s tidak menggunakan sebuah nomor pengurutan"
+
+#: config/tc-alpha.c:908
+#, c-format
+msgid "Bad sequence number: !%s!%s"
+msgstr "Nomor pengurutan buruk: !%s!%s"
+
+#: config/tc-alpha.c:1123 config/tc-alpha.c:3140
+#, c-format
+msgid "inappropriate arguments for opcode `%s'"
+msgstr "argumen tidak sesuai untuk opcode `%s'"
+
+#: config/tc-alpha.c:1125 config/tc-alpha.c:3142
+#, c-format
+msgid "opcode `%s' not supported for target %s"
+msgstr "opcode `%s' tidak didukung untuk target %s"
+
+#: config/tc-alpha.c:1129 config/tc-alpha.c:3146 config/tc-avr.c:1326
+#: config/tc-msp430.c:1829
+#, c-format
+msgid "unknown opcode `%s'"
+msgstr "opcode `%s' tidak dikenal"
+
+#: config/tc-alpha.c:1209 config/tc-alpha.c:1384
+msgid "overflow in literal (.lita) table"
+msgstr "overflow dalam literal (.lita) tabel"
+
+#: config/tc-alpha.c:1216 config/tc-alpha.c:1240 config/tc-alpha.c:1397
+#: config/tc-alpha.c:2050 config/tc-alpha.c:2094 config/tc-alpha.c:2163
+#: config/tc-alpha.c:2246 config/tc-alpha.c:2471 config/tc-alpha.c:2569
+msgid "macro requires $at register while noat in effect"
+msgstr "makro membutuhkan $at register ketika tida berada dalam efek"
+
+#: config/tc-alpha.c:1218 config/tc-alpha.c:1242 config/tc-alpha.c:1399
+msgid "macro requires $at while $at in use"
+msgstr "makro membutuhkan $at ketika $at sedang digunakan"
+
+#: config/tc-alpha.c:1346
+msgid "bignum invalid; zero assumed"
+msgstr "bignum tidak valid zero diasumsikan"
+
+#: config/tc-alpha.c:1348
+msgid "floating point number invalid; zero assumed"
+msgstr "nomor floating point tidak valid; nol diasumsikan"
+
+#: config/tc-alpha.c:1353
+msgid "can't handle expression"
+msgstr "tidak dapat menangani ekspresi"
+
+#: config/tc-alpha.c:1390
+msgid "overflow in literal (.lit8) table"
+msgstr "overflow dalam tabel literal (.lit8)"
+
+#: config/tc-alpha.c:1674
+#, c-format
+msgid "too many ldah insns for !gpdisp!%ld"
+msgstr "terlalu banyak ldah insns untuk !gpdisp!%ld"
+
+#: config/tc-alpha.c:1676 config/tc-alpha.c:1688
+#, c-format
+msgid "both insns for !gpdisp!%ld must be in the same section"
+msgstr "kedua insns untuk !gpdisp!%ld harus berada dalam daerah yang sama"
+
+#: config/tc-alpha.c:1686
+#, c-format
+msgid "too many lda insns for !gpdisp!%ld"
+msgstr "terlalu banyak lda insns untuk !gpdisp!%ld"
+
+#: config/tc-alpha.c:1742
+#, c-format
+msgid "too many lituse insns for !lituse_tlsgd!%ld"
+msgstr "terlalu banyak lituse insns untuk !lituse_tlsgd!%ld"
+
+#: config/tc-alpha.c:1745
+#, c-format
+msgid "too many lituse insns for !lituse_tlsldm!%ld"
+msgstr "terlalu banyak lituse insns untuk !lituse_tlsldm!%ld"
+
+#: config/tc-alpha.c:1762
+#, c-format
+msgid "duplicate !tlsgd!%ld"
+msgstr "duplikasi !tlsgd!%ld"
+
+#: config/tc-alpha.c:1764
+#, c-format
+msgid "sequence number in use for !tlsldm!%ld"
+msgstr "nomor pengurutan sedang digunakan untuk !tlsldm!%ld"
+
+#: config/tc-alpha.c:1778
+#, c-format
+msgid "duplicate !tlsldm!%ld"
+msgstr "duplikasi !tlsldm!%ld"
+
+#: config/tc-alpha.c:1780
+#, c-format
+msgid "sequence number in use for !tlsgd!%ld"
+msgstr "nomor pengurutan sedang digunakan untuk !tlsgd!%ld"
+
+#: config/tc-alpha.c:1823 config/tc-arc.c:292 config/tc-mn10200.c:856
+#: config/tc-mn10300.c:1146 config/tc-ppc.c:1649 config/tc-s390.c:604
+#: config/tc-v850.c:1556
+msgid "operand"
+msgstr "operan"
+
+#: config/tc-alpha.c:1962
+msgid "invalid relocation for instruction"
+msgstr "relokasi untuk instruksi tidak valid"
+
+#: config/tc-alpha.c:1974
+msgid "invalid relocation for field"
+msgstr "relokasi untuk daerah tidak valid"
+
+#: config/tc-alpha.c:2761
+msgid "can not resolve expression"
+msgstr "tidak dapat menyelesaikan ekspresi"
+
+#: config/tc-alpha.c:3276 config/tc-ppc.c:1948 config/tc-ppc.c:4504
+#, c-format
+msgid ".COMMon length (%ld.) <0! Ignored."
+msgstr ".COMMon length (%ld.) <! Diabaikan."
+
+#: config/tc-alpha.c:3305 config/tc-sparc.c:3816 config/tc-v850.c:245
+msgid "Ignoring attempt to re-define symbol"
+msgstr "Mengabaikan percobaan untuk meredefini simbol"
+
+#: config/tc-alpha.c:3314 config/tc-alpha.c:3323 config/tc-ppc.c:4541
+#: config/tc-sparc.c:3824
+#, c-format
+msgid "Length of .comm \"%s\" is already %ld. Not changed to %ld."
+msgstr "Panjang dari .comm \"%s\" telah %ld. Tidak dapat mengubah ke %ld."
+
+#: config/tc-alpha.c:3440 ecoff.c:3054
+msgid ".ent directive has no name"
+msgstr ".ent direktif tidak memiliki nama"
+
+#: config/tc-alpha.c:3448
+msgid "nested .ent directives"
+msgstr "bertelur .ent direktif"
+
+#: config/tc-alpha.c:3492 ecoff.c:3005
+msgid ".end directive has no name"
+msgstr ".end direktif tidak memiliki nama"
+
+#: config/tc-alpha.c:3501
+msgid ".end directive without matching .ent"
+msgstr ".end direktif tanpa pencocokan .ent"
+
+#: config/tc-alpha.c:3503
+msgid ".end directive names different symbol than .ent"
+msgstr "nama .end direktif memiliki simbol berbeda dari .ent"
+
+#: config/tc-alpha.c:3546 ecoff.c:3140
+msgid ".fmask outside of .ent"
+msgstr ".fmask diluar dari .ent"
+
+#: config/tc-alpha.c:3548 config/tc-score.c:5816 ecoff.c:3204
+msgid ".mask outside of .ent"
+msgstr ".mask diluar dari .ent"
+
+#: config/tc-alpha.c:3556 ecoff.c:3147
+msgid "bad .fmask directive"
+msgstr "direktif .fmask buruk"
+
+#: config/tc-alpha.c:3558 ecoff.c:3211
+msgid "bad .mask directive"
+msgstr "direktif .mask buruk"
+
+#: config/tc-alpha.c:3591 config/tc-mips.c:14967 config/tc-score.c:5959
+#: ecoff.c:3168
+msgid ".frame outside of .ent"
+msgstr ".frame diluar dari .ent"
+
+#: config/tc-alpha.c:3602 ecoff.c:3179
+msgid "bad .frame directive"
+msgstr ".frame direktif buruk"
+
+#: config/tc-alpha.c:3634
+msgid ".prologue directive without a preceding .ent directive"
+msgstr ".prologue direktif tanpa diawali .ent direktif"
+
+#: config/tc-alpha.c:3652
+#, c-format
+msgid "Invalid argument %d to .prologue."
+msgstr "Argumen %d tidak valid ke .prologue."
+
+#: config/tc-alpha.c:3743
+msgid "ECOFF debugging is disabled."
+msgstr "ECOFF debug disabled"
+
+#: config/tc-alpha.c:3757
+msgid ".ent directive without matching .end"
+msgstr ".ent direktif tanpa pencocokan .end"
+
+#: config/tc-alpha.c:3842
+msgid ".usepv directive has no name"
+msgstr ".usepv direktif tidak memiliki nama"
+
+#: config/tc-alpha.c:3853
+msgid ".usepv directive has no type"
+msgstr ".usepv direktif tidak memiliki tipe"
+
+#: config/tc-alpha.c:3868
+msgid "unknown argument for .usepv"
+msgstr "argumen tidak dikenal untuk .usepv"
+
+#: config/tc-alpha.c:3901
+msgid "Unknown section directive"
+msgstr "Daerah direktif tidak dikenal"
+
+#: config/tc-alpha.c:3936
+msgid ".ent directive has no symbol"
+msgstr ".ent direktif tidak memiliki simbol"
+
+#: config/tc-alpha.c:3961
+msgid "Bad .frame directive 1./2. param"
+msgstr ".frame direktif buruk 1./2. param"
+
+#: config/tc-alpha.c:3973
+msgid "Bad .frame directive 3./4. param"
+msgstr ".fram direktif buruk 3./4. param"
+
+#: config/tc-alpha.c:3995
+msgid ".pdesc directive not in link (.link) section"
+msgstr ".pdesc direktif tidak dalam daerah link (.link)"
+
+#: config/tc-alpha.c:4003
+msgid ".pdesc has no matching .ent"
+msgstr ".pdesc tidak memiliki pencocokan .ent"
+
+#: config/tc-alpha.c:4014
+msgid ".pdesc directive has no entry symbol"
+msgstr ".pdesc direktif tidak memiliki simbol masukan"
+
+#: config/tc-alpha.c:4027
+msgid "No comma after .pdesc <entryname>"
+msgstr "tidak ada koma setelah .pdesc <entryname>"
+
+#: config/tc-alpha.c:4047
+msgid "unknown procedure kind"
+msgstr "prosedure kind tidak diketahui"
+
+#: config/tc-alpha.c:4137
+msgid ".name directive not in link (.link) section"
+msgstr ".name direktif tidak dalam daerah link (.link)"
+
+#: config/tc-alpha.c:4145
+msgid ".name directive has no symbol"
+msgstr ".name direktif tidak memiliki simbol"
+
+#: config/tc-alpha.c:4176
+msgid "No symbol after .linkage"
+msgstr "Tidak ada simbol setelah .linkage"
+
+#: config/tc-alpha.c:4200
+msgid "No symbol after .code_address"
+msgstr "Tidak ada simbol setelah .code_address"
+
+#: config/tc-alpha.c:4227 config/tc-score.c:5822
+msgid "Bad .mask directive"
+msgstr ".mask direktif buruk"
+
+#: config/tc-alpha.c:4245
+msgid "Bad .fmask directive"
+msgstr ".fmask direktif buruk"
+
+#: config/tc-alpha.c:4402
+#, c-format
+msgid "Expected comma after name \"%s\""
+msgstr "Diduga koma setelah nama \"%s\""
+
+#. *symbol_get_obj (symbolP) = (signed char) temp;
+#: config/tc-alpha.c:4413
+#, c-format
+msgid "unhandled: .proc %s,%d"
+msgstr "tidak tertangani: .proc %s,%d"
+
+#: config/tc-alpha.c:4447
+#, c-format
+msgid "Tried to .set unrecognized mode `%s'"
+msgstr "Mencoba untuk .set mode tidak dikenal `%s'"
+
+#: config/tc-alpha.c:4473
+#, c-format
+msgid "Bad base register, using $%d."
+msgstr "Dasar register buruk, menggunakan $%d."
+
+#: config/tc-alpha.c:4494
+#, c-format
+msgid "Alignment too large: %d. assumed"
+msgstr "Aligment terlalu besar: %d. diasumsikan"
+
+#: config/tc-alpha.c:4498 config/tc-d30v.c:2048
+msgid "Alignment negative: 0 assumed"
+msgstr "Alignment negatif: 0 diasumsikan"
+
+#: config/tc-alpha.c:4775
+#, c-format
+msgid "Chose GP value of %lx\n"
+msgstr "Memilih nilai GP dari %lx\n"
+
+#: config/tc-alpha.c:4789
+msgid "Bad .section directive: want a,s,w,x,M,S,G,T in string"
+msgstr "Direktif .section buruk: ingin a,s,w,x,M,S,G,T dalam string"
+
+#: config/tc-alpha.c:4878
+#, c-format
+msgid "internal error: can't hash opcode `%s': %s"
+msgstr "internal error: tidak dapat hash opcode `%s': %s"
+
+#: config/tc-alpha.c:4914
+#, c-format
+msgid "internal error: can't hash macro `%s': %s"
+msgstr "internal error: tidak dapat hash makro `%s': %s"
+
+#: config/tc-alpha.c:4998 config/tc-arm.c:6073 config/tc-arm.c:6085
+#: config/tc-i960.c:708 config/tc-xtensa.c:5251 config/tc-xtensa.c:5329
+#: config/tc-xtensa.c:5425 config/tc-z80.c:1893
+msgid "syntax error"
+msgstr "syntax error"
+
+#: config/tc-alpha.c:5076
+#, c-format
+msgid "Unknown CPU identifier `%s'"
+msgstr "CPU identifier tidak dikenal `%s'"
+
+#: config/tc-alpha.c:5119
+msgid ""
+"Alpha options:\n"
+"-32addr\t\t\ttreat addresses as 32-bit values\n"
+"-F\t\t\tlack floating point instructions support\n"
+"-mev4 | -mev45 | -mev5 | -mev56 | -mpca56 | -mev6 | -mev67 | -mev68 | -mall\n"
+"\t\t\tspecify variant of Alpha architecture\n"
+"-m21064 | -m21066 | -m21164 | -m21164a | -m21164pc | -m21264 | -m21264a | -m21264b\n"
+"\t\t\tthese variants include PALcode opcodes\n"
+msgstr ""
+"Alpha opsi:\n"
+"-32addr\t\t\tperlakukan alamat sebagai nilai 32-bit\n"
+"-F\t\t\ttidak ada dukungan instruksi floating point\n"
+"-mev4 | -mev45 | -mev5 | -mev56 | -mpca56 | -mev6 | -mev67 | -mev68 | -mall\n"
+"\t\t\tspesifikasikan variasi dari arsitektur Alpha\n"
+"-m21064 | -m21066 | -m21164 | -m21164a | -m21164pc | -m21264 | -m21264a | -m21264b\n"
+"\t\t\tvarian ini termasuk PALcode opcodes\n"
+
+#: config/tc-alpha.c:5129
+msgid ""
+"VMS options:\n"
+"-+\t\t\thash encode (don't truncate) names longer than 64 characters\n"
+"-H\t\t\tshow new symbol after hash truncation\n"
+msgstr ""
+"VMS opsi:\n"
+"-+\t\t\thash enkode (jangan potong) nama lebih panjang dari 64 karakter\n"
+"-H\t\t\tperlihatkan simbol baru setelah pemotongan hash\n"
+
+#: config/tc-alpha.c:5306
+#, c-format
+msgid "unhandled relocation type %s"
+msgstr "tipe relokasi %s tidak tertangani"
+
+#: config/tc-alpha.c:5319
+msgid "non-absolute expression in constant field"
+msgstr "bukan-absolute ekspresi dalam daerah konstan"
+
+#: config/tc-alpha.c:5333
+#, c-format
+msgid "type %d reloc done?\n"
+msgstr "tipe %d relokasi selesai?\n"
+
+#: config/tc-alpha.c:5380 config/tc-alpha.c:5387
+msgid "Used $at without \".set noat\""
+msgstr "Menggunakan $at tanpa \".set noat\""
+
+#: config/tc-alpha.c:5549
+#, c-format
+msgid "!samegp reloc against symbol without .prologue: %s"
+msgstr "!samegp relokasi terhadap simbol tanpa .prologue: %s"
+
+#: config/tc-alpha.c:5586 config/tc-xtensa.c:5931
+#, c-format
+msgid "cannot represent `%s' relocation in object file"
+msgstr "tidak dapat merepresentasikan relokasi `%s' dalam berkas objek"
+
+#: config/tc-alpha.c:5592
+#, c-format
+msgid "internal error? cannot generate `%s' relocation"
+msgstr "internal error? tidak dapat menghasilkan relokasi `%s'"
+
+#: config/tc-alpha.c:5643
+#, c-format
+msgid "frame reg expected, using $%d."
+msgstr "frame reg diperkirakan, menggunakan $%d."
+
+#: config/tc-arc.c:194 config/tc-arc.c:215 config/tc-arc.c:991
+#: config/tc-h8300.c:76 config/tc-h8300.c:85 config/tc-h8300.c:95
+#: config/tc-h8300.c:105 config/tc-h8300.c:115 config/tc-h8300.c:126
+#: config/tc-h8300.c:193 config/tc-hppa.c:6789 config/tc-hppa.c:6795
+#: config/tc-hppa.c:6801 config/tc-hppa.c:6807 config/tc-hppa.c:8214
+#: config/tc-mn10300.c:935 config/tc-mn10300.c:940 config/tc-mn10300.c:2433
+#: config/tc-xc16x.c:79 config/tc-xc16x.c:86 config/tc-xc16x.c:93
+msgid "could not set architecture and machine"
+msgstr "tidak dapat menset arsitektur dan mesin"
+
+#: config/tc-arc.c:212 config/tc-arm.c:19602 config/tc-score.c:6522
+#: config/tc-score.c:6538 config/tc-score.c:6543
+msgid "virtual memory exhausted"
+msgstr "kehabisan virtual memori"
+
+#: config/tc-arc.c:432 config/tc-arc.c:670
+msgid "expected comma after operand name"
+msgstr "diduga koma setelah nama operan"
+
+#: config/tc-arc.c:443
+#, c-format
+msgid "negative operand number %d"
+msgstr "negatif nomor operan %d"
+
+#: config/tc-arc.c:455
+msgid "expected comma after register-number"
+msgstr "diduga koma setelah nomor-register"
+
+#: config/tc-arc.c:480
+msgid "invalid mode"
+msgstr "mode tidak valid"
+
+#: config/tc-arc.c:497
+msgid "expected comma after register-mode"
+msgstr "diduga koma setelah mode-register"
+
+#: config/tc-arc.c:514
+msgid "shortcut designator invalid"
+msgstr "shortcut designator tidak valid"
+
+#: config/tc-arc.c:529
+#, c-format
+msgid "core register value (%d) too large"
+msgstr "nilai register core (%d) terlalu besar"
+
+#: config/tc-arc.c:537
+#, c-format
+msgid "condition code value (%d) too large"
+msgstr "nilai kode kondisi (%d) terlalu besar"
+
+#: config/tc-arc.c:554
+#, c-format
+msgid "attempt to override symbol: %s"
+msgstr "mencoba memaksa simbol: %s"
+
+#: config/tc-arc.c:625
+msgid "invalid opertype"
+msgstr "opertype tidak valid"
+
+#: config/tc-arc.c:682
+msgid "expected comma after opcode"
+msgstr "diduga koma seteal opcode"
+
+#: config/tc-arc.c:692
+#, c-format
+msgid "negative subopcode %d"
+msgstr "subopcode %d negatif"
+
+#: config/tc-arc.c:701
+msgid "subcode value found when opcode not equal 0x03"
+msgstr "nilai subcode ditemukan ketika opcode tidak sama 0x03"
+
+#: config/tc-arc.c:709
+#, c-format
+msgid "invalid subopcode %d"
+msgstr "subopcode %d tidak valid"
+
+#: config/tc-arc.c:720
+msgid "expected comma after subopcode"
+msgstr "diduga koma setelah subopcode"
+
+#: config/tc-arc.c:739
+msgid "invalid suffix class"
+msgstr "kelas akhiran tidak valid"
+
+#: config/tc-arc.c:748
+msgid "expected comma after suffix class"
+msgstr "diduga koma setelah kelas akhira"
+
+#: config/tc-arc.c:767
+msgid "invalid syntax class"
+msgstr "kelas syntax tidak valid"
+
+#: config/tc-arc.c:774
+msgid "opcode 0x3 and SYNTAX_3OP invalid"
+msgstr "opcode 0x3 dan SYNTAX_3OP tidak valid"
+
+#: config/tc-arc.c:794
+msgid "unknown suffix class"
+msgstr "kelas suffix tidak dikenal"
+
+#: config/tc-arc.c:861
+msgid "expected comma after symbol name"
+msgstr "diduga koma setelah nama simbol"
+
+#: config/tc-arc.c:871
+msgid "negative symbol length"
+msgstr "panjang simbol negatif"
+
+#: config/tc-arc.c:882
+msgid "ignoring attempt to re-define symbol"
+msgstr "mengabaikan percobaan untuk meredefinisi simbol"
+
+#: config/tc-arc.c:889
+#, c-format
+msgid "length of symbol \"%s\" already %ld, ignoring %d"
+msgstr "panjang dari simbol \"%s\" telah %ld, mengabaikan %d"
+
+#: config/tc-arc.c:903
+msgid "assuming symbol alignment of zero"
+msgstr "mengasumsikan simbol alignmen dari nol"
+
+#: config/tc-arc.c:970
+msgid "\".option\" directive must appear before any instructions"
+msgstr "\".option\" direktif harus muncul sebelum instruksi apapun"
+
+#: config/tc-arc.c:980
+msgid "\".option\" directive conflicts with initial definition"
+msgstr "\".option\" direktif konflik dengan inisial definisi"
+
+#: config/tc-arc.c:988
+msgid "\".option\" directive overrides command-line (default) value"
+msgstr "\".option\" direktif memaksa nilai baris-perintah (baku)"
+
+#: config/tc-arc.c:998
+msgid "invalid identifier for \".option\""
+msgstr "identifier tidak valid untuk \".option\""
+
+#: config/tc-arc.c:1036 config/tc-i860.c:1034 config/tc-ip2k.c:249
+msgid "relaxation not supported\n"
+msgstr "relaxation tidak didukung\n"
+
+#: config/tc-arc.c:1080
+msgid "expression too complex code symbol"
+msgstr "ekspresi terlalu kompleks untuk kode simbol"
+
+#: config/tc-arc.c:1107
+#, c-format
+msgid "missing ')' in %%-op"
+msgstr "hilang ')' dalam %%-op"
+
+#: config/tc-arc.c:1362 config/tc-dlx.c:1200 config/tc-m32r.c:2281
+#: config/tc-sparc.c:3504
+#, c-format
+msgid "internal error: can't export reloc type %d (`%s')"
+msgstr "internal error: tidak dapat menekspor relokasi tipe %d (`%s')"
+
+#: config/tc-arc.c:1494
+#, c-format
+msgid "unknown syntax format character `%c'"
+msgstr "sintaks format karakter `%c' tidak dikenal"
+
+#: config/tc-arc.c:1632
+msgid "too many suffixes"
+msgstr "terlalu banyak akhiran"
+
+#: config/tc-arc.c:1671
+msgid "symbol as destination register"
+msgstr "simbol sebagai register tujuan"
+
+#: config/tc-arc.c:1756 config/tc-mn10200.c:1141 config/tc-mn10300.c:1820
+#: config/tc-ppc.c:2791 config/tc-s390.c:1443 config/tc-v850.c:2009
+#, c-format
+msgid "junk at end of line: `%s'"
+msgstr "sampah diakhir dari baris: `%s'"
+
+#: config/tc-arc.c:1795
+msgid "8 byte instruction in delay slot"
+msgstr "8 byte instruksi dalam delau slot"
+
+#. except for jl  addr
+#: config/tc-arc.c:1798
+msgid "8 byte jump instruction with delay slot"
+msgstr "8 byte jump instruksi dengan delay slot"
+
+#: config/tc-arc.c:1806
+msgid "conditional branch follows set of flags"
+msgstr "kondisional branch mengikuti set dari flags"
+
+#: config/tc-arc.c:1890 config/tc-arm.c:14208
+#, c-format
+msgid "bad instruction `%s'"
+msgstr "instruksi `%s' buruk"
+
+#: config/tc-arm.c:489
+msgid "ARM register expected"
+msgstr "ARM register diduga"
+
+#: config/tc-arm.c:490
+msgid "bad or missing co-processor number"
+msgstr "buruk atau hilang nomor co-prosesor"
+
+#: config/tc-arm.c:491
+msgid "co-processor register expected"
+msgstr "co-prosesor register diduga"
+
+#: config/tc-arm.c:492
+msgid "FPA register expected"
+msgstr "FPA register diduga"
+
+#: config/tc-arm.c:493
+msgid "VFP single precision register expected"
+msgstr "VFP single presisi register diduga"
+
+#: config/tc-arm.c:494
+msgid "VFP/Neon double precision register expected"
+msgstr "VFP/Neon double presisi register diduga"
+
+#: config/tc-arm.c:495
+msgid "Neon quad precision register expected"
+msgstr "Neon quad presisi register diduga"
+
+#: config/tc-arm.c:496
+msgid "VFP single or double precision register expected"
+msgstr "VFP single atau double presisi register diduga"
+
+#: config/tc-arm.c:497
+msgid "Neon double or quad precision register expected"
+msgstr "Neon double atau quad presisis register diduga"
+
+#: config/tc-arm.c:498
+msgid "VFP single, double or Neon quad precision register expected"
+msgstr "VFP single, double atau Neon quad presisi register diduga"
+
+#: config/tc-arm.c:499
+msgid "VFP system register expected"
+msgstr "VFP sistem register diduga"
+
+#: config/tc-arm.c:500
+msgid "Maverick MVF register expected"
+msgstr "Maverick MVF register diduga"
+
+#: config/tc-arm.c:501
+msgid "Maverick MVD register expected"
+msgstr "Maverick MVD register diduga"
+
+#: config/tc-arm.c:502
+msgid "Maverick MVFX register expected"
+msgstr "Maverick MVFX register diduga"
+
+#: config/tc-arm.c:503
+msgid "Maverick MVDX register expected"
+msgstr "Maveric MVDX register diduga"
+
+#: config/tc-arm.c:504
+msgid "Maverick MVAX register expected"
+msgstr "Maverick MVAX register diduga"
+
+#: config/tc-arm.c:505
+msgid "Maverick DSPSC register expected"
+msgstr "Maverick DSPSC register diduga"
+
+#: config/tc-arm.c:506
+msgid "iWMMXt data register expected"
+msgstr "iWMMXt data register diduga"
+
+#: config/tc-arm.c:507 config/tc-arm.c:5882
+msgid "iWMMXt control register expected"
+msgstr "iWMMXt kontrol register diduga"
+
+#: config/tc-arm.c:508
+msgid "iWMMXt scalar register expected"
+msgstr "iWMMXt scalar register diduga"
+
+#: config/tc-arm.c:509
+msgid "XScale accumulator register expected"
+msgstr "XScale akumulator register diduga"
+
+#. For score5u : div/mul will pop warning message, mmu/alw/asw will pop error message.
+#: config/tc-arm.c:658 config/tc-score.c:47
+msgid "bad arguments to instruction"
+msgstr "argumen buruk terhadap instruksi"
+
+#: config/tc-arm.c:659 config/tc-score.c:48
+msgid "r15 not allowed here"
+msgstr "r15 tidak diperbolehkan disini"
+
+#: config/tc-arm.c:660
+msgid "instruction cannot be conditional"
+msgstr "instruksi tidak dapat berupa kondisional"
+
+#: config/tc-arm.c:661
+msgid "registers may not be the same"
+msgstr "register mungkin tidak sama"
+
+#: config/tc-arm.c:662
+msgid "lo register required"
+msgstr "lo register dibutuhkan"
+
+#: config/tc-arm.c:663
+msgid "instruction not supported in Thumb16 mode"
+msgstr "instruksi tidak didukung dalam mode Thumb16"
+
+#: config/tc-arm.c:664
+msgid "instruction does not accept this addressing mode"
+msgstr "instruksi tidak menerima mode pengalamatan ini"
+
+#: config/tc-arm.c:665
+msgid "branch must be last instruction in IT block"
+msgstr "pencabangan harus akhir instruksi dalam IT blok"
+
+#: config/tc-arm.c:666
+msgid "instruction not allowed in IT block"
+msgstr "instruksi tidak diperbolehkan dalam blok IT"
+
+#: config/tc-arm.c:667
+msgid "selected FPU does not support instruction"
+msgstr "FPU yang dipilih tidak mendukung instruksi"
+
+#: config/tc-arm.c:807
+msgid "immediate expression requires a # prefix"
+msgstr "ekspresi langsung membutuhkan sebuah awalah #"
+
+#: config/tc-arm.c:834 config/tc-score.c:5605 expr.c:1300 read.c:2440
+msgid "bad expression"
+msgstr "ekpresi buruk"
+
+#: config/tc-arm.c:845 config/tc-i860.c:1003 config/tc-sparc.c:2876
+msgid "bad segment"
+msgstr "segmen buruk"
+
+#: config/tc-arm.c:862 config/tc-arm.c:4399 config/tc-i960.c:1300
+#: config/tc-score.c:980
+msgid "invalid constant"
+msgstr "konstanta tidak valid"
+
+#: config/tc-arm.c:992
+msgid "expected #constant"
+msgstr "diduga #constant"
+
+#: config/tc-arm.c:1153
+#, c-format
+msgid "unexpected character `%c' in type specifier"
+msgstr "karakter `%c' tidak diduga dalam tipe spesifikasi"
+
+#: config/tc-arm.c:1170
+#, c-format
+msgid "bad size %d in type specifier"
+msgstr "ukuran %d buruk dalam tipe spesifikasi"
+
+#: config/tc-arm.c:1220
+msgid "only one type should be specified for operand"
+msgstr "hanya satu tipe yang harus dispesifikasikan untuk operan"
+
+#: config/tc-arm.c:1226
+msgid "vector type expected"
+msgstr "tipe vector diduga"
+
+#: config/tc-arm.c:1298
+msgid "can't redefine type for operand"
+msgstr "tidak dapat mendefinisikan tipe untuk operan"
+
+#: config/tc-arm.c:1309
+msgid "only D registers may be indexed"
+msgstr "hanya D register yang boleh diindeks"
+
+#: config/tc-arm.c:1315
+msgid "can't change index for operand"
+msgstr "tidak dapat mengubah indeks untuk operan"
+
+#: config/tc-arm.c:1331 config/tc-arm.c:4000
+msgid "constant expression required"
+msgstr "pernyataan konstanta dibutuhkan"
+
+#: config/tc-arm.c:1374
+msgid "register operand expected, but got scalar"
+msgstr "diduga register operan, tetapi diperoleh skalar"
+
+#: config/tc-arm.c:1407
+msgid "scalar must have an index"
+msgstr "skalar harus memiliki sebuah indeks"
+
+#: config/tc-arm.c:1412 config/tc-arm.c:13175 config/tc-arm.c:13223
+#: config/tc-arm.c:13625
+msgid "scalar index out of range"
+msgstr "skalar indeks diluar dari jangkauan"
+
+#: config/tc-arm.c:1459
+msgid "bad range in register list"
+msgstr "jangkauan buruk dalam daftar register"
+
+#: config/tc-arm.c:1467 config/tc-arm.c:1476 config/tc-arm.c:1517
+#, c-format
+msgid "Warning: duplicated register (r%d) in register list"
+msgstr "Peringatan: duplikasi register (r%d) dalam daftar register"
+
+#: config/tc-arm.c:1479
+msgid "Warning: register range not in ascending order"
+msgstr "Peringatan: jangkauan register tidak dalam urutan meningkat"
+
+#: config/tc-arm.c:1490
+msgid "missing `}'"
+msgstr "hilang `}'"
+
+#: config/tc-arm.c:1506
+msgid "invalid register mask"
+msgstr "register mask tidak valid"
+
+#: config/tc-arm.c:1588
+msgid "expecting {"
+msgstr "diduga {"
+
+#: config/tc-arm.c:1643 config/tc-arm.c:1687
+msgid "register out of range in list"
+msgstr "register diluar dari jangkauan dalam daftar"
+
+#: config/tc-arm.c:1659 config/tc-arm.c:1704 config/tc-h8300.c:989
+#: config/tc-mips.c:10471 config/tc-mips.c:10493
+msgid "invalid register list"
+msgstr "daftar register tidak valid"
+
+#: config/tc-arm.c:1665 config/tc-arm.c:3464 config/tc-arm.c:3597
+msgid "register list not in ascending order"
+msgstr "daftar register tidak dalam urutan meningkat"
+
+#: config/tc-arm.c:1696
+msgid "register range not in ascending order"
+msgstr "jangkauan register tida dalam urutan meningkat"
+
+#: config/tc-arm.c:1729
+msgid "non-contiguous register range"
+msgstr "jangkauan register tidak-kontinu"
+
+#: config/tc-arm.c:1855
+msgid "don't use Rn-Rm syntax with non-unit stride"
+msgstr "jangan menggunakan Rn-Rm sintaks dengan bukan-satuan stride"
+
+#: config/tc-arm.c:1910
+msgid "error parsing element/structure list"
+msgstr "error parsing daftar elemen/struktur"
+
+#: config/tc-arm.c:1916
+msgid "expected }"
+msgstr "diduga }"
+
+#: config/tc-arm.c:1972
+#, c-format
+msgid "ignoring attempt to redefine built-in register '%s'"
+msgstr "mengabaikan percobaan untuk mendefinisikan built-in register '%s'"
+
+#: config/tc-arm.c:1977
+#, c-format
+msgid "ignoring redefinition of register alias '%s'"
+msgstr "mengabaikan redefinisi dari register alias '%s'"
+
+#: config/tc-arm.c:2005
+msgid "attempt to redefine typed alias"
+msgstr "mencoba untuk mendefinisikan tipe alias"
+
+#: config/tc-arm.c:2043
+#, c-format
+msgid "unknown register '%s' -- .req ignored"
+msgstr "register '%s' tidak dikenal -- .req diabaikan"
+
+#: config/tc-arm.c:2138
+msgid "bad type for register"
+msgstr "tipe buruk untuk register"
+
+#: config/tc-arm.c:2149
+msgid "expression must be constant"
+msgstr "pernyataan harus berupa konstanta"
+
+#: config/tc-arm.c:2166
+msgid "can't redefine the type of a register alias"
+msgstr "tidak dapat meredefinisi tipe dari sebuah alias register"
+
+#: config/tc-arm.c:2173
+msgid "you must specify a single type only"
+msgstr "anda harus menspesifikasikan sebuah tipe tunggal saja"
+
+#: config/tc-arm.c:2186
+msgid "can't redefine the index of a scalar alias"
+msgstr "tidak dapat meredefinisikan indeks dari skalar alias"
+
+#: config/tc-arm.c:2194
+msgid "scalar index must be constant"
+msgstr "skalar indeks harus berupa konstanta"
+
+#: config/tc-arm.c:2203
+msgid "expecting ]"
+msgstr "diduga ]"
+
+#: config/tc-arm.c:2240
+msgid "invalid syntax for .req directive"
+msgstr "syntaks tidak valid untuk direktif .req"
+
+#: config/tc-arm.c:2246
+msgid "invalid syntax for .dn directive"
+msgstr "sintaks tidak valid untuk .dn direktif"
+
+#: config/tc-arm.c:2252
+msgid "invalid syntax for .qn directive"
+msgstr "sintaks tidak valid untuk .qn direktif"
+
+#: config/tc-arm.c:2278
+msgid "invalid syntax for .unreq directive"
+msgstr "sintaks tidak valid untuk .unreq direktif"
+
+#: config/tc-arm.c:2284
+#, c-format
+msgid "unknown register alias '%s'"
+msgstr "register alias '%s' tidak dikenal"
+
+#: config/tc-arm.c:2286
+#, c-format
+msgid "ignoring attempt to undefine built-in register '%s'"
+msgstr "mengabaikan percobaan untuk tidak mendefinisikan built-in register '%s'"
+
+#: config/tc-arm.c:2437
+#, c-format
+msgid "Failed to find real start of function: %s\n"
+msgstr "Gagal untuk mencari awal dari fungsi nyata: %s\n"
+
+#: config/tc-arm.c:2453
+msgid "selected processor does not support THUMB opcodes"
+msgstr "prosesor yang dipilih tidak mendukung THUMB opcodes"
+
+#: config/tc-arm.c:2467
+msgid "selected processor does not support ARM opcodes"
+msgstr "prosesor yang dipilih tidak mendukung ARM opcodes"
+
+#: config/tc-arm.c:2480
+#, c-format
+msgid "invalid instruction size selected (%d)"
+msgstr "ukuran instruksi yang dipilih (%d) tidak valid"
+
+#: config/tc-arm.c:2512
+#, c-format
+msgid "invalid operand to .code directive (%d) (expecting 16 or 32)"
+msgstr "operan tidak valid untuk .code direktif (%d) diduga 16 atau 32)"
+
+#: config/tc-arm.c:2568
+#, c-format
+msgid "expected comma after name \"%s\""
+msgstr "diduga koma sesudah nama \"%s\""
+
+#: config/tc-arm.c:2618 config/tc-m32r.c:588
+#, c-format
+msgid "symbol `%s' already defined"
+msgstr "simbol `%s' telah didefinisikan"
+
+#: config/tc-arm.c:2652
+#, c-format
+msgid "unrecognized syntax mode \"%s\""
+msgstr "sintaks mode \"%s\" tidak dikenal"
+
+#: config/tc-arm.c:2673
+#, c-format
+msgid "alignment too large: %d assumed"
+msgstr "alignment terlalu besar: %d diduga"
+
+#: config/tc-arm.c:2676
+msgid "alignment negative. 0 assumed."
+msgstr "alignment negative. 0 diduga."
+
+#: config/tc-arm.c:2823
+msgid "literal pool overflow"
+msgstr "literal pool overflow"
+
+#: config/tc-arm.c:2979 config/tc-arm.c:5817
+msgid "unrecognized relocation suffix"
+msgstr "akhiran relokasi tidak dikenal"
+
+#: config/tc-arm.c:2992
+msgid "(plt) is only valid on branch targets"
+msgstr "(plt) hanya valid dalam target percabangan"
+
+#: config/tc-arm.c:2998 config/tc-s390.c:1100 config/tc-s390.c:1708
+#: config/tc-xtensa.c:1564
+#, c-format
+msgid "%s relocations do not fit in %d bytes"
+msgstr "%s relokasi tidak cocok dalam %d bytes"
+
+#: config/tc-arm.c:3046 dwarf2dbg.c:670
+msgid "expected 0 or 1"
+msgstr "diduga 0 atau 1"
+
+#: config/tc-arm.c:3050
+msgid "missing comma"
+msgstr "hilang koma"
+
+#: config/tc-arm.c:3105
+msgid "duplicate .handlerdata directive"
+msgstr "duplikasi .handlerdata direktif"
+
+#: config/tc-arm.c:3177
+msgid "personality routine specified for cantunwind frame"
+msgstr "personality rutin dispesifikasikan untuk cantunwind frame"
+
+#: config/tc-arm.c:3191
+msgid "duplicate .personalityindex directive"
+msgstr "duplikasi .personalityindex direktif"
+
+#: config/tc-arm.c:3198
+msgid "bad personality routine number"
+msgstr "personality buruk nomor rutin"
+
+#: config/tc-arm.c:3217
+msgid "duplicate .personality directive"
+msgstr "duplikasi .personality direktif"
+
+#: config/tc-arm.c:3240 config/tc-arm.c:3368 config/tc-arm.c:3416
+msgid "expected register list"
+msgstr "diduga daftar register"
+
+#: config/tc-arm.c:3322
+msgid "expected , <constant>"
+msgstr "diduga , <konstanta>"
+
+#: config/tc-arm.c:3331
+msgid "number of registers must be in the range [1:4]"
+msgstr "jumlah dari register harus dalam jangkauan [1:4]"
+
+#: config/tc-arm.c:3478 config/tc-arm.c:3611
+msgid "bad register range"
+msgstr "jangkauan register buruk"
+
+#: config/tc-arm.c:3665
+msgid "register expected"
+msgstr "register diduga"
+
+#: config/tc-arm.c:3675
+msgid "FPA .unwind_save does not take a register list"
+msgstr "FPGA .unwind_save tidak membutuhkan sebuah daftar register"
+
+#: config/tc-arm.c:3694
+msgid ".unwind_save does not support this kind of register"
+msgstr ".unwinde_save tidak mendukung register seperti ini"
+
+#: config/tc-arm.c:3730
+msgid "SP and PC not permitted in .unwind_movsp directive"
+msgstr "SP dan PC tida diperbolehkan dalam .unwind_movsp direktif"
+
+#: config/tc-arm.c:3735
+msgid "unexpected .unwind_movsp directive"
+msgstr "tidak diduga .unwind_movsp direktif"
+
+#: config/tc-arm.c:3759
+msgid "stack increment must be multiple of 4"
+msgstr "peningkatan stack harus kelipatan dari 4"
+
+#: config/tc-arm.c:3788
+msgid "expected <reg>, <reg>"
+msgstr "diduga <reg>, <reg>"
+
+#: config/tc-arm.c:3806
+msgid "register must be either sp or set by a previousunwind_movsp directive"
+msgstr "register harus berupa sp atau set dengan sebuah previousunwind_movsp direktif"
+
+#: config/tc-arm.c:3842
+msgid "expected <offset>, <opcode>"
+msgstr "diduga <offset>, <opcode>"
+
+#: config/tc-arm.c:3854
+msgid "unwind opcode too long"
+msgstr "unwind opcode terlalu panjang"
+
+#: config/tc-arm.c:3859
+msgid "invalid unwind opcode"
+msgstr "unwind opcode tidak valid"
+
+#: config/tc-arm.c:4006 config/tc-arm.c:4868 config/tc-arm.c:8469
+#: config/tc-arm.c:8951 config/tc-arm.c:11748 config/tc-arm.c:18741
+#: config/tc-arm.c:18766 config/tc-arm.c:18774 config/tc-z8k.c:1144
+#: config/tc-z8k.c:1154
+msgid "immediate value out of range"
+msgstr "nilai langsung diluar dari jangkauan"
+
+#: config/tc-arm.c:4153
+msgid "invalid FPA immediate expression"
+msgstr "FPA tidak valid pernyataan langsung"
+
+#: config/tc-arm.c:4277 config/tc-arm.c:4285
+msgid "shift expression expected"
+msgstr "diduga pernyataan shift"
+
+#: config/tc-arm.c:4299
+msgid "'LSL' or 'ASR' required"
+msgstr "'LSL' atau 'ASR' dibutuhkan"
+
+#: config/tc-arm.c:4307
+msgid "'LSL' required"
+msgstr "'LSL' dibutuhkan"
+
+#: config/tc-arm.c:4315
+msgid "'ASR' required"
+msgstr "'ASR' dibutuhkan"
+
+#: config/tc-arm.c:4387 config/tc-arm.c:4862 config/tc-arm.c:6443
+#: config/tc-v850.c:1827 config/tc-v850.c:1848
+msgid "constant expression expected"
+msgstr "pernyataan konstanta diduga"
+
+#: config/tc-arm.c:4394
+msgid "invalid rotation"
+msgstr "rotasi tidak valid"
+
+#: config/tc-arm.c:4554 config/tc-arm.c:4698
+msgid "unknown group relocation"
+msgstr "relokasi grup tidak dikenal"
+
+#: config/tc-arm.c:4667
+msgid "alignment must be constant"
+msgstr "alignmen harus berupa konstanta"
+
+#: config/tc-arm.c:4729
+msgid "this group relocation is not allowed on this instruction"
+msgstr "relokasi grup ini tidak diperbolehkan dalam instruksi ini"
+
+#: config/tc-arm.c:4741 config/tc-arm.c:5141
+msgid "']' expected"
+msgstr "']' diduga"
+
+#: config/tc-arm.c:4759
+msgid "'}' expected at end of 'option' field"
+msgstr "'}' diduga di akhir dari daerah 'option'"
+
+#: config/tc-arm.c:4764
+msgid "cannot combine index with option"
+msgstr "tidak dapat menkombinasikan indeks dengan opsi"
+
+#: config/tc-arm.c:4777
+msgid "cannot combine pre- and post-indexing"
+msgstr "tidak dapat menkombinasikan pre- dan post-indexing"
+
+#: config/tc-arm.c:4938
+msgid "flag for {c}psr instruction expected"
+msgstr "flag untuk {c}psr instruksi diduga"
+
+#: config/tc-arm.c:4963
+msgid "unrecognized CPS flag"
+msgstr "tanda CPS tidak dikenal"
+
+#: config/tc-arm.c:4970
+msgid "missing CPS flags"
+msgstr "hilang tanda CPS"
+
+#: config/tc-arm.c:4993 config/tc-arm.c:4999
+msgid "valid endian specifiers are be or le"
+msgstr "valid endian spesikasi adalah be atau le"
+
+#: config/tc-arm.c:5021
+msgid "missing rotation field after comma"
+msgstr "hilang daerah rotasi setelah koma"
+
+#: config/tc-arm.c:5036
+msgid "rotation can only be 0, 8, 16, or 24"
+msgstr "rotasi hanya dapat berupa 0, 8, 16, atau 24"
+
+#: config/tc-arm.c:5065
+msgid "condition required"
+msgstr "kondisi dibutuhkan"
+
+#: config/tc-arm.c:5103 config/tc-arm.c:6953
+msgid "'[' expected"
+msgstr "'[' diduga"
+
+#: config/tc-arm.c:5116
+msgid "',' expected"
+msgstr "',' diduga"
+
+#: config/tc-arm.c:5133
+msgid "invalid shift"
+msgstr "shift tidak valid"
+
+#: config/tc-arm.c:5206
+msgid "can't use Neon quad register here"
+msgstr "tidak dapat menggunakan Neon quad register disini"
+
+#: config/tc-arm.c:5272
+msgid "expected <Rm> or <Dm> or <Qm> operand"
+msgstr "diduga <Rm> atau <Dm> atau <Qm> operand"
+
+#: config/tc-arm.c:5352
+msgid "parse error"
+msgstr "parse error"
+
+#: config/tc-arm.c:5362 read.c:2097
+msgid "expected comma"
+msgstr "diduga koma"
+
+#: config/tc-arm.c:5652 config/tc-arm.c:5722
+msgid "immediate value is out of range"
+msgstr "nilai langsung adalah diluar dari jangkauan"
+
+#: config/tc-arm.c:5867
+msgid "iWMMXt data or control register expected"
+msgstr "iWMMXt data atau kontrol register diduga"
+
+#: config/tc-arm.c:6020
+#, c-format
+msgid "unhandled operand code %d"
+msgstr "kode operan %d tidak tertangani"
+
+#: config/tc-arm.c:6099 config/tc-score.c:56
+msgid "garbage following instruction"
+msgstr "sampah mengikuti instruksi"
+
+#: config/tc-arm.c:6186
+msgid "D register out of range for selected VFP version"
+msgstr "D register diluar dari jangkauan untuk versi VFP yang dipilih"
+
+#: config/tc-arm.c:6265
+msgid "instruction does not accept preindexed addressing"
+msgstr "instruksi tidak menerima pengalamatan yang terindeks terlebih dahulu"
+
+#. unindexed - only for coprocessor
+#: config/tc-arm.c:6281 config/tc-arm.c:8275
+msgid "instruction does not accept unindexed addressing"
+msgstr "instruksi tidak menerima pengalamatan unindexed"
+
+#: config/tc-arm.c:6289
+msgid "destination register same as write-back base"
+msgstr "register tujuan sama dengan write-back base"
+
+#: config/tc-arm.c:6290
+msgid "source register same as write-back base"
+msgstr "register asal sama dengan write-back base"
+
+#: config/tc-arm.c:6336
+msgid "instruction does not accept scaled register index"
+msgstr "instruksi tidak menerima indek register terskala"
+
+#: config/tc-arm.c:6376
+msgid "instruction does not support unindexed addressing"
+msgstr "instruksi tidak melayani pengalamatan unindexed"
+
+#: config/tc-arm.c:6391
+msgid "pc may not be used with write-back"
+msgstr "pc mungkin tidak dapat digunakan dengan write-back"
+
+#: config/tc-arm.c:6396
+msgid "instruction does not support writeback"
+msgstr "instruksi tidak dapat mendukung writeback"
+
+#: config/tc-arm.c:6438
+msgid "invalid pseudo operation"
+msgstr "operasi pseudo tidak valid"
+
+#: config/tc-arm.c:6484
+msgid "literal pool insertion failed"
+msgstr "literal pool insertion gagal"
+
+#: config/tc-arm.c:6542
+msgid "Rn must not overlap other operands"
+msgstr "Rn harus tidak tumpang tindih dengan operan lain"
+
+#: config/tc-arm.c:6631 config/tc-arm.c:8807
+msgid "bad barrier type"
+msgstr "tipe barrier buruk"
+
+#: config/tc-arm.c:6642 config/tc-arm.c:6661 config/tc-arm.c:6674
+#: config/tc-arm.c:8818 config/tc-arm.c:8838 config/tc-arm.c:8852
+msgid "bit-field extends past end of register"
+msgstr "bit-field extend akhir dari register"
+
+#: config/tc-arm.c:6703
+msgid "the only suffix valid here is '(plt)'"
+msgstr "hanya akhiran '(plt)' saja yang valid disini"
+
+#: config/tc-arm.c:6756
+msgid "use of r15 in blx in ARM mode is not really useful"
+msgstr "penggunaan dari r15 dalam blx dalam mode ARM tidak terlalu berguna"
+
+#: config/tc-arm.c:6781
+msgid "use of r15 in bx in ARM mode is not really useful"
+msgstr "penggunaan dari r15 dalam bx dalam mode ARM tidak terlalu berguna"
+
+#: config/tc-arm.c:6806 config/tc-arm.c:8990
+msgid "use of r15 in bxj is not really useful"
+msgstr "penggunaan dari r15 dalam bjx tidak terlalu berguna"
+
+#: config/tc-arm.c:6920 config/tc-arm.c:6929
+msgid "writeback of base register is UNPREDICTABLE"
+msgstr "writeback dari base register adalah TIDAK-TERDUGA"
+
+#: config/tc-arm.c:6923
+msgid "writeback of base register when in register list is UNPREDICTABLE"
+msgstr "writeback dari base register ketika dalam daftar register adalah TIDAK-TERDUGA"
+
+#: config/tc-arm.c:6933
+msgid "if writeback register is in list, it must be the lowest reg in the list"
+msgstr "jika writeback register berada dalam daftar, ini harus berada dalam reg paling rendah dalam daftar"
+
+#: config/tc-arm.c:6948
+msgid "first destination register must be even"
+msgstr "register tujuan pertama harus genap"
+
+#: config/tc-arm.c:6951 config/tc-arm.c:7018
+msgid "can only load two consecutive registers"
+msgstr "hanya dapat load dua register sekaligus"
+
+#. If op 1 were present and equal to PC, this function wouldn't
+#. have been called in the first place.
+#. If op 2 were present and equal to PC, this function wouldn't
+#. have been called in the first place.
+#: config/tc-arm.c:6952 config/tc-arm.c:7021 config/tc-arm.c:7547
+#: config/tc-arm.c:9468
+msgid "r14 not allowed here"
+msgstr "r14 tidak diperbolehkan disini"
+
+#: config/tc-arm.c:6966
+msgid "base register written back, and overlaps second destination register"
+msgstr "base register written back, dan tumpang tindih register tujuan kedua"
+
+#: config/tc-arm.c:6974
+msgid "index register overlaps destination register"
+msgstr "register indeks tumpang tinding register tujuan"
+
+#: config/tc-arm.c:7004 config/tc-arm.c:7529
+msgid "offset must be zero in ARM encoding"
+msgstr "ofset harus nol dalam pengkodean ARM"
+
+#: config/tc-arm.c:7015 config/tc-arm.c:7541
+msgid "even register required"
+msgstr "register genap dibutuhkan"
+
+#: config/tc-arm.c:7046 config/tc-arm.c:7077
+msgid "this instruction requires a post-indexed address"
+msgstr "instruksi ini membutuhkan sebuah pengalamatan post-indexed"
+
+#: config/tc-arm.c:7104
+msgid "Rd and Rm should be different in mla"
+msgstr "Rd dan Rm seharusnya berbeda dalam mla"
+
+#: config/tc-arm.c:7128 config/tc-arm.c:9725
+msgid ":lower16: not allowed this instruction"
+msgstr ":lower16: tidak diperbolehkan dalam instruksi ini"
+
+#: config/tc-arm.c:7130
+msgid ":upper16: not allowed instruction"
+msgstr ":upper16: instruksi tidak diperbolehkan"
+
+#: config/tc-arm.c:7149
+msgid "operand 1 must be FPSCR"
+msgstr "operan 1 harus berupa FPSCR"
+
+#: config/tc-arm.c:7182 config/tc-arm.c:9834
+msgid "'CPSR' or 'SPSR' expected"
+msgstr "diduga 'CPSR' atau 'SPSR'"
+
+#: config/tc-arm.c:7219
+msgid "Rd and Rm should be different in mul"
+msgstr "Rd dan Rm seharusnya berbeda dalam mul"
+
+#: config/tc-arm.c:7238 config/tc-arm.c:7474 config/tc-arm.c:9914
+msgid "rdhi and rdlo must be different"
+msgstr "rdhi dan rdlo harus berbeda"
+
+#: config/tc-arm.c:7244
+msgid "rdhi, rdlo and rm must all be different"
+msgstr "rdhi, rdlo dan rm semuanya harus berbeda"
+
+#: config/tc-arm.c:7306
+msgid "'[' expected after PLD mnemonic"
+msgstr "'[' diduga setelah PLD mnemonic"
+
+#: config/tc-arm.c:7308 config/tc-arm.c:7323
+msgid "post-indexed expression used in preload instruction"
+msgstr "post-index ekspresi digunakan dalam instruksi preload"
+
+#: config/tc-arm.c:7310 config/tc-arm.c:7325
+msgid "writeback used in preload instruction"
+msgstr "writeback digunakan dalam instruksi preload"
+
+#: config/tc-arm.c:7312 config/tc-arm.c:7327
+msgid "unindexed addressing used in preload instruction"
+msgstr "pengalamatan unindexed digunakan dalam instruksi preload"
+
+#: config/tc-arm.c:7321
+msgid "'[' expected after PLI mnemonic"
+msgstr "'[' diduga setelah PLI mnemonic"
+
+#: config/tc-arm.c:7500
+msgid "SRS base register must be r13"
+msgstr "SRS base register harus r13"
+
+#: config/tc-arm.c:7544
+msgid "can only store two consecutive registers"
+msgstr "hanya dapat menyimpan dua register berurutan"
+
+#: config/tc-arm.c:7639 config/tc-arm.c:7656
+msgid "only two consecutive VFP SP registers allowed here"
+msgstr "hanya dua VFP SP register berurutan yang diperbolehkan disini"
+
+#: config/tc-arm.c:7684 config/tc-arm.c:7699
+msgid "this addressing mode requires base-register writeback"
+msgstr "mode pengalamatan ini membutuhkan base-register writeback"
+
+#: config/tc-arm.c:7873
+msgid "this instruction does not support indexing"
+msgstr "instruksi ini tidak mendukung pengindeksan"
+
+#: config/tc-arm.c:7896
+msgid "only r15 allowed here"
+msgstr "hanya r15 yang diperbolehkan disini"
+
+#: config/tc-arm.c:8031
+msgid "immediate operand requires iWMMXt2"
+msgstr "operan langsung membutuhkan iWMMXt2"
+
+#: config/tc-arm.c:8175
+msgid "shift by register not allowed in thumb mode"
+msgstr "shift dengan register tidak diperbolehkan dalam mode thumb"
+
+#: config/tc-arm.c:8187 config/tc-arm.c:18248
+msgid "shift expression is too large"
+msgstr "shift ekspresi terlalu besar"
+
+#: config/tc-arm.c:8213
+msgid "Instruction does not support =N addresses"
+msgstr "Instruksi tidak mendukung pengalamatan =N"
+
+#: config/tc-arm.c:8218
+msgid "cannot use register index with PC-relative addressing"
+msgstr "tidak dapat menggunakan indeks register dengan pengalamatan PC-relative"
+
+#: config/tc-arm.c:8219
+msgid "cannot use register index with this instruction"
+msgstr "tidak dapat menggunakan register indeks dengan instruksi ini"
+
+#: config/tc-arm.c:8221
+msgid "Thumb does not support negative register indexing"
+msgstr "Thumbs tidak mendukung pengindeksan register negatif"
+
+#: config/tc-arm.c:8223
+msgid "Thumb does not support register post-indexing"
+msgstr "Thumb tidak mendukung post-indexing register"
+
+#: config/tc-arm.c:8225
+msgid "Thumb does not support register indexing with writeback"
+msgstr "Thumb tidak mendukung pengindeksan register dengan writeback"
+
+#: config/tc-arm.c:8227
+msgid "Thumb supports only LSL in shifted register indexing"
+msgstr "Thumb hanya mendukung LSL dalam shifted register indexing"
+
+#: config/tc-arm.c:8236 config/tc-arm.c:12978
+msgid "shift out of range"
+msgstr "shift diluar dari jangkauan"
+
+#: config/tc-arm.c:8244
+msgid "cannot use writeback with PC-relative addressing"
+msgstr "tidak dapat menggunakan writeback dengan pengalamatan PC-relative"
+
+#: config/tc-arm.c:8246
+msgid "cannot use writeback with this instruction"
+msgstr "tidak dapat menggunakan writeback dengan instruksi ini"
+
+#: config/tc-arm.c:8265
+msgid "cannot use post-indexing with PC-relative addressing"
+msgstr "tidak dapat menggunakan post-indexing dengan pengalamatan PC-relative"
+
+#: config/tc-arm.c:8266
+msgid "cannot use post-indexing with this instruction"
+msgstr "tidak dapat menggunakan post-indexing dengan instruksi ini"
+
+#: config/tc-arm.c:8393
+msgid "PC not allowed as destination"
+msgstr "PC tidak diperbolehkan sebagai tujuan"
+
+#: config/tc-arm.c:8464
+msgid "only SUBS PC, LR, #const allowed"
+msgstr "hanya SUBS PC, LR, #const diperbolehkan"
+
+#: config/tc-arm.c:8537 config/tc-arm.c:8678 config/tc-arm.c:8770
+#: config/tc-arm.c:9789
+msgid "shift must be constant"
+msgstr "geser harus berupa sebuah konstanta"
+
+#: config/tc-arm.c:8564 config/tc-arm.c:8693 config/tc-arm.c:8785
+#: config/tc-arm.c:9802
+msgid "unshifted register required"
+msgstr "unshifted register dibutuhkan"
+
+#: config/tc-arm.c:8579 config/tc-arm.c:8796 config/tc-arm.c:9901
+msgid "dest must overlap one source register"
+msgstr "tujuan harus overlap denga satu register asal"
+
+#: config/tc-arm.c:8696
+msgid "dest and source1 must be the same register"
+msgstr "tujuan dan asal1 harus register yang sama"
+
+#: config/tc-arm.c:8947
+msgid "instruction is always unconditional"
+msgstr "instruksi selalu tidak kondisional"
+
+#: config/tc-arm.c:9029
+msgid "selected processor does not support 'A' form of this instruction"
+msgstr "prosesor yang dipilih tidak mendukung 'A' form dari instruksi ini"
+
+#: config/tc-arm.c:9032
+msgid "Thumb does not support the 2-argument form of this instruction"
+msgstr "Thumb tidak mendukung 2 argumen form dari instruksi ini"
+
+#: config/tc-arm.c:9131
+msgid "SP not allowed in register list"
+msgstr "SP tidak diperbolehkan dalam daftar register"
+
+#: config/tc-arm.c:9136
+msgid "LR and PC should not both be in register list"
+msgstr "LR dan PC keduanya tidak boleh dalam daftar register"
+
+#: config/tc-arm.c:9140
+msgid "base register should not be in register list when written back"
+msgstr "base register seharusnya tidak dalam daftar register ketika menulis kembali"
+
+#: config/tc-arm.c:9146
+msgid "PC not allowed in register list"
+msgstr "PC tidak diperbolehkan dalam daftar register"
+
+#: config/tc-arm.c:9149 config/tc-arm.c:9215 config/tc-arm.c:9255
+#, c-format
+msgid "value stored for r%d is UNPREDICTABLE"
+msgstr "nilai disimpan untuk r%d tidak terprediksi"
+
+#: config/tc-arm.c:9191
+msgid "Thumb load/store multiple does not support {reglist}^"
+msgstr "Thumb load/store multiple tidak mendukung {reglist}^"
+
+#: config/tc-arm.c:9248
+msgid "Thumb-2 instruction only valid in unified syntax"
+msgstr "Instruksi Thumb-2 hanya valid dalam unified syntax"
+
+#: config/tc-arm.c:9252 config/tc-arm.c:9262
+msgid "this instruction will write back the base register"
+msgstr "instruksi ini akan menulis kembali base register"
+
+#: config/tc-arm.c:9265
+msgid "this instruction will not write back the base register"
+msgstr "instruksi ini tidak akan menulis kembali base register"
+
+#: config/tc-arm.c:9294
+msgid "r14 not allowed as first register when second register is omitted"
+msgstr "r14 tidak diperbolehkan sebaga register pertama ketika register kedua diabaikan"
+
+#: config/tc-arm.c:9391 config/tc-arm.c:9404 config/tc-arm.c:9440
+msgid "Thumb does not support this addressing mode"
+msgstr "Thumb tidak mendukung mode pengalamatan ini"
+
+#: config/tc-arm.c:9408
+msgid "byte or halfword not valid for base register"
+msgstr "byte atau halfword tidak valid untuk vase register"
+
+#: config/tc-arm.c:9411
+msgid "r15 based store not allowed"
+msgstr "r15 based store tidak diperbolehkan"
+
+#: config/tc-arm.c:9413
+msgid "invalid base register for register offset"
+msgstr "base register tidak valid untuk register ofset"
+
+#: config/tc-arm.c:9710
+msgid "only lo regs allowed with immediate"
+msgstr "hanya lo regs diperbolehkan dengan immediate"
+
+#: config/tc-arm.c:9730
+msgid ":upper16: not allowed this instruction"
+msgstr ":upper16: instruksi ini tidak diperbolehkan"
+
+#: config/tc-arm.c:9824 config/tc-arm.c:9830 config/tc-arm.c:9856
+#: config/tc-arm.c:9862
+msgid "selected processor does not support requested special purpose register"
+msgstr "prosesor yang dipilih tidak mendukung register spesial yang diminta"
+
+#: config/tc-arm.c:9851
+msgid "Thumb encoding does not support an immediate here"
+msgstr "Thumb enkoding tidak mendukung langsung disini"
+
+#: config/tc-arm.c:9936
+msgid "Thumb does not support NOP with hints"
+msgstr "Thumb tidak mendukung NOP dengan hints"
+
+#: config/tc-arm.c:10018
+msgid "push/pop do not support {reglist}^"
+msgstr "push/pop tidak mendukung {reglist}^"
+
+#: config/tc-arm.c:10041
+msgid "invalid register list to push/pop instruction"
+msgstr "daftar register tidak valid untuk instruksi push/pop"
+
+#: config/tc-arm.c:10234
+msgid "source1 and dest must be same register"
+msgstr "asal1 dan tujuan harus register yang sama"
+
+#: config/tc-arm.c:10255
+msgid "ror #imm not supported"
+msgstr "ror #imm tidak didukung"
+
+#: config/tc-arm.c:10380
+msgid "Thumb encoding does not support rotation"
+msgstr "Thumb enkoding tidak mendukung rotasi"
+
+#: config/tc-arm.c:10399
+msgid "instruction requires register index"
+msgstr "instruksi membutuhkan register indeks"
+
+#: config/tc-arm.c:10401
+msgid "PC is not a valid index register"
+msgstr "PC bukan sebuah register indeks yang valid"
+
+#: config/tc-arm.c:10403
+msgid "instruction does not allow shifted index"
+msgstr "instruksi tidak mengijinkan shifted indeks"
+
+#: config/tc-arm.c:10821
+msgid "invalid instruction shape"
+msgstr "bentuk instruksi tidak valid"
+
+#: config/tc-arm.c:11063
+msgid "types specified in both the mnemonic and operands"
+msgstr "tipe yang dispesifikasikan dalam kedua mnemonic dan operands"
+
+#: config/tc-arm.c:11100
+msgid "operand types can't be inferred"
+msgstr "tipe operand tidak dapat ditentukan"
+
+#: config/tc-arm.c:11106
+msgid "type specifier has the wrong number of parts"
+msgstr "penspesifikasi tipe memiliki nomor salah dari bagian"
+
+#: config/tc-arm.c:11161
+msgid "operand size must match register width"
+msgstr "ukuran operan harus cocok dengan lebar register"
+
+#: config/tc-arm.c:11172
+msgid "bad type in Neon instruction"
+msgstr "tipe buruk dalam instruksi Neon"
+
+#: config/tc-arm.c:11183
+msgid "inconsistent types in Neon instruction"
+msgstr "tipe tidak konsisten dalam instruksi Neon"
+
+#: config/tc-arm.c:12232
+msgid "scalar out of range for multiply instruction"
+msgstr "skalar diluar dari jangkauan untuk multiple instruksi"
+
+#: config/tc-arm.c:12396 config/tc-arm.c:12408
+msgid "immediate out of range for insert"
+msgstr "immediate diluar dari jangkauan untuk insert"
+
+#: config/tc-arm.c:12420 config/tc-arm.c:13323
+msgid "immediate out of range for shift"
+msgstr "immediate diluar dari jangkauan untuk shift"
+
+#: config/tc-arm.c:12477 config/tc-arm.c:12504 config/tc-arm.c:12824
+#: config/tc-arm.c:13269
+msgid "immediate out of range"
+msgstr "immediate diluar dari jangkauan"
+
+#: config/tc-arm.c:12541
+msgid "immediate out of range for narrowing operation"
+msgstr "immediate diluar dari jangkauan untuk operasi pengecilan"
+
+#: config/tc-arm.c:12661
+msgid "operands 0 and 1 must be the same register"
+msgstr "operan 0 dan 1 harus register yang sama"
+
+#: config/tc-arm.c:12798
+msgid "operand size must be specified for immediate VMOV"
+msgstr "ukuran operan harus dispesifikasikan untuk VMOV langsung"
+
+#: config/tc-arm.c:12808
+msgid "immediate has bits set outside the operand size"
+msgstr "immediate memiliki bits diset diluar ukuran operan"
+
+#: config/tc-arm.c:13004
+msgid "elements must be smaller than reversal region"
+msgstr "elemen harus lebih kecil dari daerah kebalikan"
+
+#: config/tc-arm.c:13174 config/tc-arm.c:13222
+msgid "bad type for scalar"
+msgstr "tipe buruk untuk skalar"
+
+#: config/tc-arm.c:13286 config/tc-arm.c:13294
+msgid "VFP registers must be adjacent"
+msgstr "VFP register harus berdekatan"
+
+#: config/tc-arm.c:13435
+msgid "bad list length for table lookup"
+msgstr "panjag daftar buruk untuk pencarian tabel"
+
+#: config/tc-arm.c:13465
+msgid "writeback (!) must be used for VLDMDB and VSTMDB"
+msgstr "writeback (!) harus digunakan untuk VLDMDB dan VSTMDB"
+
+#: config/tc-arm.c:13468
+msgid "register list must contain at least 1 and at most 16 registers"
+msgstr "daftar register harus berisi paling tidak 1 dan hampir 16 register"
+
+#: config/tc-arm.c:13545
+msgid "bad alignment"
+msgstr "bad alignment"
+
+#: config/tc-arm.c:13562
+msgid "bad list type for instruction"
+msgstr "daftar tipe buruk untuk instruksi"
+
+#: config/tc-arm.c:13604
+msgid "unsupported alignment for instruction"
+msgstr "alignmen tidak didukung untuk instruksi"
+
+#: config/tc-arm.c:13623 config/tc-arm.c:13717 config/tc-arm.c:13728
+#: config/tc-arm.c:13738 config/tc-arm.c:13752
+msgid "bad list length"
+msgstr "panjang daftar buruk"
+
+#: config/tc-arm.c:13628
+msgid "stride of 2 unavailable when element size is 8"
+msgstr "stride dari 2 tidak tersedia ketika ukuran elemen adalah 8"
+
+#: config/tc-arm.c:13661 config/tc-arm.c:13736
+msgid "can't use alignment with this instruction"
+msgstr "tidak dapat menggunakan alignmen dengan instruksi ini"
+
+#: config/tc-arm.c:13800
+msgid "post-index must be a register"
+msgstr "post-indeks harus berupa sebuah register"
+
+#: config/tc-arm.c:13802
+msgid "bad register for post-index"
+msgstr "register buruk untuk post-indeks"
+
+#: config/tc-arm.c:14089 config/tc-arm.c:14175
+msgid "conditional infixes are deprecated in unified syntax"
+msgstr "kondisional infixed deprecated dalam sintaks unified"
+
+#: config/tc-arm.c:14214
+msgid "s suffix on comparison instruction is deprecated"
+msgstr "s suffix dalam perbandingan instruksi kadaluarsa"
+
+#: config/tc-arm.c:14233 config/tc-arm.c:14322
+#, c-format
+msgid "selected processor does not support `%s'"
+msgstr "prosesor yang dipilih tidak mendukung `%s'"
+
+#: config/tc-arm.c:14239
+msgid "Thumb does not support conditional execution"
+msgstr "Thumb tidak mendukung eksekusi kondisional"
+
+#: config/tc-arm.c:14263
+msgid "incorrect condition in IT block"
+msgstr "kondisi dalam IT blok tidak benar"
+
+#: config/tc-arm.c:14269
+msgid "thumb conditional instruction not in IT block"
+msgstr "thumb instruksi kondisional tidak dalam blok IT"
+
+#: config/tc-arm.c:14289
+#, c-format
+msgid "cannot honor width suffix -- `%s'"
+msgstr "tidak dapat menghargai lebar akhir -- `%s'"
+
+#: config/tc-arm.c:14327
+#, c-format
+msgid "width suffixes are invalid in ARM mode -- `%s'"
+msgstr "lebar akhiran tidak vlaid dalam mode ARM -- `%s'"
+
+#: config/tc-arm.c:14350
+#, c-format
+msgid "attempt to use an ARM instruction on a Thumb-only processor -- `%s'"
+msgstr "mencoba menggunakan sebuah instruksi ARM di Thumb-only prosesor -- `%s'"
+
+#: config/tc-arm.c:17114
+msgid "alignments greater than 32 bytes not supported in .text sections."
+msgstr "alignments lebih besar dari 32 bytes tidak didukung dalam daerah .text."
+
+#: config/tc-arm.c:17363 config/tc-ia64.c:3450
+#, c-format
+msgid "Group section `%s' has no group signature"
+msgstr "Daerah grup `%s' tidak memiliki tanda tangan grup"
+
+#: config/tc-arm.c:17408
+msgid "handlerdata in cantunwind frame"
+msgstr "handlerdata dalam frame cantunwind"
+
+#: config/tc-arm.c:17425
+msgid "too many unwind opcodes for personality routine 0"
+msgstr "terlalu banyak unwind opcodes untuk rutinitas 0"
+
+#: config/tc-arm.c:17457
+msgid "too many unwind opcodes"
+msgstr "terlalu banyak unwind opcodes"
+
+#: config/tc-arm.c:17681
+msgid "GOT already in the symbol table"
+msgstr "GOT telah berada dalam tabel simbol"
+
+#: config/tc-arm.c:17991 config/tc-arm.c:18275
+#, c-format
+msgid "undefined symbol %s used as an immediate value"
+msgstr "simbol %s tidak terdefinisi digunakan sebagai nilai langsung"
+
+#: config/tc-arm.c:18005 config/tc-arm.c:18314
+#, c-format
+msgid "invalid constant (%lx) after fixup"
+msgstr "konstanta (%lx) tidak valid setelah fixup"
+
+#: config/tc-arm.c:18042
+#, c-format
+msgid "unable to compute ADRL instructions for PC offset of 0x%lx"
+msgstr "tidak dapat menghitung instruksi ADRL untuk PC ofset di 0x%lx"
+
+#: config/tc-arm.c:18077 config/tc-arm.c:18102
+msgid "invalid literal constant: pool needs to be closer"
+msgstr "literal konstanta tidak valid: pool butuh lebih dekat"
+
+#: config/tc-arm.c:18080 config/tc-arm.c:18118
+#, c-format
+msgid "bad immediate value for offset (%ld)"
+msgstr "nilai langsung buruk untuk ofset (%ld)"
+
+#: config/tc-arm.c:18104
+#, c-format
+msgid "bad immediate value for 8-bit offset (%ld)"
+msgstr "nilai langsung buruk untuk ofset 8-bit (%ld)"
+
+#: config/tc-arm.c:18159
+msgid "offset not a multiple of 4"
+msgstr "ofset bukan kelipatan dari 4"
+
+#: config/tc-arm.c:18166 config/tc-arm.c:18181 config/tc-arm.c:18196
+#: config/tc-arm.c:18207 config/tc-arm.c:18230 config/tc-arm.c:18825
+#: config/tc-pj.c:450 config/tc-sh.c:4187
+msgid "offset out of range"
+msgstr "ofset diluar dari jangkauan"
+
+#: config/tc-arm.c:18330
+msgid "invalid smc expression"
+msgstr "ekspresi smc tidak valid"
+
+#: config/tc-arm.c:18341 config/tc-arm.c:18350
+msgid "invalid swi expression"
+msgstr "ekspresi swi tidak valid"
+
+#: config/tc-arm.c:18360
+msgid "invalid expression in load/store multiple"
+msgstr "ekspresi dalam load/store multiple tidak valid"
+
+#: config/tc-arm.c:18390
+msgid "misaligned branch destination"
+msgstr "cabang tujuan misaligned"
+
+#: config/tc-arm.c:18394 config/tc-arm.c:18431 config/tc-arm.c:18445
+#: config/tc-arm.c:18458 config/tc-arm.c:18497 config/tc-arm.c:18522
+msgid "branch out of range"
+msgstr "percabangan diluar dari jangkauan"
+
+#: config/tc-arm.c:18471
+msgid "conditional branch out of range"
+msgstr "percabangan kondisional diluar dari jangkauan"
+
+#: config/tc-arm.c:18599
+msgid "rel31 relocation overflow"
+msgstr "rel32 relokasi overflow"
+
+#: config/tc-arm.c:18611 config/tc-arm.c:18634
+msgid "co-processor offset out of range"
+msgstr "co-prosesor ofset diluar dari jangkauan"
+
+#: config/tc-arm.c:18651
+#, c-format
+msgid "invalid offset, target not word aligned (0x%08lX)"
+msgstr "ofset tidak valid, target tidak word aligned (0x%08lx)"
+
+#: config/tc-arm.c:18658 config/tc-arm.c:18667 config/tc-arm.c:18675
+#: config/tc-arm.c:18683 config/tc-arm.c:18691
+#, c-format
+msgid "invalid offset, value too big (0x%08lX)"
+msgstr "ofset tidak valid, nilai terlalu besar (0x%08lx)"
+
+#: config/tc-arm.c:18732
+msgid "invalid Hi register with immediate"
+msgstr "register Hi tidak valid dengan langsung"
+
+#: config/tc-arm.c:18748
+msgid "invalid immediate for stack address calculation"
+msgstr "tidak valid immediate untuk perhitungan alamat stack"
+
+#: config/tc-arm.c:18756
+#, c-format
+msgid "invalid immediate for address calculation (value = 0x%08lX)"
+msgstr "immediate tidak valid untuk perhitungan alamat (nilai = 0x%08lx)"
+
+#: config/tc-arm.c:18786
+#, c-format
+msgid "invalid immediate: %ld is out of range"
+msgstr "langsung tidak valid: %ld diluar dari jangkauan"
+
+#: config/tc-arm.c:18798
+#, c-format
+msgid "invalid shift value: %ld"
+msgstr "nilai shift tidak valid: %ld"
+
+#: config/tc-arm.c:18877
+#, c-format
+msgid "the offset 0x%08lX is not representable"
+msgstr "ofset 0x%08lx tidak direpresentasikan"
+
+#: config/tc-arm.c:18917
+#, c-format
+msgid "bad offset 0x%08lX (only 12 bits available for the magnitude)"
+msgstr "ofset buruk 0x%08lx (hanya 12 bit yang tersedia untuk magnitude)"
+
+#: config/tc-arm.c:18956
+#, c-format
+msgid "bad offset 0x%08lX (only 8 bits available for the magnitude)"
+msgstr "ofset buruk 0x%08lx (hanya 8 bit tersedia untuk magnitude)"
+
+#: config/tc-arm.c:18996
+#, c-format
+msgid "bad offset 0x%08lX (must be word-aligned)"
+msgstr "ofset buruk 0x%08lx (harus word-aligned)"
+
+#: config/tc-arm.c:19001
+#, c-format
+msgid "bad offset 0x%08lX (must be an 8-bit number of words)"
+msgstr "ofset buruk 0x%08lx (harus berupa sebuah nomor 8-bit kata)"
+
+#: config/tc-arm.c:19032 config/tc-score.c:5410
+#, c-format
+msgid "bad relocation fixup type (%d)"
+msgstr "relokasi buruk tipe perbaikan (%d)"
+
+#: config/tc-arm.c:19135
+msgid "literal referenced across section boundary"
+msgstr "literal direferensikan melewati batas bagian"
+
+#: config/tc-arm.c:19196
+msgid "internal relocation (type: IMMEDIATE) not fixed up"
+msgstr "relokasi internal (tipe: IMMEDIATE) bukan fixed up"
+
+#: config/tc-arm.c:19201
+msgid "ADRL used for a symbol not defined in the same file"
+msgstr "ADRL digunakan untuk simbol tidak didefinisikan dalam berkas yang sama"
+
+#: config/tc-arm.c:19216
+#, c-format
+msgid "undefined local label `%s'"
+msgstr "tabel lokal `%s' tidak terdefinisi"
+
+#: config/tc-arm.c:19222
+msgid "internal_relocation (type: OFFSET_IMM) not fixed up"
+msgstr "internal_relocation (tipe: OFFSET_IMM) bukan perbaikan"
+
+#: config/tc-arm.c:19243 config/tc-cris.c:3925 config/tc-mcore.c:1926
+#: config/tc-mmix.c:2859 config/tc-ns32k.c:2248 config/tc-score.c:5501
+msgid "<unknown>"
+msgstr "<tidak diketahui>"
+
+#: config/tc-arm.c:19246 config/tc-arm.c:19267 config/tc-score.c:5503
+#, c-format
+msgid "cannot represent %s relocation in this object file format"
+msgstr "tidak dapat merepresentasikan %s relokasi dalam format berkas objek ini"
+
+#: config/tc-arm.c:19512
+#, c-format
+msgid "%s: unexpected function type: %d"
+msgstr "%s: tidak diduga tipe fungsi: %d"
+
+#: config/tc-arm.c:19635
+msgid "use of old and new-style options to set CPU type"
+msgstr "gunakan opsi gaya lama dan baru untuk menset tipe CPU"
+
+#: config/tc-arm.c:19645
+msgid "use of old and new-style options to set FPU type"
+msgstr "gunakan opsi gaya lama dan baru untuk menset tipe FPU"
+
+#: config/tc-arm.c:19720
+msgid "hard-float conflicts with specified fpu"
+msgstr "hard-float konflik dengan fpu yang dispesifikasikan"
+
+#: config/tc-arm.c:19905
+msgid "generate PIC code"
+msgstr "hasilkan kode PIC"
+
+#: config/tc-arm.c:19906
+msgid "assemble Thumb code"
+msgstr "rakit kode Thumb"
+
+#: config/tc-arm.c:19907
+msgid "support ARM/Thumb interworking"
+msgstr "dukung antar-kerja ARM/Thumb"
+
+#: config/tc-arm.c:19909
+msgid "code uses 32-bit program counter"
+msgstr "kode menggunakan 32-bit program counter"
+
+#: config/tc-arm.c:19910
+msgid "code uses 26-bit program counter"
+msgstr "kode menggunakan 26-bit program counter"
+
+#: config/tc-arm.c:19911
+msgid "floating point args are in fp regs"
+msgstr "floating point args berada dalam fp register"
+
+#: config/tc-arm.c:19913
+msgid "re-entrant code"
+msgstr "kode re-entrant"
+
+#: config/tc-arm.c:19914
+msgid "code is ATPCS conformant"
+msgstr "kode adalah ATPCS conformant"
+
+#: config/tc-arm.c:19915
+msgid "assemble for big-endian"
+msgstr "merakit untuk big-endian"
+
+#: config/tc-arm.c:19916
+msgid "assemble for little-endian"
+msgstr "merakit untuk little-endian"
+
+#. These are recognized by the assembler, but have no affect on code.
+#: config/tc-arm.c:19920
+msgid "use frame pointer"
+msgstr "menggunakan frame pointer"
+
+#: config/tc-arm.c:19921
+msgid "use stack size checking"
+msgstr "menggunakan ukuran stack untuk memeriksa"
+
+#. DON'T add any new processors to this list -- we want the whole list
+#. to go away...  Add them to the processors table instead.
+#: config/tc-arm.c:19937 config/tc-arm.c:19938
+msgid "use -mcpu=arm1"
+msgstr "gunakan -mcpu=arm1"
+
+#: config/tc-arm.c:19939 config/tc-arm.c:19940
+msgid "use -mcpu=arm2"
+msgstr "gunakan -mcu=arm2"
+
+#: config/tc-arm.c:19941 config/tc-arm.c:19942
+msgid "use -mcpu=arm250"
+msgstr "gunakan -mcpu=arm250"
+
+#: config/tc-arm.c:19943 config/tc-arm.c:19944
+msgid "use -mcpu=arm3"
+msgstr "gunakan -mcpu=arm3"
+
+#: config/tc-arm.c:19945 config/tc-arm.c:19946
+msgid "use -mcpu=arm6"
+msgstr "gunakan -mcpu=arm6"
+
+#: config/tc-arm.c:19947 config/tc-arm.c:19948
+msgid "use -mcpu=arm600"
+msgstr "gunakan -mcpu=arm600"
+
+#: config/tc-arm.c:19949 config/tc-arm.c:19950
+msgid "use -mcpu=arm610"
+msgstr "gunakan -mcpu=arm610"
+
+#: config/tc-arm.c:19951 config/tc-arm.c:19952
+msgid "use -mcpu=arm620"
+msgstr "gunakan -mcu=arm620"
+
+#: config/tc-arm.c:19953 config/tc-arm.c:19954
+msgid "use -mcpu=arm7"
+msgstr "gunakan -mcpu=arm7"
+
+#: config/tc-arm.c:19955 config/tc-arm.c:19956
+msgid "use -mcpu=arm70"
+msgstr "gunakan -mcpu=arm70"
+
+#: config/tc-arm.c:19957 config/tc-arm.c:19958
+msgid "use -mcpu=arm700"
+msgstr "gunakan -mcpu=arm700"
+
+#: config/tc-arm.c:19959 config/tc-arm.c:19960
+msgid "use -mcpu=arm700i"
+msgstr "gunakan -mcpu=arm700i"
+
+#: config/tc-arm.c:19961 config/tc-arm.c:19962
+msgid "use -mcpu=arm710"
+msgstr "gunakan -mcpu=arm710"
+
+#: config/tc-arm.c:19963 config/tc-arm.c:19964
+msgid "use -mcpu=arm710c"
+msgstr "gunakan -mcpu=arm710c"
+
+#: config/tc-arm.c:19965 config/tc-arm.c:19966
+msgid "use -mcpu=arm720"
+msgstr "gunakan -mcpu=arm720"
+
+#: config/tc-arm.c:19967 config/tc-arm.c:19968
+msgid "use -mcpu=arm7d"
+msgstr "gunakan -mcpu=arm7d"
+
+#: config/tc-arm.c:19969 config/tc-arm.c:19970
+msgid "use -mcpu=arm7di"
+msgstr "gunakan -mcpu=arm7di"
+
+#: config/tc-arm.c:19971 config/tc-arm.c:19972
+msgid "use -mcpu=arm7m"
+msgstr "gunakan -mcpu=arm7m"
+
+#: config/tc-arm.c:19973 config/tc-arm.c:19974
+msgid "use -mcpu=arm7dm"
+msgstr "gunakan -mcpu=arm7dm"
+
+#: config/tc-arm.c:19975 config/tc-arm.c:19976
+msgid "use -mcpu=arm7dmi"
+msgstr "gunakan -mcpu=arm7dmi"
+
+#: config/tc-arm.c:19977 config/tc-arm.c:19978
+msgid "use -mcpu=arm7100"
+msgstr "gunakan -mcpu=arm7100"
+
+#: config/tc-arm.c:19979 config/tc-arm.c:19980
+msgid "use -mcpu=arm7500"
+msgstr "gunakan -mcpu=arm7500"
+
+#: config/tc-arm.c:19981 config/tc-arm.c:19982
+msgid "use -mcpu=arm7500fe"
+msgstr "gunakan -mcpu=arm7500fe"
+
+#: config/tc-arm.c:19983 config/tc-arm.c:19984 config/tc-arm.c:19985
+#: config/tc-arm.c:19986
+msgid "use -mcpu=arm7tdmi"
+msgstr "gunakan -mcpu=arm7tdmi"
+
+#: config/tc-arm.c:19987 config/tc-arm.c:19988
+msgid "use -mcpu=arm710t"
+msgstr "gunakan -mcpu=arm710t"
+
+#: config/tc-arm.c:19989 config/tc-arm.c:19990
+msgid "use -mcpu=arm720t"
+msgstr "gunakan -mcpu=arm720t"
+
+#: config/tc-arm.c:19991 config/tc-arm.c:19992
+msgid "use -mcpu=arm740t"
+msgstr "gunakan -mcpu=arm740t"
+
+#: config/tc-arm.c:19993 config/tc-arm.c:19994
+msgid "use -mcpu=arm8"
+msgstr "gunakan -mcpu=arm8"
+
+#: config/tc-arm.c:19995 config/tc-arm.c:19996
+msgid "use -mcpu=arm810"
+msgstr "gunakan -mcpu=arm810"
+
+#: config/tc-arm.c:19997 config/tc-arm.c:19998
+msgid "use -mcpu=arm9"
+msgstr "gunakan -mcpu=arm9"
+
+#: config/tc-arm.c:19999 config/tc-arm.c:20000
+msgid "use -mcpu=arm9tdmi"
+msgstr "gunakan -mcpu=arm9tdmi"
+
+#: config/tc-arm.c:20001 config/tc-arm.c:20002
+msgid "use -mcpu=arm920"
+msgstr "gunakan -mcpu=arm920"
+
+#: config/tc-arm.c:20003 config/tc-arm.c:20004
+msgid "use -mcpu=arm940"
+msgstr "gunakan -mcpu=arm940"
+
+#: config/tc-arm.c:20005
+msgid "use -mcpu=strongarm"
+msgstr "gunakan -mcpu=strongarm"
+
+#: config/tc-arm.c:20007
+msgid "use -mcpu=strongarm110"
+msgstr "gunakan -mcpu=strongarm110"
+
+#: config/tc-arm.c:20009
+msgid "use -mcpu=strongarm1100"
+msgstr "gunakan -mcpu=strongarm1100"
+
+#: config/tc-arm.c:20011
+msgid "use -mcpu=strongarm1110"
+msgstr "gunakan -mcpu=strongarm1110"
+
+#: config/tc-arm.c:20012
+msgid "use -mcpu=xscale"
+msgstr "gunakan -mcpu=xscale"
+
+#: config/tc-arm.c:20013
+msgid "use -mcpu=iwmmxt"
+msgstr "gunakan -mcpu=iwmmxt"
+
+#: config/tc-arm.c:20014
+msgid "use -mcpu=all"
+msgstr "gunakan -mcpu=all"
+
+#. Architecture variants -- don't add any more to this list either.
+#: config/tc-arm.c:20017 config/tc-arm.c:20018
+msgid "use -march=armv2"
+msgstr "gunakan -march=armv2"
+
+#: config/tc-arm.c:20019 config/tc-arm.c:20020
+msgid "use -march=armv2a"
+msgstr "gunakan -march=armv2a"
+
+#: config/tc-arm.c:20021 config/tc-arm.c:20022
+msgid "use -march=armv3"
+msgstr "gunakan -march=armv3"
+
+#: config/tc-arm.c:20023 config/tc-arm.c:20024
+msgid "use -march=armv3m"
+msgstr "gunakan -march=armv3m"
+
+#: config/tc-arm.c:20025 config/tc-arm.c:20026
+msgid "use -march=armv4"
+msgstr "gunakan -march=armv4"
+
+#: config/tc-arm.c:20027 config/tc-arm.c:20028
+msgid "use -march=armv4t"
+msgstr "gunakan -march=armv4t"
+
+#: config/tc-arm.c:20029 config/tc-arm.c:20030
+msgid "use -march=armv5"
+msgstr "gunakan -march=armv5"
+
+#: config/tc-arm.c:20031 config/tc-arm.c:20032
+msgid "use -march=armv5t"
+msgstr "gunakan -march=armv5t"
+
+#: config/tc-arm.c:20033 config/tc-arm.c:20034
+msgid "use -march=armv5te"
+msgstr "gunakan -march=armv5te"
+
+#. Floating point variants -- don't add any more to this list either.
+#: config/tc-arm.c:20037
+msgid "use -mfpu=fpe"
+msgstr "gunakan -mfpu=fpe"
+
+#: config/tc-arm.c:20038
+msgid "use -mfpu=fpa10"
+msgstr "gunakan -mfpu=fpa10"
+
+#: config/tc-arm.c:20039
+msgid "use -mfpu=fpa11"
+msgstr "gunakan -mfpu=fpa11"
+
+#: config/tc-arm.c:20041
+msgid "use either -mfpu=softfpa or -mfpu=softvfp"
+msgstr "gunakan baik mfpu=softpa atau -mfpu=softvp"
+
+#: config/tc-arm.c:20314
+msgid "invalid architectural extension"
+msgstr "ekstensi arsitektur tidak valid"
+
+#: config/tc-arm.c:20328
+msgid "missing architectural extension"
+msgstr "ekstensi arsitektur hilang"
+
+#: config/tc-arm.c:20341
+#, c-format
+msgid "unknown architectural extension `%s'"
+msgstr "ekstensi arsitektur `%s' tidak diketahui"
+
+#: config/tc-arm.c:20365
+#, c-format
+msgid "missing cpu name `%s'"
+msgstr "nama cpu `%s' hilang"
+
+#: config/tc-arm.c:20390 config/tc-arm.c:20786
+#, c-format
+msgid "unknown cpu `%s'"
+msgstr "cpu `%s' tidak dikenal"
+
+#: config/tc-arm.c:20408
+#, c-format
+msgid "missing architecture name `%s'"
+msgstr "nama arsitektur `%s' hilang"
+
+#: config/tc-arm.c:20425 config/tc-arm.c:20820 config/tc-arm.c:20851
+#, c-format
+msgid "unknown architecture `%s'\n"
+msgstr "arsitektur `%s' tidak dikenal\n"
+
+#: config/tc-arm.c:20441 config/tc-arm.c:20882
+#, c-format
+msgid "unknown floating point format `%s'\n"
+msgstr "format floating point `%s' tidak dikenal\n"
+
+#: config/tc-arm.c:20457
+#, c-format
+msgid "unknown floating point abi `%s'\n"
+msgstr "floating point abi `%s' tidak dikenal\n"
+
+#: config/tc-arm.c:20473
+#, c-format
+msgid "unknown EABI `%s'\n"
+msgstr "EABI `%s' tidak dikenal\n"
+
+#: config/tc-arm.c:20480
+msgid "<cpu name>\t  assemble for CPU <cpu name>"
+msgstr "<nama cpu>\t  rakit untuk CPU <nama cpu>"
+
+#: config/tc-arm.c:20482
+msgid "<arch name>\t  assemble for architecture <arch name>"
+msgstr "<nama arch>\t  rakit untuk arsitektur <nama arch>"
+
+#: config/tc-arm.c:20484
+msgid "<fpu name>\t  assemble for FPU architecture <fpu name>"
+msgstr "<nama fpu>\t  rakit untuk arsitektur FPU <nama fpu>"
+
+#: config/tc-arm.c:20486
+msgid "<abi>\t  assemble for floating point ABI <abi>"
+msgstr "<abi>\t  rakit untuk floating point ABI <abi>"
+
+#: config/tc-arm.c:20489
+msgid "<ver>\t\t  assemble for eabi version <ver>"
+msgstr "<ver>\t\t  rakit untuk eabi versi <ver>"
+
+#: config/tc-arm.c:20535 config/tc-arm.c:20555 config/tc-arm.c:20577
+#, c-format
+msgid "option `-%c%s' is deprecated: %s"
+msgstr "opsi `-%c%s' kadaluarsa: %s"
+
+#: config/tc-arm.c:20598
+#, c-format
+msgid " ARM-specific assembler options:\n"
+msgstr " opsi perakit ARM-spesifik:\n"
+
+#: config/tc-arm.c:20609
+#, c-format
+msgid "  -EB                     assemble code for a big-endian cpu\n"
+msgstr "  -EB                     rakit kode untuk sebuah cpu big-endian\n"
+
+#: config/tc-arm.c:20614
+#, c-format
+msgid "  -EL                     assemble code for a little-endian cpu\n"
+msgstr "  -EL                     rakit kode untuk sebuah cpu little-endian\n"
+
+#: config/tc-arm.c:20618
+#, c-format
+msgid "  --fix-v4bx              Allow BX in ARMv4 code\n"
+msgstr "  --fix-v4bx              Ijinkan BX dalam kode ARMv4\n"
+
+#: config/tc-avr.c:284
+#, c-format
+msgid "Known MCU names:"
+msgstr "Nama MCU yang dikenal:"
+
+#: config/tc-avr.c:350
+#, c-format
+msgid ""
+"AVR options:\n"
+"  -mmcu=[avr-name] select microcontroller variant\n"
+"                   [avr-name] can be:\n"
+"                   avr1  - classic AVR core without data RAM\n"
+"                   avr2  - classic AVR core with up to 8K program memory\n"
+"                   avr25 - classic AVR core with up to 8K program memory\n"
+"                           plus the MOVW instruction\n"
+"                   avr3  - classic AVR core with up to 64K program memory\n"
+"                   avr31 - classic AVR core with up to 128K program memory\n"
+"                   avr35 - classic AVR core with up to 64K program memory\n"
+"                           plus the MOVW instruction\n"
+"                   avr4  - enhanced AVR core with up to 8K program memory\n"
+"                   avr5  - enhanced AVR core with up to 64K program memory\n"
+"                   avr51 - enhanced AVR core with up to 128K program memory\n"
+"                   avr6  - enhanced AVR core with up to 256K program memory\n"
+"                   or immediate microcontroller name.\n"
+msgstr ""
+"Opsi AVR:\n"
+"  -mmcu=[nama-avr] pilih variasi mikro-kontroller\n"
+"                   [nama-avr]  dapat berupa:\n"
+"                   avr1  - klasik AVR core tanpa data RAM\n"
+"                   avr2  - klasik AVR core dengan sampai 8K memori aplikasi\n"
+"                   avr25 - klasik AVR core dengan sampai 8K memori aplikasi\n"
+"                           ditambah instruksi MOVW\n"
+"                   avr3  - klasik AVR core dengan sampai 64K memori aplikasi\n"
+"                   avr31 - klasik AVR core dengan sampai 128K memori aplikasi\n"
+"                   avr35 - klasik AVR core dengan sampai 64K memori aplikasi\n"
+"                           ditambah instruksi MOVW\n"
+"                   avr4  - enhanced AVR core dengan sampai 8K program memori\n"
+"                   avr5  - enhanced AVR core dengan sampai 64K program memori\n"
+"                   avr51 - enhanced AVR core dengan sampai 128K program memori\n"
+"                   avr6  - enhanced AVR core dengan sampai 256K program memori\n"
+"                   atau nama mikro-kontroller langsung.\n"
+
+#: config/tc-avr.c:367
+#, c-format
+msgid ""
+"  -mall-opcodes    accept all AVR opcodes, even if not supported by MCU\n"
+"  -mno-skip-bug    disable warnings for skipping two-word instructions\n"
+"                   (default for avr4, avr5)\n"
+"  -mno-wrap        reject rjmp/rcall instructions with 8K wrap-around\n"
+"                   (default for avr3, avr5)\n"
+msgstr ""
+"  -mall-opcodes    terima seluruh AVR opcodes, walaupun itu tidak didukung oleh MCU\n"
+"  -mno-skip-bug    non-aktifkan peringatan untuk melewati instruksi dua-kata\n"
+"                   (baku untuk avr4, avr5)\n"
+"  -mno-wrap        tolak rjmp/rcall instruksi dengan 8K wrap-round\n"
+"                   (baku untuk avr3, avr5)\n"
+
+#: config/tc-avr.c:411 config/tc-msp430.c:744
+#, c-format
+msgid "unknown MCU: %s\n"
+msgstr "MCU tidak dikenal: %s\n"
+
+#: config/tc-avr.c:420
+#, c-format
+msgid "redefinition of mcu type `%s' to `%s'"
+msgstr "redefinisi dari tipe mcu `%s' ke `%s'"
+
+#: config/tc-avr.c:498
+msgid "constant value required"
+msgstr "nilai konstanta dibutuhkan"
+
+#: config/tc-avr.c:501
+#, c-format
+msgid "number must be positive and less than %d"
+msgstr "nomor harus positif dan lebih kecil dari %d"
+
+#: config/tc-avr.c:527 config/tc-avr.c:664
+#, c-format
+msgid "constant out of 8-bit range: %d"
+msgstr "konstanta diluar dari jangkauan 8-bit: %d"
+
+#: config/tc-avr.c:595 config/tc-score.c:969 read.c:3571
+msgid "illegal expression"
+msgstr "ekspresi ilegal"
+
+#: config/tc-avr.c:624 config/tc-avr.c:1391
+msgid "`)' required"
+msgstr "`)' dibutuhkan"
+
+#: config/tc-avr.c:719
+msgid "register r16-r23 required"
+msgstr "register r16-r23 dibutuhkan"
+
+#: config/tc-avr.c:725
+msgid "register number above 15 required"
+msgstr "nomor register diatas 15 dibutuhkan"
+
+#: config/tc-avr.c:731
+msgid "even register number required"
+msgstr "nomor register genap dibutuhkan"
+
+#: config/tc-avr.c:737
+msgid "register r24, r26, r28 or r30 required"
+msgstr "register r24, r26, r28 atau r30 dibutuhkan"
+
+#: config/tc-avr.c:743
+msgid "register name or number from 0 to 31 required"
+msgstr "nama atau nomor register dari 0 sampai 31 dibutuhkan"
+
+#: config/tc-avr.c:761
+msgid "pointer register (X, Y or Z) required"
+msgstr "register petunjuk (X, Y, atau Z) dibutuhkan"
+
+#: config/tc-avr.c:768
+msgid "cannot both predecrement and postincrement"
+msgstr "tidak dapat keduanya predecrement dan postincrement"
+
+#: config/tc-avr.c:776
+msgid "addressing mode not supported"
+msgstr "mode pengalamatan tidak didukung"
+
+#: config/tc-avr.c:782
+msgid "can't predecrement"
+msgstr "tidak dapat predrecement"
+
+#: config/tc-avr.c:785
+msgid "pointer register Z required"
+msgstr "pointer register Z dibutuhkan"
+
+#: config/tc-avr.c:799
+msgid "postincrement not supported"
+msgstr "postincrement tidak didukung"
+
+#: config/tc-avr.c:809
+msgid "pointer register (Y or Z) required"
+msgstr "register petunjuk (Y atau Z) dibutuhkan"
+
+#: config/tc-avr.c:913
+#, c-format
+msgid "unknown constraint `%c'"
+msgstr "konstraint `%c' tidak diketahui"
+
+#: config/tc-avr.c:965
+msgid "`,' required"
+msgstr "`,' dibutuhkan"
+
+#: config/tc-avr.c:983
+msgid "undefined combination of operands"
+msgstr "kombinasi dari operan tidak terdefinisi"
+
+#: config/tc-avr.c:992
+msgid "skipping two-word instruction"
+msgstr "melewati instruksi dua-kata"
+
+#: config/tc-avr.c:1084 config/tc-avr.c:1100 config/tc-avr.c:1214
+#: config/tc-msp430.c:1970 config/tc-msp430.c:1988
+#, c-format
+msgid "odd address operand: %ld"
+msgstr "alamat operan aneh: %ld"
+
+#: config/tc-avr.c:1092 config/tc-avr.c:1111 config/tc-avr.c:1133
+#: config/tc-avr.c:1140 config/tc-avr.c:1147 config/tc-d10v.c:503
+#: config/tc-d30v.c:554 config/tc-msp430.c:1978 config/tc-msp430.c:1993
+#: config/tc-msp430.c:2003
+#, c-format
+msgid "operand out of range: %ld"
+msgstr "operan diluar dari jangkauan: %ld"
+
+#: config/tc-avr.c:1223 config/tc-d10v.c:1585 config/tc-d30v.c:2025
+#: config/tc-msp430.c:2021
+#, c-format
+msgid "line %d: unknown relocation type: 0x%x"
+msgstr "baris %d: tipe relokasi tidak dikenal: 0x%x"
+
+#: config/tc-avr.c:1237
+msgid "only constant expression allowed"
+msgstr "hanya ekspresi konstanta yang diijinkan"
+
+#. xgettext:c-format.
+#: config/tc-avr.c:1297 config/tc-bfin.c:734 config/tc-d10v.c:1457
+#: config/tc-d30v.c:1769 config/tc-mn10200.c:781 config/tc-mn10300.c:2171
+#: config/tc-msp430.c:2056 config/tc-or32.c:958 config/tc-ppc.c:6163
+#: config/tc-spu.c:830 config/tc-spu.c:1026 config/tc-v850.c:2187
+#: config/tc-z80.c:2017
+#, c-format
+msgid "reloc %d not supported by object file format"
+msgstr "relokasi %d tidak didukung oleh format berkas objek"
+
+#: config/tc-avr.c:1320 config/tc-h8300.c:1871 config/tc-mcore.c:881
+#: config/tc-msp430.c:1821 config/tc-pj.c:253 config/tc-sh.c:2544
+#: config/tc-z8k.c:1216
+msgid "can't find opcode "
+msgstr "tidak dapat menemukan opcode"
+
+#: config/tc-avr.c:1337
+#, c-format
+msgid "illegal opcode %s for mcu %s"
+msgstr "opcode %s untuk mcu %s tidak legal"
+
+#: config/tc-avr.c:1346
+msgid "garbage at end of line"
+msgstr "sampah diakhir dari baris"
+
+#: config/tc-avr.c:1418 config/tc-avr.c:1425
+#, c-format
+msgid "illegal %srelocation size: %d"
+msgstr "tidak legal %s ukuran relokasi: %d"
+
+#: config/tc-bfin.c:253 config/tc-frv.c:1606 config/tc-frv.c:1616
+msgid "missing ')'"
+msgstr "hilang ')'"
+
+#: config/tc-bfin.c:350
+#, c-format
+msgid " BFIN specific command line options:\n"
+msgstr " opsi baris perintah spesifik BFIN:\n"
+
+#: config/tc-bfin.c:363
+msgid "Could not set architecture and machine."
+msgstr "Tidak dapat menset arsitektur dan mesin."
+
+#: config/tc-bfin.c:508
+msgid "Parse failed."
+msgstr "Parse gagal."
+
+#: config/tc-bfin.c:583
+msgid "pcrel too far BFD_RELOC_BFIN_10"
+msgstr "pcrel terlalu jauh BFD_RELOC_BFIN_10"
+
+#: config/tc-bfin.c:599
+msgid "pcrel too far BFD_RELOC_BFIN_12"
+msgstr "pcrel terlalu jauh BFD_RELOC_BFIN_12"
+
+#: config/tc-bfin.c:619
+msgid "pcrel too far BFD_RELOC_BFIN_24"
+msgstr "pcrel terlalu jauh BFD_RELOC_BFIN_24"
+
+#: config/tc-bfin.c:634
+msgid "pcrel too far BFD_RELOC_BFIN_5"
+msgstr "pcrel terlalu jauh BFD_RELOC_BFIN_5"
+
+#: config/tc-bfin.c:646
+msgid "pcrel too far BFD_RELOC_BFIN_11_PCREL"
+msgstr "pcrel terlalu jauh BFD_RELOC_BFIN_11_PCREL"
+
+#: config/tc-bfin.c:656
+msgid "rel too far BFD_RELOC_8"
+msgstr "rel terlalu jauh BFD_RELOC_0"
+
+#: config/tc-bfin.c:663
+msgid "rel too far BFD_RELOC_16"
+msgstr "rel terlalu jauh BFD_RELOC_16"
+
+#: config/tc-cr16.c:159 read.c:4297
+msgid "using a bit field width of zero"
+msgstr "menggunakan sebuah lebar daerah bit dari nol"
+
+#: config/tc-cr16.c:167 read.c:4305
+#, c-format
+msgid "field width \"%s\" too complex for a bitfield"
+msgstr "lebar field \"%s\" terlalu kompleks untuk sebuah bitfield"
+
+#: config/tc-cr16.c:176 read.c:4313
+#, c-format
+msgid "field width %lu too big to fit in %d bytes: truncated to %d bits"
+msgstr "lebar field %lu terlalu besar untuk masuk dalam %d bytes: dipotong ke %d bits"
+
+#: config/tc-cr16.c:198 read.c:4335
+#, c-format
+msgid "field value \"%s\" too complex for a bitfield"
+msgstr "nilai field \"%s\" terlalu kompleks untuk sebuah bitfield"
+
+#: config/tc-cr16.c:379
+#, c-format
+msgid "Unknown register pair - index relative mode: `%d'"
+msgstr "Pasangan register tidak dikenal - mode relatif indeks: `%d'"
+
+#: config/tc-cr16.c:556 config/tc-crx.c:344 config/tc-mn10200.c:768
+#: write.c:959
+#, c-format
+msgid "can't resolve `%s' {%s section} - `%s' {%s section}"
+msgstr "tidak dapat menyelesaikan `%s'{bagian %s} - `%s' {bagian %s}"
+
+#: config/tc-cr16.c:572 config/tc-crx.c:360
+#, c-format
+msgid "internal error: reloc %d (`%s') not supported by object file format"
+msgstr "internal error: relokasi %d (`%s') tidak didukung oleh format berkas objek"
+
+#: config/tc-cr16.c:743 config/tc-cr16.c:766 config/tc-cris.c:1181
+#: config/tc-crx.c:534 config/tc-crx.c:561 config/tc-crx.c:579
+msgid "Virtual memory exhausted"
+msgstr "Kehabisan memori maya"
+
+#: config/tc-cr16.c:751 config/tc-crx.c:571 config/tc-crx.c:590
+#: config/tc-i386.c:2080 config/tc-i386.c:2102 config/tc-m68k.c:4466
+#: config/tc-maxq.c:2865
+#, c-format
+msgid "Internal Error:  Can't hash %s: %s"
+msgstr "Internal Error: Tidak dapat hash %s: %s"
+
+#: config/tc-cr16.c:777 config/tc-cris.c:1215 config/tc-crx.c:544
+#, c-format
+msgid "Can't hash `%s': %s\n"
+msgstr "Tidak dapat hash `%s': %s\n"
+
+#: config/tc-cr16.c:778 config/tc-cris.c:1216 config/tc-crx.c:545
+msgid "(unknown reason)"
+msgstr "(alasan tidak diketahui)"
+
+#. Missing or bad expr becomes absolute 0.
+#: config/tc-cr16.c:828 config/tc-crx.c:618 config/tc-maxq.c:1475
+#, c-format
+msgid "missing or invalid displacement expression `%s' taken as 0"
+msgstr "hilang atau ekspresi perpindahan tidak valid `%s' diambil sebagai 0"
+
+#: config/tc-cr16.c:940
+#, c-format
+msgid "operand %d: illegal use expression: `%s`"
+msgstr "operan %d: menggunakan pernyataan tidak legal: `%s'"
+
+#: config/tc-cr16.c:997 config/tc-crx.c:1126
+#, c-format
+msgid "Unknown register: `%d'"
+msgstr "Register tidak diketahui: `%d'"
+
+#. Issue a error message when register is illegal.
+#: config/tc-cr16.c:1005 config/tc-crx.c:1134
+#, c-format
+msgid "Illegal register (`%s') in Instruction: `%s'"
+msgstr "Register (`%s') tidak legal dalam Instruksi: `%s'"
+
+#: config/tc-cr16.c:1076 config/tc-cr16.c:1151 config/tc-crx.c:756
+#: config/tc-crx.c:776 config/tc-crx.c:791
+#, c-format
+msgid "Illegal register `%s' in Instruction `%s'"
+msgstr "Register `%s' tidak legal dalam Instruksi `%s'"
+
+#: config/tc-cr16.c:1104 config/tc-cr16.c:1115
+#, c-format
+msgid "Illegal register pair `%s' in Instruction `%s'"
+msgstr "Pasangan register `%s' tidak legal dalam instruksi `%s'"
+
+#: config/tc-cr16.c:1140 config/tc-i960.c:835
+msgid "unmatched '['"
+msgstr "tidak cocok '['"
+
+#: config/tc-cr16.c:1146 config/tc-i960.c:842
+msgid "garbage after index spec ignored"
+msgstr "sampah sesudah spesifikasi indeks diabaikan"
+
+#: config/tc-cr16.c:1294 config/tc-crx.c:935
+#, c-format
+msgid "Illegal operands (whitespace): `%s'"
+msgstr "operan tidak legal (spasi): `%s'"
+
+#: config/tc-cr16.c:1306 config/tc-cr16.c:1313 config/tc-cr16.c:1330
+#: config/tc-crx.c:947 config/tc-crx.c:954 config/tc-crx.c:971
+#: config/tc-crx.c:1763
+#, c-format
+msgid "Missing matching brackets : `%s'"
+msgstr "Hilang pencocokan brackets : `%s'"
+
+#: config/tc-cr16.c:1362 config/tc-crx.c:997
+#, c-format
+msgid "Unknown exception: `%s'"
+msgstr "Pernyataan tidak diketahui: `%s'"
+
+#: config/tc-cr16.c:1449 config/tc-crx.c:1093
+#, c-format
+msgid "Illegal `cinv' parameter: `%c'"
+msgstr "Parameter `cinv' tidak legal: `%c'"
+
+#: config/tc-cr16.c:1471 config/tc-cr16.c:1510
+#, c-format
+msgid "Unknown register pair: `%d'"
+msgstr "Pasangan register tidak dikenal: `%d'"
+
+#. Issue a error message when register  pair is illegal.
+#: config/tc-cr16.c:1479
+#, c-format
+msgid "Illegal register pair (`%s') in Instruction: `%s'"
+msgstr "Pasangan register (`%s') tidak legal dalam Instruksi: `%s'"
+
+#. Issue a error message when register  pair is illegal.
+#: config/tc-cr16.c:1518
+#, c-format
+msgid "Illegal index register pair (`%s') in Instruction: `%s'"
+msgstr "Pasangan indeks register (`%s') tidak legal dalam Instruksi: `%s'"
+
+#: config/tc-cr16.c:1557
+#, c-format
+msgid "Unknown processor register : `%d'"
+msgstr "register prosesor tidak dikenal: `%d'"
+
+#. Issue a error message when register  pair is illegal.
+#: config/tc-cr16.c:1565
+#, c-format
+msgid "Illegal processor register (`%s') in Instruction: `%s'"
+msgstr "register prosesor (`%s') tidak legal dalam instruksi: `%s'"
+
+#: config/tc-cr16.c:1613
+#, c-format
+msgid "Unknown processor register (32 bit) : `%d'"
+msgstr "register prosesor (32 bit) tidak dikenal: `%d'"
+
+#. Issue a error message when register  pair is illegal.
+#: config/tc-cr16.c:1621
+#, c-format
+msgid "Illegal 32 bit - processor register (`%s') in Instruction: `%s'"
+msgstr "32 bit tidak legal - prosesor register (`%s') dalam Instruksi: `%s'"
+
+#: config/tc-cr16.c:1985 config/tc-crx.c:1661 config/tc-crx.c:1678
+#, c-format
+msgid "Same src/dest register is used (`r%d'), result is undefined"
+msgstr "Register sumber/tujuan sama menggunakan (`r%d'), hasil tidak terdefinisi"
+
+#: config/tc-cr16.c:2006
+msgid "RA register is saved twice."
+msgstr "Register RA disimpan dua kali."
+
+#: config/tc-cr16.c:2010
+#, c-format
+msgid "`%s' Illegal use of registers."
+msgstr "`%s' tidak legal digunakan dari register."
+
+#: config/tc-cr16.c:2024
+#, c-format
+msgid "`%s' Illegal count-register combination."
+msgstr "`%s' tidak legal kombinasi count-register."
+
+#: config/tc-cr16.c:2030
+#, c-format
+msgid "`%s' Illegal use of register."
+msgstr "`%s' tidal legal penggunaan dari register."
+
+#: config/tc-cr16.c:2039 config/tc-crx.c:1670
+#, c-format
+msgid "`%s' has undefined result"
+msgstr "`%s' memiliki hasil yang tidak terdefinisi"
+
+#: config/tc-cr16.c:2047
+#, c-format
+msgid "Same src/dest register is used (`r%d'),result is undefined"
+msgstr "Register asal/tujuan sama menggunakan (`r%d'), hasil tidak terdefinisi"
+
+#: config/tc-cr16.c:2218 config/tc-crx.c:1575
+msgid "Incorrect number of operands"
+msgstr "Jumlah dari operan tidak benar"
+
+#: config/tc-cr16.c:2220 config/tc-crx.c:1577
+#, c-format
+msgid "Illegal type of operand (arg %d)"
+msgstr "Tipe dari operan (arg %d) tidak lega"
+
+#: config/tc-cr16.c:2226 config/tc-crx.c:1583
+#, c-format
+msgid "Operand out of range (arg %d)"
+msgstr "Operan diluar dari jangkauan (arg %d)"
+
+#: config/tc-cr16.c:2229 config/tc-crx.c:1586
+#, c-format
+msgid "Operand has odd displacement (arg %d)"
+msgstr "Operan memiliki displacement aneh (arg %d)"
+
+#: config/tc-cr16.c:2232 config/tc-cr16.c:2263 config/tc-crx.c:1599
+#: config/tc-crx.c:1630
+#, c-format
+msgid "Illegal operand (arg %d)"
+msgstr "operan tidak legal (arg %d)"
+
+#. Give an error if a frag containing code is not aligned to a 2-byte
+#. boundary.
+#: config/tc-cr16.c:2365 config/tc-cr16.h:71 config/tc-crx.c:1952
+#: config/tc-crx.h:76
+msgid "instruction address is not a multiple of 2"
+msgstr "alamat instruksi bukan kelipatan dari 2"
+
+#: config/tc-cr16.c:2442 config/tc-cris.c:1529 config/tc-cris.c:1537
+#: config/tc-crx.c:1988 config/tc-dlx.c:685 config/tc-hppa.c:3229
+#: config/tc-i860.c:490 config/tc-i860.c:507 config/tc-i860.c:987
+#: config/tc-sparc.c:1406 config/tc-sparc.c:1414
+#, c-format
+msgid "Unknown opcode: `%s'"
+msgstr "opcode tidak dikenal: `%s'"
+
+#: config/tc-cris.c:547 config/tc-m68hc11.c:2744
+#, c-format
+msgid "internal inconsistency problem in %s: fr_symbol %lx"
+msgstr "malah ketidak-konsistenan internal dalam %s: fr_symbol %lx"
+
+#: config/tc-cris.c:551 config/tc-m68hc11.c:2748 config/tc-msp430.c:2247
+#, c-format
+msgid "internal inconsistency problem in %s: resolved symbol"
+msgstr "masalah ketidak-konsistenan internal dalam %s: simbol terselesaikan"
+
+#: config/tc-cris.c:561 config/tc-m68hc11.c:2754
+#, c-format
+msgid "internal inconsistency problem in %s: fr_subtype %d"
+msgstr "masalah ketidak-konsistenan internal dalam %s: fr_subtype %d"
+
+#: config/tc-cris.c:901
+msgid "Relaxation to long branches for .arch common_v10_v32 not implemented"
+msgstr "Relaksasi ke percabangan panjang untuk .arch common_v10_v32 tidak terimplementasi"
+
+#: config/tc-cris.c:931
+msgid "Complicated LAPC target operand is not a multiple of two.  Use LAPC.D"
+msgstr "Komplikasi target operan LAPC bukan kelipatan dari dua. Gunakan LAPC.D"
+
+#: config/tc-cris.c:936
+#, c-format
+msgid "Internal error found in md_convert_frag: offset %ld.  Please report this."
+msgstr "Internal error ditemukan dalam md_convert_frah: ofset %ld. Tolong laporkan ini."
+
+#: config/tc-cris.c:961
+#, c-format
+msgid "internal inconsistency in %s: bdapq no symbol"
+msgstr "ketidak-konsistenan internal dalam %s: bdapq bukan simbol"
+
+#: config/tc-cris.c:974
+#, c-format
+msgid "internal inconsistency in %s: bdap.w with no symbol"
+msgstr "ketidak-konsistenan internal dalam %s: bdap.w dengan bukan simbol"
+
+#: config/tc-cris.c:998
+msgid "section alignment must be >= 4 bytes to check MULS/MULU safeness"
+msgstr "bagian aligmen harus >= 4 bytes untuk memeriksa keamanan MULS/MULU"
+
+#: config/tc-cris.c:1007
+msgid "dangerous MULS/MULU location; give it higher alignment"
+msgstr "berbahaya lokasi MULS/MULU: memberikan alignment lebih tinggi"
+
+#: config/tc-cris.c:1112
+msgid "Out-of-range .word offset handling is not implemented for .arch common_v10_v32"
+msgstr "Diluar-dari-jangkauan penanganan ofset .word tidak terimplementasi untuk .arch common_v10_v32"
+
+#: config/tc-cris.c:1220
+#, c-format
+msgid "Buggy opcode: `%s' \"%s\"\n"
+msgstr "Buggy opcode: `%s' \"%s\"\n"
+
+#: config/tc-cris.c:1635
+#, c-format
+msgid "Immediate value not in 5 bit unsigned range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 5 bit unsigned: %ld"
+
+#: config/tc-cris.c:1651
+#, c-format
+msgid "Immediate value not in 4 bit unsigned range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 4 bit unsigned: %ld"
+
+#: config/tc-cris.c:1703
+#, c-format
+msgid "Immediate value not in 6 bit range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 6 bit: %ld"
+
+#: config/tc-cris.c:1718
+#, c-format
+msgid "Immediate value not in 6 bit unsigned range: %ld"
+msgstr "nilai langsung tidak dalam jangkauan 6 bit unsigned: %ld"
+
+#. Others have a generic warning.
+#: config/tc-cris.c:1826
+#, c-format
+msgid "Unimplemented register `%s' specified"
+msgstr "Register `%s' tidak terimplementasi dispesifikasikan"
+
+#. We've come to the end of instructions with this
+#. opcode, so it must be an error.
+#: config/tc-cris.c:2069
+msgid "Illegal operands"
+msgstr "operan tidak legal"
+
+#: config/tc-cris.c:2110 config/tc-cris.c:2150
+#, c-format
+msgid "Immediate value not in 8 bit range: %ld"
+msgstr "Nilai langsung bukan dalam jangkauan 8 bit: %ld"
+
+#: config/tc-cris.c:2120 config/tc-cris.c:2171
+#, c-format
+msgid "Immediate value not in 16 bit range: %ld"
+msgstr "Nilai langsung bukan dalam jangkauan 16bit: %ld"
+
+#: config/tc-cris.c:2155
+#, c-format
+msgid "Immediate value not in 8 bit signed range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 8bit signed: %ld"
+
+#: config/tc-cris.c:2160
+#, c-format
+msgid "Immediate value not in 8 bit unsigned range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 8 bit unsigned: %ld"
+
+#: config/tc-cris.c:2176
+#, c-format
+msgid "Immediate value not in 16 bit signed range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 16 bit signed: %ld"
+
+#: config/tc-cris.c:2181
+#, c-format
+msgid "Immediate value not in 16 bit unsigned range: %ld"
+msgstr "Nilai langsung tidak dalam jangkauan 16 bit unsigned: %ld"
+
+#: config/tc-cris.c:2203
+msgid "PIC relocation size does not match operand size"
+msgstr "Ukuran relokasi PIC tidak cocok dengan ukuran operan"
+
+#: config/tc-cris.c:3346
+msgid "Calling gen_cond_branch_32 for .arch common_v10_v32\n"
+msgstr "Memanggil gen_cond_branch_32 untuk .arch common_v10_v32\n"
+
+#: config/tc-cris.c:3350
+msgid "32-bit conditional branch generated"
+msgstr "32-bit percabangan kondisional dihasilkan"
+
+#: config/tc-cris.c:3411
+msgid "Complex expression not supported"
+msgstr "Pernyataan kompleks tidak didukung"
+
+#. FIXME:  Is this function mentioned in the internals.texi manual?  If
+#. not, add it.
+#: config/tc-cris.c:3537
+msgid "Bad call to md_atof () - floating point formats are not supported"
+msgstr "Panggilan buruk ke md_atof () - floating point format tidak didukung"
+
+#: config/tc-cris.c:3578
+msgid "PC-relative relocation must be trivially resolved"
+msgstr "PC - relatif relokasi harus secara trivial diresolf"
+
+#: config/tc-cris.c:3631
+#, c-format
+msgid "Value not in 16 bit range: %ld"
+msgstr "Nilai tidak dalam jangkauan 16 bit: %ld"
+
+#: config/tc-cris.c:3642
+#, c-format
+msgid "Value not in 16 bit signed range: %ld"
+msgstr "Nilai tidak dalam jangkauan 16 bit signed: %ld"
+
+#: config/tc-cris.c:3653
+#, c-format
+msgid "Value not in 8 bit range: %ld"
+msgstr "Nilai tidak dalam jangkauan 8 bit: %ld"
+
+#: config/tc-cris.c:3661
+#, c-format
+msgid "Value not in 8 bit signed range: %ld"
+msgstr "Nilai tidak dalam jangkauan 8 bit signed: %ld"
+
+#: config/tc-cris.c:3672
+#, c-format
+msgid "Value not in 4 bit unsigned range: %ld"
+msgstr "Nilai tidak dalam jangkauan 4bit unsigned: %ld"
+
+#: config/tc-cris.c:3680
+#, c-format
+msgid "Value not in 5 bit unsigned range: %ld"
+msgstr "Nilai tidak dalam jangkauan 5 bit unsigned: %ld"
+
+#: config/tc-cris.c:3688
+#, c-format
+msgid "Value not in 6 bit range: %ld"
+msgstr "Nilai tidak dalam jangkauan 6 bit: %ld"
+
+#: config/tc-cris.c:3696
+#, c-format
+msgid "Value not in 6 bit unsigned range: %ld"
+msgstr "Nilai tidak dalam jangkauan 6 bit unsigned: %ld"
+
+#: config/tc-cris.c:3742
+#, c-format
+msgid "Please use --help to see usage and options for this assembler.\n"
+msgstr "Tolong gunakan --help untuk melihat penggunaan dan opsi untuk perakit ini.\n"
+
+#: config/tc-cris.c:3754
+msgid "--no-underscore is invalid with a.out format"
+msgstr "--no-underscore adalah tidak valid dengan format a.out"
+
+#: config/tc-cris.c:3778
+#, c-format
+msgid "invalid <arch> in --march=<arch>: %s"
+msgstr "<arch> tidak valid dalam --march=<arch>: %s"
+
+#: config/tc-cris.c:3877
+msgid "Semantics error.  This type of operand can not be relocated, it must be an assembly-time constant"
+msgstr "Sematik error. Tipe dari operan ini tidak dapat direlokasikan, ini harus berupa sebuah konstanta waktu-perakit"
+
+#: config/tc-cris.c:3926
+#, c-format
+msgid "Cannot generate relocation type for symbol %s, code %s"
+msgstr "Tidak dapat menghasilkan tipe relokasi untuk simbol %s, kode %s"
+
+#. The messages are formatted to line up with the generic options.
+#: config/tc-cris.c:3939
+#, c-format
+msgid "CRIS-specific options:\n"
+msgstr "Opsi CRIS-spesifik:\n"
+
+#: config/tc-cris.c:3941
+msgid "  -h, -H                  Don't execute, print this help text.  Deprecated.\n"
+msgstr "  -h, -H                  Jangan jalankan, tampilkan pesan bantuan ini. Kadaluarsa.\n"
+
+#: config/tc-cris.c:3943
+msgid "  -N                      Warn when branches are expanded to jumps.\n"
+msgstr "  -N                      Peringatkan ketika percabangan diekspan ke lompat.\n"
+
+#: config/tc-cris.c:3945
+msgid "  --underscore            User symbols are normally prepended with underscore.\n"
+msgstr "  --underscore            Simbol pengguna biasanya diawali dengan baris-bawah.\n"
+
+#: config/tc-cris.c:3947
+msgid "                          Registers will not need any prefix.\n"
+msgstr "                          Register tidak membutuhkan awalan apapun.\n"
+
+#: config/tc-cris.c:3949
+msgid "  --no-underscore         User symbols do not have any prefix.\n"
+msgstr "  --no-underscore         Simbol pengguna tidak memiliki prefix apapun.\n"
+
+#: config/tc-cris.c:3951
+msgid "                          Registers will require a `$'-prefix.\n"
+msgstr "                          Register akan membutuhkan sebuah awalan-`$'.\n"
+
+#: config/tc-cris.c:3953
+msgid "  --pic\t\t\tEnable generation of position-independent code.\n"
+msgstr "  --pic\t\t\tAktifkan pembuatan kode bebas posisi.\n"
+
+#: config/tc-cris.c:3955
+msgid ""
+"  --march=<arch>\t\tGenerate code for <arch>.  Valid choices for <arch>\n"
+"\t\t\t\tare v0_v10, v10, v32 and common_v10_v32.\n"
+msgstr ""
+"  --march=<arch>\t\tHasilkan kode untuk <arch>. Pilihan valid untuk <arch>\n"
+"\t\t\t\tadalah v0_v10, v10, v32 dan common_v10_v32.\n"
+
+#: config/tc-cris.c:3976
+msgid "Invalid relocation"
+msgstr "Relokasi tidak valid"
+
+#: config/tc-cris.c:4013
+msgid "Invalid pc-relative relocation"
+msgstr "Relokasi pc-relatif tidak valid"
+
+#: config/tc-cris.c:4058
+#, c-format
+msgid "Adjusted signed .word (%ld) overflows: `switch'-statement too large."
+msgstr "Membetulkan signed .word (%ld) overflows: pernyataan-`switch' terlalu besar."
+
+#: config/tc-cris.c:4088
+#, c-format
+msgid ".syntax %s requires command-line option `--underscore'"
+msgstr ".syntax %s membutuhkan opsi baris-perintah `--underscore'"
+
+#: config/tc-cris.c:4097
+#, c-format
+msgid ".syntax %s requires command-line option `--no-underscore'"
+msgstr ".syntax %s membutuhkan opsi baris-perintah `--no-underscore'"
+
+#: config/tc-cris.c:4134
+msgid "Unknown .syntax operand"
+msgstr "Operan .syntax tidak dikenal"
+
+#: config/tc-cris.c:4144
+msgid "Pseudodirective .file is only valid when generating ELF"
+msgstr ".file pseudodirective hanya valid ketika menghasilkan ELF"
+
+#: config/tc-cris.c:4156
+msgid "Pseudodirective .loc is only valid when generating ELF"
+msgstr ".loc pseudodirective hanya valid ketika menghasilkan ELF"
+
+#: config/tc-cris.c:4299
+msgid "unknown operand to .arch"
+msgstr "operan ke .arch tidak dikenal"
+
+#: config/tc-cris.c:4308
+msgid ".arch <arch> requires a matching --march=... option"
+msgstr ".arch <arch> membutuhkan sebuah pencocokan opsi --march=..."
+
+#: config/tc-crx.c:819
+#, c-format
+msgid "Illegal Scale - `%d'"
+msgstr "Skala tidak legal - `%d'"
+
+#: config/tc-crx.c:1263
+#, c-format
+msgid "Illegal Co-processor register in Instruction `%s' "
+msgstr "Register co-prosesor tidak legal dalam instruksi `%s'"
+
+#: config/tc-crx.c:1270
+#, c-format
+msgid "Illegal Co-processor special register in Instruction `%s' "
+msgstr "Register spesial co-prosesor tidak legal dalam Instruksi `%s'"
+
+#: config/tc-crx.c:1589
+#, c-format
+msgid "Invalid DISPU4 operand value (arg %d)"
+msgstr "Nilai operan (arg %d) DISPU4 tidak valid"
+
+#: config/tc-crx.c:1592
+#, c-format
+msgid "Invalid CST4 operand value (arg %d)"
+msgstr "Nilai operan (arg %d) CST4 Tidak valid"
+
+#: config/tc-crx.c:1595
+#, c-format
+msgid "Operand value is not within upper 64 KB (arg %d)"
+msgstr "Nilai operan tidak dalam jangkauan 64 KB atas (arg %d)"
+
+#: config/tc-crx.c:1732
+msgid "Invalid Register in Register List"
+msgstr "Register tidak valid dalam Daftar Register"
+
+#: config/tc-crx.c:1786
+#, c-format
+msgid "Illegal register `%s' in cop-register list"
+msgstr "Register `%s' tidak legal dalam daftar cop-register "
+
+#: config/tc-crx.c:1794
+#, c-format
+msgid "Illegal register `%s' in cop-special-register list"
+msgstr "Register `%s' tidak legal dalam daftar cop-special-register"
+
+#: config/tc-crx.c:1813
+#, c-format
+msgid "Illegal register `%s' in user register list"
+msgstr "Register `%s' tidak legal dalam daftar register pengguna"
+
+#: config/tc-crx.c:1832
+#, c-format
+msgid "Illegal register `%s' in register list"
+msgstr "Register `%s' tidak legal dalam daftar register pengguna"
+
+#: config/tc-crx.c:1838
+#, c-format
+msgid "Maximum %d bits may be set in `mask16' operand"
+msgstr "Maksimum %d bits mungkin di set dalam operan `mask16'"
+
+#: config/tc-crx.c:1847
+#, c-format
+msgid "rest of line ignored; first ignored character is `%c'"
+msgstr "akhir dari baris diabaikan: karakter pertama yang diabaikan adalah `%c'"
+
+#: config/tc-crx.c:1855
+#, c-format
+msgid "Illegal `mask16' operand, operation is undefined - `%s'"
+msgstr "Operan `mask16' tidak legal, operasi tidak terdefinisi - `%s'"
+
+#. HI can't be specified without LO (and vise-versa).
+#: config/tc-crx.c:1861
+msgid "HI/LO registers should be specified together"
+msgstr "HI/LO register seharusnya dispesifikasikan bersama"
+
+#: config/tc-crx.c:1867
+msgid "HI/LO registers should be specified without additional registers"
+msgstr "HI/LO register seharusnya dispesifikasikan tanpa tambahan register"
+
+#: config/tc-d10v.c:216
+#, c-format
+msgid ""
+"D10V options:\n"
+"-O                      Optimize.  Will do some operations in parallel.\n"
+"--gstabs-packing        Pack adjacent short instructions together even\n"
+"                        when --gstabs is specified.  On by default.\n"
+"--no-gstabs-packing     If --gstabs is specified, do not pack adjacent\n"
+"                        instructions together.\n"
+msgstr ""
+"Opsi D10V:\n"
+"-O                      Optimasi. Akan melakukan beberapa operasi dalam paralel.\n"
+"--gstabs-packing        Pack adjacent instruksi pendek bersama walaupun\n"
+"                        ketika --gstabs dispesifikasikan. Aktif secara default.\n"
+"--no-gstabs-packing     Jika --gstabs dispesifikasikan, jangan pack adjacent\n"
+"                        instruksi bersama.\n"
+
+#: config/tc-d10v.c:573
+msgid "operand is not an immediate"
+msgstr "operan tidak langsung"
+
+#: config/tc-d10v.c:591
+#, c-format
+msgid "operand out of range: %lu"
+msgstr "operan diluar jangkauan: %lu"
+
+#: config/tc-d10v.c:649
+msgid "Instruction must be executed in parallel with another instruction."
+msgstr "Instruksi harus dijalankan dalam paralel dengan instruksi lain."
+
+#: config/tc-d10v.c:703 config/tc-d10v.c:711
+#, c-format
+msgid "packing conflict: %s must dispatch sequentially"
+msgstr "packing konflik: %s harus dispatch secara berurutan"
+
+#: config/tc-d10v.c:810
+#, c-format
+msgid "resource conflict (R%d)"
+msgstr "konflik sumber-daya (R%d)"
+
+#: config/tc-d10v.c:813
+#, c-format
+msgid "resource conflict (A%d)"
+msgstr "konflik sumber-daya (A%d)"
+
+#: config/tc-d10v.c:815
+msgid "resource conflict (PSW)"
+msgstr "konflik sumber-daya (PSW)"
+
+#: config/tc-d10v.c:817
+msgid "resource conflict (C flag)"
+msgstr "konflik sumber-daya (bendera C)"
+
+#: config/tc-d10v.c:819
+msgid "resource conflict (F flag)"
+msgstr "konflik sumber-daya (bendera F)"
+
+#: config/tc-d10v.c:969
+msgid "Instruction must be executed in parallel"
+msgstr "Instruksi harus dijalankan dalam paralel"
+
+#: config/tc-d10v.c:972
+msgid "Long instructions may not be combined."
+msgstr "Instruksi panjang tidak bolek dikombinasikan."
+
+#: config/tc-d10v.c:1005
+msgid "One of these instructions may not be executed in parallel."
+msgstr "Salah satu dari instruksi ini mungkin dijalankan dalam paralel."
+
+#: config/tc-d10v.c:1009 config/tc-d30v.c:1036
+msgid "Two IU instructions may not be executed in parallel"
+msgstr "Dua IU instruksi tidak boleh dijalankan dalam paralel"
+
+#: config/tc-d10v.c:1011 config/tc-d10v.c:1019 config/tc-d10v.c:1033
+#: config/tc-d10v.c:1048 config/tc-d30v.c:1037 config/tc-d30v.c:1046
+msgid "Swapping instruction order"
+msgstr "Swapping urutan instruksi"
+
+#: config/tc-d10v.c:1017 config/tc-d30v.c:1043
+msgid "Two MU instructions may not be executed in parallel"
+msgstr "Dua MU instruksi tidak boleh dijalankan dalam paralel"
+
+#: config/tc-d10v.c:1037 config/tc-d30v.c:1063
+msgid "IU instruction may not be in the left container"
+msgstr "IU instruksi tidak boleh dalam kontainer kiri"
+
+#: config/tc-d10v.c:1039 config/tc-d10v.c:1054
+msgid "Instruction in R container is squashed by flow control instruction in L container."
+msgstr "Instruksi dalam R kontainer squashed oleh flow control instruksi dalam L kontainer."
+
+#: config/tc-d10v.c:1052 config/tc-d30v.c:1074
+msgid "MU instruction may not be in the right container"
+msgstr "MU instruksi tidak boleh dalam kontainer kanan"
+
+#: config/tc-d10v.c:1058 config/tc-d30v.c:1086
+msgid "unknown execution type passed to write_2_short()"
+msgstr "tipe eksekusi tidak dikenal dilewatkan ke write_2_short()"
+
+#: config/tc-d10v.c:1186 config/tc-d10v.c:1359
+msgid "bad opcode or operands"
+msgstr "opcode atau operan buruk"
+
+#: config/tc-d10v.c:1261
+msgid "value out of range"
+msgstr "nilai diluar dari jangkauan"
+
+#: config/tc-d10v.c:1335
+msgid "illegal operand - register name found where none expected"
+msgstr "operan tidak legal - nama register ditemukan dimana none diduga"
+
+#: config/tc-d10v.c:1370
+msgid "Register number must be EVEN"
+msgstr "Nomor register harus GENAP"
+
+#: config/tc-d10v.c:1373
+msgid "Unsupported use of sp"
+msgstr "Penggunaan dari sp tidak didukung"
+
+#: config/tc-d10v.c:1392
+#, c-format
+msgid "cr%ld is a reserved control register"
+msgstr "cr%ld adalah sebuah reserved control register"
+
+#: config/tc-d10v.c:1565
+#, c-format
+msgid "line %d: rep or repi must include at least 4 instructions"
+msgstr "baris %d: rep atau repi harus termasuk 4 instruksi terakhir"
+
+#: config/tc-d10v.c:1745
+msgid "can't find previous opcode "
+msgstr "tidak dapat menemukan opcode sebelumnya "
+
+#: config/tc-d10v.c:1757
+#, c-format
+msgid "could not assemble: %s"
+msgstr "tidak dapat merakit: %s"
+
+#: config/tc-d10v.c:1772 config/tc-d10v.c:1794 config/tc-d30v.c:1742
+msgid "Unable to mix instructions as specified"
+msgstr "Tidak dapat menggabungka instruksi seperti yang dispesifikasikan"
+
+#: config/tc-d30v.c:149
+#, c-format
+msgid "Register name %s conflicts with symbol of the same name"
+msgstr "Nama register %s konflik dengan nam dari simbol yang sama"
+
+#: config/tc-d30v.c:239
+#, c-format
+msgid ""
+"\n"
+"D30V options:\n"
+"-O                      Make adjacent short instructions parallel if possible.\n"
+"-n                      Warn about all NOPs inserted by the assembler.\n"
+"-N\t\t\tWarn about NOPs inserted after word multiplies.\n"
+"-c                      Warn about symbols whoes names match register names.\n"
+"-C                      Opposite of -C.  -c is the default.\n"
+msgstr ""
+"\n"
+"Opsi D30V:\n"
+"-O                      Buat adjacent instruksi pendek paralel jika memungkinkan.\n"
+"-n                      Peringatkan mengenai seluruh NOP yang dimasukan dengan perakit.\n"
+"-N\t\t\tPeringatkan mengenai NOP yang dimasukan setelah kelipatan kata.\n"
+"-c                      Peringatkan mengenail simbol yang namanya cocok dengan nama register.\n"
+"-C                      Kebalikan dari -C. -c adalah baku.\n"
+
+#: config/tc-d30v.c:367
+msgid "unexpected 12-bit reloc type"
+msgstr "tipe relokasi 12-bit tidak diduga"
+
+#: config/tc-d30v.c:374
+msgid "unexpected 18-bit reloc type"
+msgstr "tipe relokasi 18-bit tidak diduga"
+
+#: config/tc-d30v.c:624
+#, c-format
+msgid "%s NOP inserted"
+msgstr "NOP dimasukan %s"
+
+#: config/tc-d30v.c:625
+msgid "sequential"
+msgstr "berurutan"
+
+#: config/tc-d30v.c:625
+msgid "parallel"
+msgstr "paralel"
+
+#: config/tc-d30v.c:1032
+msgid "Instructions may not be executed in parallel"
+msgstr "Instruksi mungkin tidak dijalankan dalam paralel"
+
+#: config/tc-d30v.c:1045
+#, c-format
+msgid "Executing %s in IU may not work"
+msgstr "Menjalankan %s dalam IU mungkin tidak bekerja"
+
+#: config/tc-d30v.c:1052
+#, c-format
+msgid "Executing %s in IU may not work in parallel execution"
+msgstr "Menjalankan %s dalam IU mungkin tidak bekerja dalam eksekusi paralel"
+
+#: config/tc-d30v.c:1065
+#, c-format
+msgid "special left instruction `%s' kills instruction `%s' in right container"
+msgstr "instruksi kiri spesial `%s' mematikan instruksi `%s' dalam kontainer kanan"
+
+#: config/tc-d30v.c:1076
+#, c-format
+msgid "Executing %s in reverse serial with %s may not work"
+msgstr "Menjalankan %s dalam urutan terbalik dengan %s mungkin tidak bekerja"
+
+#: config/tc-d30v.c:1079
+#, c-format
+msgid "Executing %s in IU in reverse serial may not work"
+msgstr "Menjalankan %s dalam IU dalam urutan terbalik mungkin tidak bekerja"
+
+#: config/tc-d30v.c:1268
+msgid "Odd numbered register used as target of multi-register instruction"
+msgstr "Nomor register gajil digunakan sebagai target dari instruksi multi-register"
+
+#: config/tc-d30v.c:1332 config/tc-d30v.c:1367
+#, c-format
+msgid "unknown condition code: %s"
+msgstr "kode kondisional tidak diketahui: %s"
+
+#: config/tc-d30v.c:1360
+#, c-format
+msgid "cmpu doesn't support condition code %s"
+msgstr "cmpu tidak mendukung kode kondisional %s"
+
+#: config/tc-d30v.c:1395
+#, c-format
+msgid "unknown opcode: %s"
+msgstr "opcode tidak dikenal: %s"
+
+#: config/tc-d30v.c:1406
+#, c-format
+msgid "operands for opcode `%s' do not match any valid format"
+msgstr "operan untuk opcode `%s' tidak cocok dengan format valid apapun"
+
+#: config/tc-d30v.c:1621 config/tc-d30v.c:1638
+msgid "Cannot assemble instruction"
+msgstr "Tidak dapat merakit instruksi"
+
+#: config/tc-d30v.c:1623
+msgid "First opcode is long.  Unable to mix instructions as specified."
+msgstr "Opcode pertama adalah panjang. Tidak dapat menggabungkan instruksi seperti yang dispesifikasikan."
+
+#: config/tc-d30v.c:1692
+msgid "word of NOPs added between word multiply and load"
+msgstr "kata dari NOP ditambahkan diantara kata multiply dan load"
+
+#: config/tc-d30v.c:1694
+msgid "word of NOPs added between word multiply and 16-bit multiply"
+msgstr "kata dari NOP ditambahkan diantara kata multiply dan 16-bit multiply"
+
+#: config/tc-d30v.c:1726
+msgid "Instruction uses long version, so it cannot be mixed as specified"
+msgstr "Instruksi menggunakan versi panjang, jadi ini tidak dapat digabungkan seperti yang dispesifikasikan"
+
+#: config/tc-d30v.c:1853
+#, c-format
+msgid "value too large to fit in %d bits"
+msgstr "nilai terlalu besar untuk masuk dalam %d bits"
+
+#: config/tc-d30v.c:1914
+#, c-format
+msgid "line %d: unable to place address of symbol '%s' into a byte"
+msgstr "baris %d: tidak dapat menempatkan alamat dari simbol '%s' kedalam sebuah byte"
+
+#: config/tc-d30v.c:1917
+#, c-format
+msgid "line %d: unable to place value %lx into a byte"
+msgstr "baris %d: tidak dapat menempatkan nilai %lx kedalam sebuah byte"
+
+#: config/tc-d30v.c:1925
+#, c-format
+msgid "line %d: unable to place address of symbol '%s' into a short"
+msgstr "baris %d: tidak dapat menempatkan alamat dari simbol '%s' kedalam sebuah pendek"
+
+#: config/tc-d30v.c:1928
+#, c-format
+msgid "line %d: unable to place value %lx into a short"
+msgstr "baris %d: tidak dapat menempatkan nilai %lx kedalam sebuah pendek"
+
+#: config/tc-d30v.c:1936
+#, c-format
+msgid "line %d: unable to place address of symbol '%s' into a quad"
+msgstr "baris %d: tidak dapat menempatkan alamat dari simbol '%s' kedalam sebuah quad"
+
+#: config/tc-d30v.c:2044
+#, c-format
+msgid "Alignment too large: %d assumed"
+msgstr "Aligment terlalu besar: %d diasumsikan"
+
+#: config/tc-dlx.c:211
+msgid "missing .proc"
+msgstr "hilang .proc"
+
+#: config/tc-dlx.c:228
+msgid ".endfunc missing for previous .proc"
+msgstr ".endfunc hilang untuk .proc sebelumnya"
+
+#: config/tc-dlx.c:290 config/tc-i860.c:227 config/tc-mips.c:1891
+#, c-format
+msgid "internal error: can't hash `%s': %s\n"
+msgstr "internal error: tidak dapat hash `%s': %s\n"
+
+#. Probably a memory allocation problem?  Give up now.
+#: config/tc-dlx.c:297 config/tc-hppa.c:8256 config/tc-mips.c:1894
+#: config/tc-mips.c:1946 config/tc-or32.c:211 config/tc-sparc.c:856
+msgid "Broken assembler.  No assembly attempted."
+msgstr "Perakit rusak. Tidak ada perakitan yang akan dilakukan."
+
+#: config/tc-dlx.c:327
+#, c-format
+msgid "Bad operand for a load instruction: <%s>"
+msgstr "Operan buruk untuk sebuah instruksi load: <%s>"
+
+#: config/tc-dlx.c:441
+#, c-format
+msgid "Bad operand for a store instruction: <%s>"
+msgstr "Operan butuk untuk sebuah instruksi store: <%s>"
+
+#: config/tc-dlx.c:621
+#, c-format
+msgid "Expression Error for operand modifier %%hi/%%lo\n"
+msgstr "Ekspresi error untuk pemodifikasi operan %%hi/%%lo\n"
+
+#: config/tc-dlx.c:634 config/tc-or32.c:812
+#, c-format
+msgid "Invalid expression after %%%%\n"
+msgstr "Ekspresi tidak valid sesudah %%%%\n"
+
+#: config/tc-dlx.c:703
+#, c-format
+msgid "Unknown opcode `%s'."
+msgstr "Opcode tidak dikenal `%s'."
+
+#: config/tc-dlx.c:716
+msgid "Can not set dlx_skip_hi16_flag"
+msgstr "Tidak dapat menset dlx_skip_hi16_flag"
+
+#: config/tc-dlx.c:730
+#, c-format
+msgid "Missing arguments for opcode <%s>."
+msgstr "Hilang argumen karena opcode <%s>."
+
+#: config/tc-dlx.c:764
+#, c-format
+msgid "Too many operands: %s"
+msgstr "Terlalu banyak operan: %s"
+
+#: config/tc-dlx.c:801
+#, c-format
+msgid "Both the_insn.HI and the_insn.LO are set : %s"
+msgstr "Kedua the_insn.HI dan the_insn.LO diset : %s"
+
+#: config/tc-dlx.c:871
+msgid "failed regnum sanity check."
+msgstr "gagal pemeriksaan keadaan regnum."
+
+#: config/tc-dlx.c:884
+msgid "failed general register sanity check."
+msgstr "gagal pemeriksaan keadaan register umum."
+
+#. Types or values of args don't match.
+#: config/tc-dlx.c:892
+msgid "Invalid operands"
+msgstr "Operan tidak valid"
+
+#: config/tc-dlx.c:1119 config/tc-or32.c:774
+#, c-format
+msgid "label \"$%d\" redefined"
+msgstr "label \"$%d\" teredefinisi"
+
+#: config/tc-dlx.c:1157
+msgid "Invalid expression after # number\n"
+msgstr "Ekspresi tidak valid sesudah # number\n"
+
+#: config/tc-fr30.c:82
+#, c-format
+msgid " FR30 specific command line options:\n"
+msgstr " Opsi spesifik baris perintah FR30:\n"
+
+#: config/tc-fr30.c:135
+#, c-format
+msgid "Instruction %s not allowed in a delay slot."
+msgstr "Instruksi %s tidak diperbolehkan dalam sebuah delay slot."
+
+#: config/tc-frv.c:404
+#, c-format
+msgid "Unknown cpu -mcpu=%s"
+msgstr "cpu -mcpu=%s tidak dikenal"
+
+#: config/tc-frv.c:457
+#, c-format
+msgid "FRV specific command line options:\n"
+msgstr "Opsi spesifik baris perintah FRV:\n"
+
+#: config/tc-frv.c:458
+#, c-format
+msgid "-G n            Put data <= n bytes in the small data area\n"
+msgstr "-G n            Letakan data <= n bytes dalam sebuah daerah data kecil\n"
+
+#: config/tc-frv.c:459
+#, c-format
+msgid "-mgpr-32        Mark generated file as only using 32 GPRs\n"
+msgstr "-mgpr-32        Tandai berkas yang dihasilkan hanya menggunakan 32 GPR\n"
+
+#: config/tc-frv.c:460
+#, c-format
+msgid "-mgpr-64        Mark generated file as using all 64 GPRs\n"
+msgstr "-mgpr-64        Tandai berkas yang dihasilkan menggunaka seluruh 64 GPR\n"
+
+#: config/tc-frv.c:461
+#, c-format
+msgid "-mfpr-32        Mark generated file as only using 32 FPRs\n"
+msgstr "-mfpr-32        Tandai berkas yang dihasilkan hanya menggunakan 32 FPR\n"
+
+#: config/tc-frv.c:462
+#, c-format
+msgid "-mfpr-64        Mark generated file as using all 64 FPRs\n"
+msgstr "-mfpr-64        Tandai berkas yang dihasilkan sebagai menggunakan seluruh 64 FPR\n"
+
+#: config/tc-frv.c:463
+#, c-format
+msgid "-msoft-float    Mark generated file as using software FP\n"
+msgstr "-msoft-float    Tandai berkas yang dihasilkan dengan menggunakan software FP\n"
+
+#: config/tc-frv.c:464
+#, c-format
+msgid "-mdword         Mark generated file as using a 8-byte stack alignment\n"
+msgstr "-mdword         Tandai berkas yang dihasilkan menggunakan sebuah 8-byte alignmen stack\n"
+
+#: config/tc-frv.c:465
+#, c-format
+msgid "-mno-dword      Mark generated file as using a 4-byte stack alignment\n"
+msgstr "-mno-dword      Tandai berkas yang dihasilkan menggunakan 4-byte alignmen stack\n"
+
+#: config/tc-frv.c:466
+#, c-format
+msgid "-mdouble        Mark generated file as using double precision FP insns\n"
+msgstr "-mdouble        Tandai berkas yang dihasilkan sebagai presisi ganda FP insns\n"
+
+#: config/tc-frv.c:467
+#, c-format
+msgid "-mmedia         Mark generated file as using media insns\n"
+msgstr "-mmedia         Tandai berkas yang dihasilkan menggunakan media insns\n"
+
+#: config/tc-frv.c:468
+#, c-format
+msgid "-mmuladd        Mark generated file as using multiply add/subtract insns\n"
+msgstr "-mmuladd        Tandai berkas yang dihasilkan menggunakan perkalian add/subtract insns\n"
+
+#: config/tc-frv.c:469
+#, c-format
+msgid "-mpack          Allow instructions to be packed\n"
+msgstr "-mpack          Bolehkan instruksi untuk dipack\n"
+
+#: config/tc-frv.c:470
+#, c-format
+msgid "-mno-pack       Do not allow instructions to be packed\n"
+msgstr "-mno-pack       Jangan ijinkan instruksi untuk dipack\n"
+
+#: config/tc-frv.c:471
+#, c-format
+msgid "-mpic           Mark generated file as using small position independent code\n"
+msgstr "-mpic           Tandai berkas yang dihasilkan menggunakan kode bebas posisi kecil\n"
+
+#: config/tc-frv.c:472
+#, c-format
+msgid "-mPIC           Mark generated file as using large position independent code\n"
+msgstr "-mPIC           Tandai berkas yang dihasilkan menggunakan kode bebas posisi besar\n"
+
+#: config/tc-frv.c:473
+#, c-format
+msgid "-mlibrary-pic   Mark generated file as using position indepedent code for libraries\n"
+msgstr "-mlibrary-pic   Tandai berkas yang dihasilkan menggunakan kode bebas posisi untuk perpustakaan\n"
+
+#: config/tc-frv.c:474
+#, c-format
+msgid "-mfdpic         Assemble for the FDPIC ABI\n"
+msgstr "-mfdpic         Rakit untuk FDPIC ABI\n"
+
+#: config/tc-frv.c:475
+#, c-format
+msgid "-mnopic         Disable -mpic, -mPIC, -mlibrary-pic and -mfdpic\n"
+msgstr "-mnopic         Non-aktifkan -mpic, -mPIC, -mlibrary-pic dan -mfdpic\n"
+
+#: config/tc-frv.c:476
+#, c-format
+msgid "-mcpu={fr500|fr550|fr400|fr405|fr450|fr300|frv|simple|tomcat}\n"
+msgstr "-mcpu={fr500|fr550|fr400|fr405|fr450|fr300|frv|simple|tomcat}\n"
+
+#: config/tc-frv.c:477
+#, c-format
+msgid "                Record the cpu type\n"
+msgstr "                Simpan tipe cpu\n"
+
+#: config/tc-frv.c:478
+#, c-format
+msgid "-mtomcat-stats  Print out stats for tomcat workarounds\n"
+msgstr "-mtomcat-stats  Tampilkas statistik untuk perbaikan tomcat\n"
+
+#: config/tc-frv.c:479
+#, c-format
+msgid "-mtomcat-debug  Debug tomcat workarounds\n"
+msgstr "-mtomcat-debug  Debug perbaikan tomcat\n"
+
+#: config/tc-frv.c:1163
+msgid "VLIW packing used for -mno-pack"
+msgstr "VLIW packing digunakan untuk -mno-pack"
+
+#: config/tc-frv.c:1173
+msgid "Instruction not supported by this architecture"
+msgstr "Instruksi tidak didukung oleh arsitektur ini"
+
+#: config/tc-frv.c:1183
+msgid "VLIW packing constraint violation"
+msgstr "pelanggaran batasan pembungkusan VLIW"
+
+#: config/tc-frv.c:1774
+#, c-format
+msgid "Relocation %s is not safe for %s"
+msgstr "Relokasi %s tidak aman untuk %s"
+
+#: config/tc-h8300.c:395 config/tc-h8300.c:403
+msgid "Reg not valid for H8/300"
+msgstr "Reg tidak valid untuk H8/300"
+
+#: config/tc-h8300.c:484
+msgid "invalid operand size requested"
+msgstr "ukuran operan tidak valid diminta"
+
+#: config/tc-h8300.c:583
+msgid "Invalid register list for ldm/stm\n"
+msgstr "Daftar register tidak valid untuk ldm/stm\n"
+
+#: config/tc-h8300.c:609 config/tc-h8300.c:614 config/tc-h8300.c:621
+msgid "mismatch between register and suffix"
+msgstr "tidak cocok antara register dan akhiran"
+
+#: config/tc-h8300.c:648
+msgid "address too high for vector table jmp/jsr"
+msgstr "alamat terlalu tinggi untuk tabel vektor jmp/jsr"
+
+#: config/tc-h8300.c:675 config/tc-h8300.c:787 config/tc-h8300.c:797
+msgid "Wrong size pointer register for architecture."
+msgstr "Besar register petunjuk salah untuk arsitektur."
+
+#: config/tc-h8300.c:734 config/tc-h8300.c:742 config/tc-h8300.c:771
+msgid "expected @(exp, reg16)"
+msgstr "diduga @(exp, reg16)"
+
+#: config/tc-h8300.c:760
+msgid "expected .L, .W or .B for register in indexed addressing mode"
+msgstr "diduga .L, .W atau .B untuk register dalam mode pengalamatan terindeks"
+
+#: config/tc-h8300.c:954
+msgid "expected valid addressing mode for mova: \"@(disp, ea.sz),ERn\""
+msgstr "diduga mode pengalamatan valid untuk mova: \"@(disp, ea.sz), ERn\""
+
+#: config/tc-h8300.c:972 config/tc-h8300.c:981
+msgid "expected register"
+msgstr "diduga register"
+
+#: config/tc-h8300.c:997
+msgid "expected closing paren"
+msgstr "diduga penutupan paren"
+
+#: config/tc-h8300.c:1056
+#, c-format
+msgid "can't use high part of register in operand %d"
+msgstr "tidak dapat menggunakan bagian tinggi dari register dalam operan %d"
+
+#: config/tc-h8300.c:1213
+#, c-format
+msgid "Opcode `%s' with these operand types not available in %s mode"
+msgstr "Opkode `%s' dengan operan tipe ini tidak tersedia dalam mode %s"
+
+#: config/tc-h8300.c:1222
+msgid "mismatch between opcode size and operand size"
+msgstr "tidak cocok diantara ukuran opkode dan ukuran operan"
+
+#: config/tc-h8300.c:1258
+#, c-format
+msgid "operand %s0x%lx out of range."
+msgstr "operan %s0x%lx diluar dari jangkauan."
+
+#: config/tc-h8300.c:1354
+msgid "Can't work out size of operand.\n"
+msgstr "Tidak dapat menyelesaikan ukuran dari operan.\n"
+
+#: config/tc-h8300.c:1403
+#, c-format
+msgid "Opcode `%s' with these operand types not available in H8/300 mode"
+msgstr "Opkode `%s' dengan operan tipe ini tidak tersedia dalam mode H8/300"
+
+#: config/tc-h8300.c:1408
+#, c-format
+msgid "Opcode `%s' with these operand types not available in H8/300H mode"
+msgstr "Opkode `%s' dengan operan tipe ini tidak tersedia dalam mode H8/300H"
+
+#: config/tc-h8300.c:1414
+#, c-format
+msgid "Opcode `%s' with these operand types not available in H8/300S mode"
+msgstr "Opkode `%s' dengan operan tipe ini tidak tersedia dalam mode H8/300S"
+
+#: config/tc-h8300.c:1475 config/tc-h8300.c:1495
+msgid "Need #1 or #2 here"
+msgstr "Butuh #1 atau #2 disini"
+
+#: config/tc-h8300.c:1490
+msgid "#4 not valid on H8/300."
+msgstr "#4 tidak valid di H8/300."
+
+#: config/tc-h8300.c:1596 config/tc-h8300.c:1678
+#, c-format
+msgid "branch operand has odd offset (%lx)\n"
+msgstr "operan percabangan memiliki ofset (%lx) ganjil\n"
+
+#: config/tc-h8300.c:1716
+msgid "destination operand must be 16 bit register"
+msgstr "operan tujuan harus berupa register 16 bit"
+
+#: config/tc-h8300.c:1725
+msgid "source operand must be 8 bit register"
+msgstr "sumber operan harus berupa register 8 bit"
+
+#: config/tc-h8300.c:1733
+msgid "destination operand must be 16bit absolute address"
+msgstr "operan tujuan harus berupa alamat absolut 16 bit"
+
+#: config/tc-h8300.c:1740
+msgid "destination operand must be 8 bit register"
+msgstr "operan tujuan harus berupa register 8 bit"
+
+#: config/tc-h8300.c:1748
+msgid "source operand must be 16bit absolute address"
+msgstr "operan sumber harus berupa alamat absolut 16 bit"
+
+#. This seems more sane than saying "too many operands".  We'll
+#. get here only if the trailing trash starts with a comma.
+#. Types or values of args don't match.
+#: config/tc-h8300.c:1756 config/tc-mmix.c:472 config/tc-mmix.c:484
+#: config/tc-mmix.c:2497 config/tc-mmix.c:2521 config/tc-mmix.c:2794
+#: config/tc-or32.c:528
+msgid "invalid operands"
+msgstr "operan tidak valid"
+
+#: config/tc-h8300.c:1787
+msgid "operand/size mis-match"
+msgstr "operan/ukuran tidak-cocok"
+
+#: config/tc-h8300.c:1888 config/tc-mips.c:10066 config/tc-sh.c:2925
+#: config/tc-sh64.c:2795 config/tc-z8k.c:1226
+msgid "unknown opcode"
+msgstr "opkode tidak diketahui"
+
+#: config/tc-h8300.c:1921
+msgid "invalid operand in ldm"
+msgstr "operan tidak valid dalam ldm"
+
+#: config/tc-h8300.c:1930
+msgid "invalid operand in stm"
+msgstr "operan tidak valid dalam stm"
+
+#: config/tc-h8300.c:2056
+#, c-format
+msgid "call to tc_aout_fix_to_chars \n"
+msgstr "memanggil tc_aout_fix_to_chars \n"
+
+#: config/tc-h8300.c:2065 config/tc-xc16x.c:340
+#, c-format
+msgid "call to md_convert_frag \n"
+msgstr "memanggil md_convert_frag \n"
+
+#: config/tc-h8300.c:2116 config/tc-xc16x.c:244
+#, c-format
+msgid "call to md_estimate_size_before_relax \n"
+msgstr "memanggil md_estimate_size_before_relax \n"
+
+#: config/tc-h8300.c:2145 config/tc-xc16x.c:285
+msgid "Difference of symbols in different sections is not supported"
+msgstr "Perbedaan dari simbol dalam daerah berbeda tidak didukung"
+
+#: config/tc-h8300.c:2167 config/tc-mcore.c:2199 config/tc-pj.c:489
+#: config/tc-sh.c:4374 config/tc-xc16x.c:308
+#, c-format
+msgid "Cannot represent relocation type %s"
+msgstr "Tidak dapat merepresentasikan tipe relokasi %s"
+
+#. Simple range checking for FIELD against HIGH and LOW bounds.
+#. IGNORE is used to suppress the error message.
+#. Variant of CHECK_FIELD for use in md_apply_fix and other places where
+#. the current file and line number are not valid.
+#: config/tc-hppa.c:1015 config/tc-hppa.c:1029
+#, c-format
+msgid "Field out of range [%d..%d] (%d)."
+msgstr "Field diluar dari jangkauan [%d..%d] (%d)."
+
+#. Simple alignment checking for FIELD against ALIGN (a power of two).
+#. IGNORE is used to suppress the error message.
+#: config/tc-hppa.c:1043
+#, c-format
+msgid "Field not properly aligned [%d] (%d)."
+msgstr "Field tidak secara benar teralign [%d] (%d)."
+
+#: config/tc-hppa.c:1096
+msgid "Missing .exit\n"
+msgstr "Hilang .exit\n"
+
+#: config/tc-hppa.c:1099
+msgid "Missing .procend\n"
+msgstr "Hilang .procend\n"
+
+#: config/tc-hppa.c:1284
+#, c-format
+msgid "Invalid field selector.  Assuming F%%."
+msgstr "pemilih field tidak valid. Mengasumsikan F%%."
+
+#: config/tc-hppa.c:1311
+msgid "Bad segment in expression."
+msgstr "Segmen buruk dalam ekspresi."
+
+#: config/tc-hppa.c:1336
+#, c-format
+msgid "Invalid Nullification: (%c)"
+msgstr "Pengosongan tidak valid: (%c)"
+
+#: config/tc-hppa.c:1406
+msgid "Cannot handle fixup"
+msgstr "Tidak dapat menangani perbaikan"
+
+#: config/tc-hppa.c:1704
+#, c-format
+msgid "  -Q                      ignored\n"
+msgstr "  -Q                      diabaikan\n"
+
+#: config/tc-hppa.c:1708
+#, c-format
+msgid "  -c                      print a warning if a comment is found\n"
+msgstr "  -c                      tampilkan peringatan jika sebuah kompentar ditemukan\n"
+
+#: config/tc-hppa.c:1774
+#, c-format
+msgid "no hppa_fixup entry for fixup type 0x%x"
+msgstr "tidak ada masukan hppa_fixup untuk tipe perbaikan 0x%x"
+
+#: config/tc-hppa.c:1953
+msgid "Unknown relocation encountered in md_apply_fix."
+msgstr "Relokasi tidak diketahui ditemui dalam md_apply_fix."
+
+#: config/tc-hppa.c:2141 config/tc-hppa.c:2166
+#, c-format
+msgid "Undefined register: '%s'."
+msgstr "Register tidak terdefinisi: '%s'."
+
+#: config/tc-hppa.c:2200
+#, c-format
+msgid "Non-absolute symbol: '%s'."
+msgstr "Simbol bukan-absolut: '%s'."
+
+#: config/tc-hppa.c:2215
+#, c-format
+msgid "Undefined absolute constant: '%s'."
+msgstr "Konstanta absolut tidak terdefinisi: '%s'."
+
+#: config/tc-hppa.c:2246 config/tc-hppa.c:5665
+msgid "could not update architecture and machine"
+msgstr "tidak dapat mengupdate arsitektur dan mesin"
+
+#: config/tc-hppa.c:2284
+#, c-format
+msgid "Invalid FP Compare Condition: %s"
+msgstr "Kondisi perbandingan FP tidak valid: %s"
+
+#: config/tc-hppa.c:2339
+#, c-format
+msgid "Invalid FTEST completer: %s"
+msgstr "pelengkap FTEST tidak valid: %s"
+
+#: config/tc-hppa.c:2405 config/tc-hppa.c:2442
+#, c-format
+msgid "Invalid FP Operand Format: %3s"
+msgstr "Format operan FP tidak valid: %3s"
+
+#: config/tc-hppa.c:2577
+msgid "Bad segment (should be absolute)."
+msgstr "Segmen buruk (seharusnya absolut)."
+
+#: config/tc-hppa.c:2603
+#, c-format
+msgid "Invalid argument location: %s\n"
+msgstr "Argumen lokasi tidak valid: %s\n"
+
+#: config/tc-hppa.c:2632
+#, c-format
+msgid "Invalid argument description: %d"
+msgstr "Argumen deskripsi tidak valid: %d"
+
+#: config/tc-hppa.c:3458
+msgid "Invalid Indexed Load Completer."
+msgstr "Pelengkap Beban Terindeks tidak valid."
+
+#: config/tc-hppa.c:3463
+msgid "Invalid Indexed Load Completer Syntax."
+msgstr "Syntax Pelengkap Beban Terindeks tidak valid."
+
+#: config/tc-hppa.c:3497
+msgid "Invalid Short Load/Store Completer."
+msgstr "Pelengkap Load/Store Pendek tidak valid."
+
+#: config/tc-hppa.c:3557 config/tc-hppa.c:3562
+msgid "Invalid Store Bytes Short Completer"
+msgstr "Pelengkap Simpan Bytes Pendek tidak valid"
+
+#: config/tc-hppa.c:3873 config/tc-hppa.c:3879
+msgid "Invalid left/right combination completer"
+msgstr "Pelengkap kombinasi kiri/kanan tidak valid"
+
+#: config/tc-hppa.c:3928 config/tc-hppa.c:3935
+msgid "Invalid permutation completer"
+msgstr "Pelengkap permutasi tidak valid"
+
+#: config/tc-hppa.c:4035
+#, c-format
+msgid "Invalid Add Condition: %s"
+msgstr "Kodisi Tambah tidak valid: %s"
+
+#: config/tc-hppa.c:4046 config/tc-hppa.c:4056
+msgid "Invalid Add and Branch Condition"
+msgstr "Kondisi Tambah dan Cabang tidak valid"
+
+#: config/tc-hppa.c:4077 config/tc-hppa.c:4214
+msgid "Invalid Compare/Subtract Condition"
+msgstr "Kodisi Banding/Kurang tidak valid"
+
+#: config/tc-hppa.c:4117
+#, c-format
+msgid "Invalid Bit Branch Condition: %c"
+msgstr "Kondisi Bit Cabang tidak valid: %c"
+
+#: config/tc-hppa.c:4202
+#, c-format
+msgid "Invalid Compare/Subtract Condition: %s"
+msgstr "Kondisi Banding/Kurang tidak valid: %s"
+
+#: config/tc-hppa.c:4229
+msgid "Invalid Compare and Branch Condition"
+msgstr "Kondisi Banding dan Cabang tidak valid"
+
+#: config/tc-hppa.c:4325
+msgid "Invalid Logical Instruction Condition."
+msgstr "Kondisi Instruksi Logikal tidak valid."
+
+#: config/tc-hppa.c:4380
+msgid "Invalid Shift/Extract/Deposit Condition."
+msgstr "Kondisi Shift/Ekstrak/Deposit tidak valid."
+
+#: config/tc-hppa.c:4492
+msgid "Invalid Unit Instruction Condition."
+msgstr "Kondisi Satuan Instruksi tidak valid."
+
+#: config/tc-hppa.c:4967 config/tc-hppa.c:4999 config/tc-hppa.c:5030
+#: config/tc-hppa.c:5060
+msgid "Branch to unaligned address"
+msgstr "Cabang ke alamat tidak teralign"
+
+#: config/tc-hppa.c:5238
+msgid "Invalid SFU identifier"
+msgstr "Identifier SFU tidak valid"
+
+#: config/tc-hppa.c:5288
+msgid "Invalid COPR identifier"
+msgstr "Identifier COPR tidak valid"
+
+#: config/tc-hppa.c:5417
+msgid "Invalid Floating Point Operand Format."
+msgstr "Format Operan Floating Point tidak valid."
+
+#: config/tc-hppa.c:5534 config/tc-hppa.c:5554 config/tc-hppa.c:5574
+#: config/tc-hppa.c:5594 config/tc-hppa.c:5614
+msgid "Invalid register for single precision fmpyadd or fmpysub"
+msgstr "Register untuk presisi tunggal fmpyadd atau fmpysub tidak valid"
+
+#: config/tc-hppa.c:5682
+#, c-format
+msgid "Invalid operands %s"
+msgstr "operan tidak valid %s"
+
+#: config/tc-hppa.c:5737 config/tc-hppa.c:6925 config/tc-hppa.c:6980
+msgid "Missing function name for .PROC (corrupted label chain)"
+msgstr "Hilang nama fungsi untuk .PROC (rantai nama terkorupsi)"
+
+#: config/tc-hppa.c:5740 config/tc-hppa.c:6983
+msgid "Missing function name for .PROC"
+msgstr "Hilang nama fungsi untuk .PROC"
+
+#: config/tc-hppa.c:5799
+msgid "Argument to .BLOCK/.BLOCKZ must be between 0 and 0x3fffffff"
+msgstr "Argumen ke .BLOCK/.BLOCKZ harus diantara 0 dan 0x3fffffff"
+
+#: config/tc-hppa.c:5895
+#, c-format
+msgid "Invalid .CALL argument: %s"
+msgstr "Argumen .CALL tidak valid: %s"
+
+#: config/tc-hppa.c:6011
+msgid ".callinfo is not within a procedure definition"
+msgstr ".callinfo tidak dalam sebuah definisi prosedur"
+
+#: config/tc-hppa.c:6031
+#, c-format
+msgid "FRAME parameter must be a multiple of 8: %d\n"
+msgstr "parameter FRAME harus kelipatan dari 8: %d\n"
+
+#: config/tc-hppa.c:6050
+msgid "Value for ENTRY_GR must be in the range 3..18\n"
+msgstr "Nilai untuk ENTRY_GR harus berada dalam jangkauan 3..18\n"
+
+#: config/tc-hppa.c:6062
+msgid "Value for ENTRY_FR must be in the range 12..21\n"
+msgstr "Nilai untuk ENTRY_FR harus berada dalam jangkauan 12..21\n"
+
+#: config/tc-hppa.c:6072
+msgid "Value for ENTRY_SR must be 3\n"
+msgstr "Nilai untuk ENTRY_SR harus berupa 3\n"
+
+#: config/tc-hppa.c:6128
+#, c-format
+msgid "Invalid .CALLINFO argument: %s"
+msgstr "argumen .CALLINFO tidak valid: %s"
+
+#: config/tc-hppa.c:6238
+msgid "The .ENTER pseudo-op is not supported"
+msgstr "Pseudo-op .ENTER tidak didukung"
+
+#: config/tc-hppa.c:6254
+msgid "Misplaced .entry. Ignored."
+msgstr "Salah tempat .entry. Diabaikan."
+
+#: config/tc-hppa.c:6258
+msgid "Missing .callinfo."
+msgstr "Hilang .callinfo."
+
+#: config/tc-hppa.c:6322
+msgid ".REG expression must be a register"
+msgstr "ekpresi .REG harus berupa sebuah register"
+
+#: config/tc-hppa.c:6338
+msgid "bad or irreducible absolute expression; zero assumed"
+msgstr "buruk atau tidak tereduksi ekspresi absolut: nol diasumsikan"
+
+#: config/tc-hppa.c:6349
+msgid ".REG must use a label"
+msgstr ".REG harus menggunakan sebuah label"
+
+#: config/tc-hppa.c:6351
+msgid ".EQU must use a label"
+msgstr ".EQU harus menggunakan sebuah label"
+
+#: config/tc-hppa.c:6413
+#, c-format
+msgid "Symbol '%s' could not be created."
+msgstr "Simbol '%s' tidak dapat dibuat."
+
+#: config/tc-hppa.c:6417
+msgid "No memory for symbol name."
+msgstr "Tidak ada memori untuk nama simbol."
+
+#: config/tc-hppa.c:6466
+msgid ".EXIT must appear within a procedure"
+msgstr ".EXIT harus tampil dalam sebuah prosedur"
+
+#: config/tc-hppa.c:6470
+msgid "Missing .callinfo"
+msgstr "Hilang .callinfo"
+
+#: config/tc-hppa.c:6474
+msgid "No .ENTRY for this .EXIT"
+msgstr "Tidak ada .ENTRY untuk .EXIT ini"
+
+#: config/tc-hppa.c:6514
+#, c-format
+msgid "Using ENTRY rather than CODE in export directive for %s"
+msgstr "Menggunakan ENTRY daripada CODE dalam direktif ekspor untuk %s"
+
+#: config/tc-hppa.c:6631
+#, c-format
+msgid "Undefined .EXPORT/.IMPORT argument (ignored): %s"
+msgstr "Tidak terdefinisi .EKSPOR/.IMPOR argumen (diabaikan): %s"
+
+#: config/tc-hppa.c:6655
+#, c-format
+msgid "Cannot define export symbol: %s\n"
+msgstr "Tidak dapat mendefinisi simbol ekspor: %s\n"
+
+#: config/tc-hppa.c:6752
+msgid "Missing label name on .LABEL"
+msgstr "Hilang nama label di .LABEL"
+
+#: config/tc-hppa.c:6757
+msgid "extra .LABEL arguments ignored."
+msgstr "kelebihan argumen .LABEL diabaikan."
+
+#: config/tc-hppa.c:6773
+msgid "The .LEAVE pseudo-op is not supported"
+msgstr "pseudo .LEAVE tidak didukung"
+
+#: config/tc-hppa.c:6811
+msgid "Unrecognized .LEVEL argument\n"
+msgstr "Argumen .LEVEL tidak dikenal\n"
+
+#: config/tc-hppa.c:6845
+#, c-format
+msgid "Cannot define static symbol: %s\n"
+msgstr "Tidak dapat mendefinisikan simbol statis: %s\n"
+
+#: config/tc-hppa.c:6879
+msgid "Nested procedures"
+msgstr "Prosedur nested"
+
+#: config/tc-hppa.c:6889
+msgid "Cannot allocate unwind descriptor\n"
+msgstr "Tidak dapat mengalokasikan deskripsi unwind\n"
+
+#: config/tc-hppa.c:6987
+msgid "misplaced .procend"
+msgstr "salah tempat .procend"
+
+#: config/tc-hppa.c:6990
+msgid "Missing .callinfo for this procedure"
+msgstr "Hilang .callinfo untuk prosedur ini"
+
+#: config/tc-hppa.c:6993
+msgid "Missing .EXIT for a .ENTRY"
+msgstr "Hilang .EXIT untuk sebuah .ENTRY"
+
+#: config/tc-hppa.c:7030
+msgid "Not in a space.\n"
+msgstr "Tidak dalam sebuah space.\n"
+
+#: config/tc-hppa.c:7033
+msgid "Not in a subspace.\n"
+msgstr "Tidak dapal sebuah subspace.\n"
+
+#: config/tc-hppa.c:7122
+msgid "Invalid .SPACE argument"
+msgstr "Argumen .SPACE tidak valid"
+
+#: config/tc-hppa.c:7168
+msgid "Can't change spaces within a procedure definition. Ignored"
+msgstr "Tidak dapat mengubah ruang dalam sebuah definisi prosedur. Diabaikan"
+
+#: config/tc-hppa.c:7296
+#, c-format
+msgid "Undefined space: '%s' Assuming space number = 0."
+msgstr "Ruang: '%s' tidak terdefinisi. Mengasumsikan nomor spasi = 0."
+
+#: config/tc-hppa.c:7319
+msgid "Must be in a space before changing or declaring subspaces.\n"
+msgstr "Harus dalam sebuah spasi sebelum mengubah atau mendeklarasikan subspace.\n"
+
+#: config/tc-hppa.c:7323
+msgid "Can't change subspaces within a procedure definition. Ignored"
+msgstr "Tidak dapat mengubah subspaces dalam sebuah definisi prosedur. Diabaikan"
+
+#: config/tc-hppa.c:7359
+msgid "Parameters of an existing subspace can't be modified"
+msgstr "Parameter dari sebuah subspace yang sudah ada tidak dapat dimodifikasi"
+
+#: config/tc-hppa.c:7411
+msgid "Alignment must be a power of 2"
+msgstr "Alignmen harus kelipatan dari 2"
+
+#: config/tc-hppa.c:7458
+msgid "FIRST not supported as a .SUBSPACE argument"
+msgstr "FIRST tidak didukung sebagai sebuah argumen .SUBSPACE"
+
+#: config/tc-hppa.c:7460
+msgid "Invalid .SUBSPACE argument"
+msgstr "Argumen .SUBSPACE tidak valid"
+
+#: config/tc-hppa.c:7649
+#, c-format
+msgid "Internal error: Unable to find containing space for %s."
+msgstr "Internal error: Tidak dapat menemukan ruang yang berisi %s."
+
+#: config/tc-hppa.c:7687
+#, c-format
+msgid "Out of memory: could not allocate new space chain entry: %s\n"
+msgstr "Kehabisan memori: tidak dapat mengalokasi rantai masukan ruang baru: %s\n"
+
+#: config/tc-hppa.c:7775
+#, c-format
+msgid "Out of memory: could not allocate new subspace chain entry: %s\n"
+msgstr "Kehabisan memori: tidak dapat mengalokasikan rantai masukan subspace baru: %s\n"
+
+#: config/tc-hppa.c:8220
+msgid "-R option not supported on this target."
+msgstr "-R opsi tidak didukung di target ini."
+
+#: config/tc-hppa.c:8237 config/tc-sparc.c:811 config/tc-sparc.c:848
+#, c-format
+msgid "Internal error: can't hash `%s': %s\n"
+msgstr "Internal error: tidak dapat hash `%s': %s\n"
+
+#: config/tc-hppa.c:8246 config/tc-i860.c:236
+#, c-format
+msgid "internal error: losing opcode: `%s' \"%s\"\n"
+msgstr "internal error: kehilangan opkode: `%s' \"%s\"\n"
+
+#: config/tc-i386.c:1764
+#, c-format
+msgid "%s shortened to %s"
+msgstr "%s dipendekan ke %s"
+
+#: config/tc-i386.c:1834
+msgid "same type of prefix used twice"
+msgstr "tipe sama untuk prefik digunakan dua kali"
+
+#: config/tc-i386.c:1855
+msgid "64bit mode not supported on this CPU."
+msgstr "mode 64 bit tidak didukung dalam CPU ini."
+
+#: config/tc-i386.c:1859
+msgid "32bit mode not supported on this CPU."
+msgstr "mode 32 bit tidak didukung dalam CPU ini."
+
+#: config/tc-i386.c:1892
+msgid "bad argument to syntax directive."
+msgstr "argumen buruk untuk direktif sintaks."
+
+#: config/tc-i386.c:1939
+msgid "bad argument to sse_check directive."
+msgstr "argumen buruk ke direktif sse_check."
+
+#: config/tc-i386.c:1943
+msgid "missing argument for sse_check directive"
+msgstr "hilang argumen untuk direktif sse_check"
+
+#: config/tc-i386.c:2011
+#, c-format
+msgid "no such architecture: `%s'"
+msgstr "tidak ada arsitektur seperti itu: `%s'"
+
+#: config/tc-i386.c:2016
+msgid "missing cpu architecture"
+msgstr "hilang arsitektur cpu"
+
+#: config/tc-i386.c:2030
+#, c-format
+msgid "no such architecture modifier: `%s'"
+msgstr "tidak ada modifier arsitektur seperti itu: `%s'"
+
+#: config/tc-i386.c:2046 config/tc-i386.c:8354 config/tc-maxq.c:223
+msgid "Unknown architecture"
+msgstr "Arsitektur tidak diketahui"
+
+#: config/tc-i386.c:2394
+#, c-format
+msgid "unknown relocation (%u)"
+msgstr "relokasi (%u) tidak dikenal"
+
+#: config/tc-i386.c:2396
+#, c-format
+msgid "%u-byte relocation cannot be applied to %u-byte field"
+msgstr "%u-byte relokasi tidak dapat diaplikasikan ke field %u-byte"
+
+#: config/tc-i386.c:2400
+msgid "non-pc-relative relocation for pc-relative field"
+msgstr "non-pc-relative relokasi untuk field pc-relative"
+
+#: config/tc-i386.c:2405
+msgid "relocated field and relocation type differ in signedness"
+msgstr "field relokasi dan tipe relokasi berbeda dalam signedness"
+
+#: config/tc-i386.c:2414
+msgid "there are no unsigned pc-relative relocations"
+msgstr "tidak ada relokasi unsigned pc-relative"
+
+#: config/tc-i386.c:2422
+#, c-format
+msgid "cannot do %u byte pc-relative relocation"
+msgstr "tidak dapat melakukan %u byte pc-relative relokasi"
+
+#: config/tc-i386.c:2439
+#, c-format
+msgid "cannot do %s %u byte relocation"
+msgstr "tidak dapat melakukan relokasi %s %u byte"
+
+#: config/tc-i386.c:2670
+#, c-format
+msgid "can't use register '%s%s' as operand %d in '%s'."
+msgstr "tidak dapat menggunakan register '%s%s' sebagai operan %d dalam '%s'."
+
+#: config/tc-i386.c:2781
+#, c-format
+msgid "SSE instruction `%s' is used"
+msgstr "instruksi SSE `%s' digunakan"
+
+#: config/tc-i386.c:2795 config/tc-i386.c:4113
+#, c-format
+msgid "ambiguous operand size for `%s'"
+msgstr "ukuran operan ambigu untuk `%s'"
+
+#. UnixWare fsub no args is alias for fsubp, fadd -> faddp, etc.
+#: config/tc-i386.c:2844
+#, c-format
+msgid "translating to `%sp'"
+msgstr "menerjemahkan ke `%sp'"
+
+#: config/tc-i386.c:2895
+#, c-format
+msgid "can't encode register '%s%s' in an instruction requiring REX prefix."
+msgstr "tidak dapat mengenkode register '%s%s' dalam sebuah instruksi yang membutuhkan awalan REX."
+
+#: config/tc-i386.c:2942 config/tc-i386.c:3050 config/tc-maxq.c:800
+#: config/tc-maxq.c:830
+#, c-format
+msgid "no such instruction: `%s'"
+msgstr "tidak ada instruksi seperti itu: `%s'"
+
+#: config/tc-i386.c:2953 config/tc-i386.c:3083 config/tc-maxq.c:808
+#, c-format
+msgid "invalid character %s in mnemonic"
+msgstr "karakter %s dalam mnemonic tidak valid"
+
+#: config/tc-i386.c:2960
+msgid "expecting prefix; got nothing"
+msgstr "menduga awalan; tidak diperoleh apapun"
+
+#: config/tc-i386.c:2962
+msgid "expecting mnemonic; got nothing"
+msgstr "menduga mnemonic: tidak diperoleh apapun"
+
+#: config/tc-i386.c:2977 config/tc-i386.c:3101
+#, c-format
+msgid "`%s' is only supported in 64-bit mode"
+msgstr "`%s' hanya didukung dalam mode 64 bit"
+
+#: config/tc-i386.c:2978 config/tc-i386.c:3100
+#, c-format
+msgid "`%s' is not supported in 64-bit mode"
+msgstr "`%s' tidak didukung dalam mode 64 bit"
+
+#: config/tc-i386.c:2990
+#, c-format
+msgid "redundant %s prefix"
+msgstr "awalan %s redundan"
+
+#: config/tc-i386.c:3107
+#, c-format
+msgid "`%s' is not supported on `%s%s'"
+msgstr "`%s' tidak didukung dalam `%s%s'"
+
+#: config/tc-i386.c:3117
+msgid "use .code16 to ensure correct addressing mode"
+msgstr "menggunakan .code16 untuk memastikan mode pengalamatan benar"
+
+#: config/tc-i386.c:3130
+#, c-format
+msgid "expecting string instruction after `%s'"
+msgstr "menduga instruksi string sesudah `%s'"
+
+#: config/tc-i386.c:3162
+#, c-format
+msgid "invalid character %s before operand %d"
+msgstr "karakter %s tidak valid sebelum operan %d"
+
+#: config/tc-i386.c:3176
+#, c-format
+msgid "unbalanced parenthesis in operand %d."
+msgstr "paranthesis dalam operan %d tidak seimbang."
+
+#: config/tc-i386.c:3179 config/tc-maxq.c:1850
+#, c-format
+msgid "unbalanced brackets in operand %d."
+msgstr "bracket dalam operan %d tidak seimbang."
+
+#: config/tc-i386.c:3188
+#, c-format
+msgid "invalid character %s in operand %d"
+msgstr "karakter %s dalam operan %d tidak valid"
+
+#: config/tc-i386.c:3216 config/tc-maxq.c:1876
+#, c-format
+msgid "spurious operands; (%d operands/instruction max)"
+msgstr "spurious operan: (%d operan/instruksi maks)"
+
+#: config/tc-i386.c:3239 config/tc-maxq.c:1896
+msgid "expecting operand after ','; got nothing"
+msgstr "menduga operan sesudah ','; tidak diperoleh apa apa"
+
+#: config/tc-i386.c:3244
+msgid "expecting operand before ','; got nothing"
+msgstr "menduga operan sebelum ','; tidak diperoleh apa apa"
+
+#: config/tc-i386.c:3853
+#, c-format
+msgid "ambiguous operand size or operands invalid for `%s'"
+msgstr "ukuran operan ambigu untuk operan tidak valid untuk `%s'"
+
+#: config/tc-i386.c:3856
+#, c-format
+msgid "suffix or operands invalid for `%s'"
+msgstr "akhiran atau operan tidak valid untuk `%s'"
+
+#: config/tc-i386.c:3867
+#, c-format
+msgid "indirect %s without `*'"
+msgstr "indirek %s tanpa `*'"
+
+#. Warn them that a data or address size prefix doesn't
+#. affect assembly of the next line of code.
+#: config/tc-i386.c:3875
+#, c-format
+msgid "stand-alone `%s' prefix"
+msgstr "awalan `%s' stand-alone"
+
+#: config/tc-i386.c:3909 config/tc-i386.c:3925
+#, c-format
+msgid "`%s' operand %d must use `%ses' segment"
+msgstr "`%s' operan %d harus menggunakan segmen `%ses'"
+
+#. We have to know the operand size for crc32.
+#: config/tc-i386.c:3979
+#, c-format
+msgid "ambiguous memory operand size for `%s`"
+msgstr "ukuran memori operan ambigu untuk `%s`"
+
+#: config/tc-i386.c:4086
+msgid "no instruction mnemonic suffix given and no register operands; can't size instruction"
+msgstr "tidak ada instruksi mnemonic untuk akhiran yang diberikan dan tidak ada operan register;tidak dapat mengubah ukuran instruksi"
+
+#: config/tc-i386.c:4227 config/tc-i386.c:4302 config/tc-i386.c:4331
+#: config/tc-i386.c:4377 config/tc-i386.c:4415
+#, c-format
+msgid "Incorrect register `%s%s' used with `%c' suffix"
+msgstr "Register `%s%s' tidak benar digunakan dengan akhiran `%c'"
+
+#: config/tc-i386.c:4235 config/tc-i386.c:4309 config/tc-i386.c:4422
+#, c-format
+msgid "using `%s%s' instead of `%s%s' due to `%c' suffix"
+msgstr "menggunakan `%s%s' daripada `%s%s' karena akhiran `%c'"
+
+#: config/tc-i386.c:4261 config/tc-i386.c:4285 config/tc-i386.c:4353
+#: config/tc-i386.c:4398
+#, c-format
+msgid "`%s%s' not allowed with `%s%c'"
+msgstr "`%s%s' tidak diperbolehkan dengan `%s%c'"
+
+#: config/tc-i386.c:4489
+msgid "no instruction mnemonic suffix given; can't determine immediate size"
+msgstr "tidak ada akhiran instruksi mnemonic yang diberikan; tidak dapat menentukan ukuran langsung"
+
+#: config/tc-i386.c:4679 config/tc-i386.c:4714 config/tc-i386.c:4783
+#: config/tc-i386.c:4834
+#, c-format
+msgid "Incorrect operands for the '%s' instruction"
+msgstr "Operan tidak benar untuk instruksi '%s'"
+
+#: config/tc-i386.c:4841
+#, c-format
+msgid "Internal error for the '%s' instruction"
+msgstr "Internal error untuk instruksi '%s'"
+
+#: config/tc-i386.c:4849
+#, c-format
+msgid "the last operand of `%s' must be `%s%s'"
+msgstr "operan terakhir dari `%s' harus `%s%s'"
+
+#: config/tc-i386.c:4852
+#, c-format
+msgid "the first operand of `%s' must be `%s%s'"
+msgstr "operan pertama dari `%s' harus `%s%s'"
+
+#: config/tc-i386.c:5007
+#, c-format
+msgid "you can't `pop %scs'"
+msgstr "anda tidak dapat `pop %scs'"
+
+#. Reversed arguments on faddp, fsubp, etc.
+#: config/tc-i386.c:5036
+#, c-format
+msgid "translating to `%s %s%s,%s%s'"
+msgstr "menerjemahkan ke `%s %s%s,%s%s'"
+
+#. Extraneous `l' suffix on fp insn.
+#: config/tc-i386.c:5043
+#, c-format
+msgid "translating to `%s %s%s'"
+msgstr "menerjemahkan ke `%s %s%s'"
+
+#: config/tc-i386.c:5071
+#, c-format
+msgid "segment override on `%s' is ineffectual"
+msgstr "segmen override di `%s' adalah tidak efektif"
+
+#: config/tc-i386.c:5727 config/tc-i386.c:5821 config/tc-i386.c:5866
+msgid "skipping prefixes on this instruction"
+msgstr "melewatkan prefix di instruksi ini"
+
+#: config/tc-i386.c:5886
+msgid "16-bit jump out of range"
+msgstr "lompat 16-bit diluar dari jangkauan"
+
+#: config/tc-i386.c:5895
+#, c-format
+msgid "can't handle non absolute segment in `%s'"
+msgstr "tidak dapat menangani segmen tidak absolut dalam `%s'"
+
+#: config/tc-i386.c:6498
+#, c-format
+msgid "@%s reloc is not supported with %d-bit output format"
+msgstr "@%s relokasi tidak didukung dengan format keluaran %d-bit"
+
+#: config/tc-i386.c:6542
+#, c-format
+msgid "missing or invalid expression `%s'"
+msgstr "ekspresi `%s' hilang atau tidak valid"
+
+#: config/tc-i386.c:6595
+#, c-format
+msgid "at most %d immediate operands are allowed"
+msgstr "hampir seluruh operan %d langsung diperbolehkan"
+
+#: config/tc-i386.c:6617 config/tc-i386.c:6855 config/tc-maxq.c:1462
+#, c-format
+msgid "junk `%s' after expression"
+msgstr "sampah `%s' sesudah pernyataan"
+
+#: config/tc-i386.c:6630
+#, c-format
+msgid "missing or invalid immediate expression `%s'"
+msgstr "hilang atau tidak valid pernyataan langsung `%s'"
+
+#: config/tc-i386.c:6653 config/tc-i386.c:6910 config/tc-maxq.c:1492
+#, c-format
+msgid "unimplemented segment %s in operand"
+msgstr "tidak terimplementasi segmen %s dalam operan"
+
+#: config/tc-i386.c:6659
+#, c-format
+msgid "illegal immediate register operand %s"
+msgstr "register operan %s langsung tidak legal"
+
+#: config/tc-i386.c:6707
+#, c-format
+msgid "expecting scale factor of 1, 2, 4, or 8: got `%s'"
+msgstr "menduga faktor skala dari 1, 2, 4, atau 8: diperoleh `%s'"
+
+#: config/tc-i386.c:6716
+#, c-format
+msgid "scale factor of %d without an index register"
+msgstr "faktor skala dari %d tanpa sebuah register index"
+
+#: config/tc-i386.c:6738
+#, c-format
+msgid "at most %d displacement operands are allowed"
+msgstr "hampir seluruh operan %d perpindahan diperbolehkan"
+
+#: config/tc-i386.c:6895
+#, c-format
+msgid "missing or invalid displacement expression `%s'"
+msgstr "ekspresi `%s' perpindahan hilang atau tidak valid"
+
+#: config/tc-i386.c:6999
+#, c-format
+msgid "`%s' is not valid here (expected `%c%s%s%c')"
+msgstr "'%s' tidak valid disini (diduga `%c%s%s%c')"
+
+#: config/tc-i386.c:7079
+#, c-format
+msgid "`%s' is not a valid %s expression"
+msgstr "`%s' bukan sebuah ekspresi %s yang valid"
+
+#: config/tc-i386.c:7084
+#, c-format
+msgid "`%s' is not a valid %s-bit %s expression"
+msgstr "`%s' bukang sebuah ekspresi %s %s-bit yang valid"
+
+#: config/tc-i386.c:7165
+#, c-format
+msgid "bad memory operand `%s'"
+msgstr "operan `%s' memori buruk"
+
+#: config/tc-i386.c:7180
+#, c-format
+msgid "junk `%s' after register"
+msgstr "sampah `%s' sesudah register"
+
+#: config/tc-i386.c:7193 config/tc-i386.c:7309 config/tc-i386.c:7350
+#, c-format
+msgid "bad register name `%s'"
+msgstr "nama register `%s' buruk"
+
+#: config/tc-i386.c:7201
+msgid "immediate operand illegal with absolute jump"
+msgstr "operan langsung tidak legal dengan lompat absolut"
+
+#: config/tc-i386.c:7223
+#, c-format
+msgid "too many memory references for `%s'"
+msgstr "terlalu banyak referensi memori untuk `%s'"
+
+#: config/tc-i386.c:7301
+#, c-format
+msgid "expecting `,' or `)' after index register in `%s'"
+msgstr "menduga `,' atau `)' sesudah register indeks dalam `%s'"
+
+#: config/tc-i386.c:7326
+#, c-format
+msgid "expecting `)' after scale factor in `%s'"
+msgstr "menduga `)' sesudah faktor skala dalam `%s'"
+
+#: config/tc-i386.c:7334
+#, c-format
+msgid "expecting index register or scale factor after `,'; got '%c'"
+msgstr "menduga indeks register atau faktor skala sesudah `,'; diperoleh '%c'"
+
+#: config/tc-i386.c:7342
+#, c-format
+msgid "expecting `,' or `)' after base register in `%s'"
+msgstr "menduga `,' atau `)' sesudah register dasar dalam `%s'"
+
+#. It's not a memory operand; argh!
+#: config/tc-i386.c:7386
+#, c-format
+msgid "invalid char %s beginning operand %d `%s'"
+msgstr "karakter %s tidak valid diawal operan %d `%s'"
+
+#: config/tc-i386.c:7562
+msgid "long jump required"
+msgstr "lompat jauh dibutuhkan"
+
+#: config/tc-i386.c:7617
+msgid "jump target out of range"
+msgstr "target lompat diluar dari jangkauan"
+
+#: config/tc-i386.c:8083
+msgid "No compiled in support for x86_64"
+msgstr "Tidak dikompile untuk mendukung x86_64"
+
+#: config/tc-i386.c:8115 config/tc-i386.c:8162
+#, c-format
+msgid "Invalid -march= option: `%s'"
+msgstr "Opsi -march= tidak valid: `%s'"
+
+#: config/tc-i386.c:8171 config/tc-i386.c:8183
+#, c-format
+msgid "Invalid -mtune= option: `%s'"
+msgstr "Opsi -mtune= tidak valid: `%s'"
+
+#: config/tc-i386.c:8192
+#, c-format
+msgid "Invalid -mmnemonic= option: `%s'"
+msgstr "Opsi -mmnemonic tidak valid: `%s'"
+
+#: config/tc-i386.c:8201
+#, c-format
+msgid "Invalid -msyntax= option: `%s'"
+msgstr "Opsi -msyntax= tidak valid: `%s'"
+
+#: config/tc-i386.c:8228
+#, c-format
+msgid "Invalid -msse-check= option: `%s'"
+msgstr "Opsi -msse-check= tidak valid: `%s'"
+
+#: config/tc-i386.c:8242
+#, c-format
+msgid ""
+"  -Q                      ignored\n"
+"  -V                      print assembler version number\n"
+"  -k                      ignored\n"
+msgstr ""
+"  -Q                      diabaikan\n"
+"  -V                      menampilkan nomor versi perakit\n"
+"  -k                      diabaikan\n"
+
+#: config/tc-i386.c:8247
+#, c-format
+msgid ""
+"  -n                      Do not optimize code alignment\n"
+"  -q                      quieten some warnings\n"
+msgstr ""
+"  -n                      Jangan optimasi kode alignmen\n"
+"  -q                      hilangkan beberapa peringatan\n"
+
+#: config/tc-i386.c:8251
+#, c-format
+msgid "  -s                      ignored\n"
+msgstr "  -s                      diabaikan\n"
+
+#: config/tc-i386.c:8255
+#, c-format
+msgid "  --32/--64               generate 32bit/64bit code\n"
+msgstr "  --32/--64               menghasilkan kode 32 bit/ 64 bit\n"
+
+#: config/tc-i386.c:8259
+#, c-format
+msgid "  --divide                do not treat `/' as a comment character\n"
+msgstr "  --divide                jangan perlakukan '/' sebagai sebuah karakter komentar\n"
+
+#: config/tc-i386.c:8262
+#, c-format
+msgid "  --divide                ignored\n"
+msgstr "  --divide                diabaikan\n"
+
+#: config/tc-i386.c:8265
+#, c-format
+msgid ""
+"  -march=CPU[,+EXTENSION...]\n"
+"                          generate code for CPU and EXTENSION, CPU is one of:\n"
+"                           i8086, i186, i286, i386, i486, pentium, pentiumpro,\n"
+"                           pentiumii, pentiumiii, pentium4, prescott, nocona,\n"
+"                           core, core2, k6, k6_2, athlon, k8, amdfam10,\n"
+"                           generic32, generic64\n"
+"                          EXTENSION is combination of:\n"
+"                           mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n"
+"                           avx, vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n"
+"                           3dnow, 3dnowa, sse4a, sse5, svme, abm, padlock\n"
+msgstr ""
+"  -march=CPU[,+EKSTENSION...]\n"
+"                         menghasilkan kode untuk CPU dan EKSTENSI, CPU adalah satu dari:\n"
+"                           i8086, i186, i286, i386, i486, pentium, pentiumpro,\n"
+"                           pentiumii, pentiumiii, pentium4, prescott, nocona,\n"
+"                           core, core2, k6, k6_2, athlon, k8, amdfam10,\n"
+"                           generic32, generic64\n"
+"                         EKSTENSI adalah kombinasi dari:\n"
+"                           mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n"
+"                           avx, vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n"
+"                           3dnow, 3dnowa, sse4a, sse5, svme, abm, padlock\n"
+
+#: config/tc-i386.c:8276
+#, c-format
+msgid ""
+"  -mtune=CPU              optimize for CPU, CPU is one of:\n"
+"                           i8086, i186, i286, i386, i486, pentium, pentiumpro,\n"
+"                           pentiumii, pentiumiii, pentium4, prescott, nocona,\n"
+"                           core, core2, k6, k6_2, athlon, k8, amdfam10,\n"
+"                           generic32, generic64\n"
+msgstr ""
+"  -mtune=CPU              optimasi untuk CPU, CPU adalah salah satu dari:\n"
+"                           i8086, i186, i286, i386, i486, pentium, pentiumpro,\n"
+"                           pentiumii, pentiumiii, pentium4, prescott, nocona,\n"
+"                           core, core2, k6, k6_2, athlon, k8, amdfam10,\n"
+"                           generic32, generic64\n"
+
+#: config/tc-i386.c:8282
+#, c-format
+msgid "  -msse2avx               encode SSE instructions with VEX prefix\n"
+msgstr "  -msse2avx               enkode instruksi SSE dengan awalan VEX\n"
+
+#: config/tc-i386.c:8284
+#, c-format
+msgid ""
+"  -msse-check=[none|error|warning]\n"
+"                          check SSE instructions\n"
+msgstr ""
+"  -msse-check=[none|error|warning]\n"
+"                          periksa instruksi SSE\n"
+
+#: config/tc-i386.c:8287
+#, c-format
+msgid "  -mmnemonic=[att|intel]  use AT&T/Intel mnemonic\n"
+msgstr "  -mmnemonic=[att|intel]  gunakan AT&T/Intel mnemonic\n"
+
+#: config/tc-i386.c:8289
+#, c-format
+msgid "  -msyntax=[att|intel]    use AT&T/Intel syntax\n"
+msgstr "  -msyntax=[att|intel]    gunakan syntaks AT&T/Intel\n"
+
+#: config/tc-i386.c:8291
+#, c-format
+msgid "  -mindex-reg             support pseudo index registers\n"
+msgstr "  -mindex-reg             dukung pseudo indeks register\n"
+
+#: config/tc-i386.c:8293
+#, c-format
+msgid "  -mnaked-reg             don't require `%%' prefix for registers\n"
+msgstr "  -mnaked-reg             jangan butuhkan `%%' prefix untuk register\n"
+
+#: config/tc-i386.c:8295
+#, c-format
+msgid "  -mold-gcc               support old (<= 2.8.1) versions of gcc\n"
+msgstr "  -mold-gcc               dukung veris gcc lama (<= 2.8.1)\n"
+
+#: config/tc-i386.c:8443 config/tc-s390.c:1782
+msgid "GOT already in symbol table"
+msgstr "GOT telah berada dalam tabel simbol"
+
+#: config/tc-i386.c:8592
+#, c-format
+msgid "can not do %d byte pc-relative relocation"
+msgstr "tidak dapat melakukan %d byte pc-relatif relokasi"
+
+#: config/tc-i386.c:8610 config/tc-maxq.c:247
+#, c-format
+msgid "can not do %d byte relocation"
+msgstr "tidak dapat melakukan %d byte relokasi"
+
+#: config/tc-i386.c:8689 config/tc-maxq.c:274 config/tc-s390.c:2219
+#, c-format
+msgid "cannot represent relocation type %s"
+msgstr "tidak dapat merepresentasi tipe relokasi %s"
+
+#: config/tc-i386.c:8948
+#, c-format
+msgid "invalid operand for '%s' ('%s' unexpected)"
+msgstr "operan tidak valid untuk '%s' (diduga '%s')"
+
+#: config/tc-i386.c:8960
+#, c-format
+msgid "too many memory references for '%s'"
+msgstr "terlalu banyak referensi memori untuk '%s'"
+
+#. See the comments in intel_bracket_expr.
+#: config/tc-i386.c:8970
+#, c-format
+msgid "Treating `%s' as memory reference"
+msgstr "Memperlakukan `%s' sebagai referensi memori"
+
+#: config/tc-i386.c:9009 config/tc-i386.c:9567
+msgid "Segment override ignored"
+msgstr "Mengabaikan pemaksaan segmentasi"
+
+#: config/tc-i386.c:9328
+#, c-format
+msgid "Unknown operand modifier `%s'"
+msgstr "Pemodifikasi operan '%s' tidak dikenal"
+
+#: config/tc-i386.c:9346
+msgid "Conflicting operand modifiers"
+msgstr "Konflik pemodifikasi operan"
+
+#: config/tc-i386.c:9395
+msgid "Invalid operand to `OFFSET'"
+msgstr "Operan tidak valid ke `OFFSET'"
+
+#: config/tc-i386.c:9469
+#, c-format
+msgid "`[%.*s]' taken to mean just `%.*s'"
+msgstr "`[%.*s]' diambil yang hanya berarti '%.*s'"
+
+#: config/tc-i386.c:9562
+#, c-format
+msgid "`%s' is not a valid segment register"
+msgstr "`%s' bukan sebuah segmentasi register yang valid"
+
+#: config/tc-i386.c:9569
+msgid "Extra segment override ignored"
+msgstr "Pemaksaan segmentasi lebih diabaikan"
+
+#: config/tc-i386.c:9600
+msgid "cannot use `FLAT' here"
+msgstr "tidak dapat menggunakan `FLAT' disini"
+
+#: config/tc-i386.c:9609 config/tc-i386.c:9777
+msgid "Register scaling only allowed in memory operands"
+msgstr "Register scaling hanya diperbolehkan dalam operan memori"
+
+#: config/tc-i386.c:9631 config/tc-i386.c:9753
+#, c-format
+msgid "Syntax error: Expecting a constant, got `%s'"
+msgstr "Sintaks error: menduga sebuah konstanta, diperoleh `%s'"
+
+#: config/tc-i386.c:9659
+msgid "Too many register references in memory operand"
+msgstr "Terlalu banyak referensi register dalam operan memori"
+
+#: config/tc-i386.c:9679
+msgid "Invalid use of register"
+msgstr "Penggunaan register tidak valid"
+
+#: config/tc-i386.c:9830
+#, c-format
+msgid "Unrecognized token '%s'"
+msgstr "Tanda '%s' tidak dikenal"
+
+#: config/tc-i386.c:9846
+#, c-format
+msgid "Unexpected token `%s'"
+msgstr "Tanda `%s' tidak diduga"
+
+#: config/tc-i386.c:10022
+#, c-format
+msgid "Unrecognized token `%s'"
+msgstr "Tanda `%s' tidak dikenal"
+
+#: config/tc-i386.c:10132
+msgid "Bad .section directive: want a,l,w,x,M,S,G,T in string"
+msgstr "Direktif .section buruk: diinginkan string a,l,w,x,M,S,G,T"
+
+#: config/tc-i386.c:10135
+msgid "Bad .section directive: want a,w,x,M,S,G,T in string"
+msgstr "Direktif .section buruk: diinginkan string a,w,x,M,S,G,T"
+
+#: config/tc-i386.c:10154
+msgid ".largecomm supported only in 64bit mode, producing .comm"
+msgstr ".largecomm hanya didukung dalam mode 64 bit, menghasilkan .comm"
+
+#: config/tc-i860.c:122
+msgid "Directive .dual available only with -mintel-syntax option"
+msgstr "Direktif .dual hanya tersedia dengan opsi -mintel-syntax"
+
+#: config/tc-i860.c:132
+msgid "Directive .enddual available only with -mintel-syntax option"
+msgstr "Direktif .enddual hanya tersedia dengan opsi -mintel-syntax"
+
+#: config/tc-i860.c:145
+msgid "Directive .atmp available only with -mintel-syntax option"
+msgstr "Direktif .atmp hanya tersedia dengan opsi -mintel-syntax"
+
+#: config/tc-i860.c:167 config/tc-i860.c:171
+msgid "Unknown temporary pseudo register"
+msgstr "Pseudo register sementara tidak diketahui"
+
+#: config/tc-i860.c:247
+msgid "Defective assembler.  No assembly attempted."
+msgstr "Perakit tidak sempurna. Tidak ada perakitan yang akan dicoba."
+
+#: config/tc-i860.c:393 config/tc-i860.c:938 config/tc-m68k.c:3731
+#: config/tc-m68k.c:3763 config/tc-sparc.c:2693
+msgid "failed sanity check."
+msgstr "gagal pemeriksaan keadaan."
+
+#: config/tc-i860.c:400
+#, c-format
+msgid "Expanded opcode after delayed branch: `%s'"
+msgstr "Ekspanded opkode sesudah pencabangan tertunda: `%s'"
+
+#: config/tc-i860.c:404
+#, c-format
+msgid "Expanded opcode in dual mode: `%s'"
+msgstr "Ekspanded opkode dalam mode ganda: `%s'"
+
+#: config/tc-i860.c:408
+#, c-format
+msgid "An instruction was expanded (%s)"
+msgstr "Sebuah instruksi telah diekspan (%s)"
+
+#: config/tc-i860.c:674
+msgid "Pipelined instruction: fsrc1 = fdest"
+msgstr "Instruksi pipeline: fsrc1 = fdest"
+
+#: config/tc-i860.c:877 config/tc-i860.c:884 config/tc-i860.c:891
+msgid "Assembler does not yet support PIC"
+msgstr "Perakit belum mendukung PIC"
+
+#: config/tc-i860.c:955
+#, c-format
+msgid "Illegal operands for %s"
+msgstr "Operan tidak legal untuk %s"
+
+#: config/tc-i860.c:972
+#, c-format
+msgid "'d.%s' must be 8-byte aligned"
+msgstr "'d.%s' harus berupa 8-byte aligned"
+
+#: config/tc-i860.c:980
+#, c-format
+msgid "Prefix 'd.' invalid for instruction `%s'"
+msgstr "Awalan 'd.' tidak valid untuk instruksi `%s'"
+
+#: config/tc-i860.c:1133
+#, c-format
+msgid ""
+"  -EL\t\t\t  generate code for little endian mode (default)\n"
+"  -EB\t\t\t  generate code for big endian mode\n"
+"  -mwarn-expand\t\t  warn if pseudo operations are expanded\n"
+"  -mxp\t\t\t  enable i860XP support (disabled by default)\n"
+"  -mintel-syntax\t  enable Intel syntax (default to AT&T/SVR4)\n"
+msgstr ""
+"  -EL\t\t\t  menghasilkan kode untuk mode little endian (default)\n"
+"  -EB\t\t\t  menghasilkan kode untuk mode big endian\n"
+"  -mwarn-expand\t\t peringatkan jika operasi pseudo telah diekspan\n"
+"  -mxp\t\t\t aktifkan dukungan i860XP (non-aktif secara baku)\n"
+"  -mintel-syntas\t  aktifkan Intel syntax (baku ke AT&T/SVR4)\n"
+
+#. SVR4 compatibility flags.
+#: config/tc-i860.c:1141
+#, c-format
+msgid ""
+"  -V\t\t\t  print assembler version number\n"
+"  -Qy, -Qn\t\t  ignored\n"
+msgstr ""
+"  -V\t\t\t  tampilkan nomor versi perakit\n"
+"  -Qy, -Qn\t\t  diabaikan\n"
+
+#: config/tc-i860.c:1204
+msgid "This immediate requires 0 MOD 2 alignment"
+msgstr "Immediate ini membutuhkan 0 MOD 2 alignmen"
+
+#: config/tc-i860.c:1207
+msgid "This immediate requires 0 MOD 4 alignment"
+msgstr "Immediate ini membutuhkan 0 MOD 4 alignmen"
+
+#: config/tc-i860.c:1210
+msgid "This immediate requires 0 MOD 8 alignment"
+msgstr "Immediate ini membutuhkan 0 MOD 8 alignmen"
+
+#: config/tc-i860.c:1213
+msgid "This immediate requires 0 MOD 16 alignment"
+msgstr "Immediate ini membutuhkan 0 MOD 16 alignmen"
+
+#: config/tc-i860.c:1308
+msgid "5-bit immediate too large"
+msgstr "immediate 5-bit terlalu besar"
+
+#: config/tc-i860.c:1311
+msgid "5-bit field must be absolute"
+msgstr "field 5-bit harus absolut"
+
+#: config/tc-i860.c:1356 config/tc-i860.c:1379
+msgid "A branch offset requires 0 MOD 4 alignment"
+msgstr "Sebuah ofset percabangan membutuhkan 0 MOD 4 alignmen"
+
+#: config/tc-i860.c:1400
+#, c-format
+msgid "Unrecognized fix-up (0x%08lx)"
+msgstr "Perbaikan (0x%08lx) tidak dikenal"
+
+#: config/tc-i960.c:486
+#, c-format
+msgid "Hashing returned \"%s\"."
+msgstr "Hasing dikembalikan \"%s\"."
+
+#: config/tc-i960.c:582 config/tc-i960.c:1112
+msgid "expression syntax error"
+msgstr "ekspresi sintaks error"
+
+#: config/tc-i960.c:618
+msgid "attempt to branch into different segment"
+msgstr "mencoba percabangan ke segmen berbeda"
+
+#: config/tc-i960.c:622
+#, c-format
+msgid "target of %s instruction must be a label"
+msgstr "target dari instruksi %s harus berupa sebuah label"
+
+#: config/tc-i960.c:732
+msgid "unaligned register"
+msgstr "register tidak teralign"
+
+#: config/tc-i960.c:754
+msgid "no such sfr in this architecture"
+msgstr "tidak sfr seperti itu dalam arsitektur ini"
+
+#: config/tc-i960.c:792
+msgid "illegal literal"
+msgstr "literal tidak legal"
+
+#: config/tc-i960.c:942
+msgid "invalid index register"
+msgstr "indeks register tidak valid"
+
+#: config/tc-i960.c:965
+msgid "invalid scale factor"
+msgstr "faktor skala tidak valid"
+
+#: config/tc-i960.c:1189
+msgid "architecture of opcode conflicts with that of earlier instruction(s)"
+msgstr "arsitektur dari opkode konflik dengan instruksi sebelumnya"
+
+#: config/tc-i960.c:1423 config/tc-xtensa.c:11446
+msgid "too many operands"
+msgstr "terlalu banyak operan"
+
+#. We never moved: there was no opcode either!
+#: config/tc-i960.c:1471
+msgid "missing opcode"
+msgstr "hilang opkode"
+
+#: config/tc-i960.c:1611
+msgid "branch prediction invalid on this opcode"
+msgstr "ramalan percabangan tidak valid dalam opkode ini"
+
+#: config/tc-i960.c:1649
+#, c-format
+msgid "invalid opcode, \"%s\"."
+msgstr "opkode tidak valid, \"%s\"."
+
+#: config/tc-i960.c:1651
+#, c-format
+msgid "improper number of operands.  expecting %d, got %d"
+msgstr "jumlah dari operan tidak sesuai. Menduga %d, diperoleh %d"
+
+#: config/tc-i960.c:1751
+#, c-format
+msgid "Fixup of %ld too large for field width of %d"
+msgstr "Perbaikan dari %ld terlalu besar untuk lebar field dari %d"
+
+#: config/tc-i960.c:1861
+#, c-format
+msgid "invalid architecture %s"
+msgstr "arsitektur %s tidak valid"
+
+#: config/tc-i960.c:1881
+#, c-format
+msgid "I960 options:\n"
+msgstr "opsi I960:\n"
+
+#: config/tc-i960.c:1884
+#, c-format
+msgid ""
+"\n"
+"\t\t\tspecify variant of 960 architecture\n"
+"-b\t\t\tadd code to collect statistics about branches taken\n"
+"-link-relax\t\tpreserve individual alignment directives so linker\n"
+"\t\t\tcan do relaxing (b.out format only)\n"
+"-no-relax\t\tdon't alter compare-and-branch instructions for\n"
+"\t\t\tlong displacements\n"
+msgstr ""
+"\n"
+"\t\t\tspesifikasikan variasi dari arsitektur 960\n"
+"-b\t\t\ttambahkan kode untuk mengumpulkan statistik tentang percabangan yang diambil\n"
+"-link-relax\t\tjaga alignmen individu direktif sehingga linker\n"
+"\t\t\tdapat melakukan relaxing (hanya untuk format b.out saja)\n"
+"-no-relax\t\tjangan ubah compare-and-branch instruksi untuk\n"
+"\t\t\tlong displacement\n"
+
+#: config/tc-i960.c:2148
+msgid "should have 1 or 2 operands"
+msgstr "seharusnya 1 atau 2 operan"
+
+#: config/tc-i960.c:2156 config/tc-i960.c:2171
+#, c-format
+msgid "Redefining leafproc %s"
+msgstr "Mendefinisikan leafproc %s"
+
+#: config/tc-i960.c:2201
+msgid "should have two operands"
+msgstr "seharusnya dua operan"
+
+#: config/tc-i960.c:2211
+msgid "'entry_num' must be absolute number in [0,31]"
+msgstr "'entry_num' harus berupa nomor absolut dalam [0,31]"
+
+#: config/tc-i960.c:2219
+#, c-format
+msgid "Redefining entrynum for sysproc %s"
+msgstr "Mendefinisikan entrynum untuk sysproc %s"
+
+#. Should not happen: see block comment above.
+#: config/tc-i960.c:2319
+#, c-format
+msgid "Trying to 'bal' to %s"
+msgstr "Mencoba untuk 'bal' ke %s"
+
+#: config/tc-i960.c:2329
+msgid "Looks like a proc, but can't tell what kind.\n"
+msgstr "Seperti sebuah proc, tetapi tidak dapat menceritakan seperti apa.\n"
+
+#: config/tc-i960.c:2348
+msgid "big endian mode is not supported"
+msgstr "mode big endian tidak didukung"
+
+#: config/tc-i960.c:2350
+#, c-format
+msgid "ignoring unrecognized .endian type `%s'"
+msgstr "mengabaikan .endian tipe `%s' tidak dikenal"
+
+#: config/tc-i960.c:2395
+msgid "can't use COBR format with external label"
+msgstr "tidak dapat menggunakan format COBR dengan label eksternal"
+
+#: config/tc-i960.c:2570
+msgid "option --link-relax is only supported in b.out format"
+msgstr "opsi --link-relax hanya didukung dalam format b.out"
+
+#: config/tc-i960.c:2597
+#, c-format
+msgid "No 'bal' entry point for leafproc %s"
+msgstr "Tidak ada titik masukan 'bal' untuk leafproc %s"
+
+#: config/tc-ia64.c:845
+msgid "Bad .section directive: want a,o,s,w,x,M,S,G,T in string"
+msgstr "Direktif .section buruk: diinginkan dalam string a,o,s,w,x,M,S,G,T"
+
+#: config/tc-ia64.c:897
+msgid "Size of frame exceeds maximum of 96 registers"
+msgstr "Ukuran dari frame melebihi maksimal dari 96 register"
+
+#: config/tc-ia64.c:902
+msgid "Size of rotating registers exceeds frame size"
+msgstr "Ukuran dari register yang berotasi melebihi ukuran frame"
+
+#: config/tc-ia64.c:989
+msgid "Unwind directive not followed by an instruction."
+msgstr "Unwind direktif tidak diikuti oleh sebuah instruksi."
+
+#: config/tc-ia64.c:998 config/tc-ia64.c:7380
+msgid "qualifying predicate not followed by instruction"
+msgstr "Mengkualifikasi predikat tidak diikuti oleh instruksi"
+
+#: config/tc-ia64.c:1063 config/tc-ia64.c:1097
+msgid "record type is not valid"
+msgstr "tipe rekaman tidak valid"
+
+#: config/tc-ia64.c:1166
+msgid "Invalid record type for P3 format."
+msgstr "tipe rekaman tidak valid untuk format P3"
+
+#: config/tc-ia64.c:1202
+msgid "Invalid record type for format P6"
+msgstr "Tipe rekaman tidak valid untuk format P6"
+
+#: config/tc-ia64.c:1382 config/tc-ia64.c:1434
+msgid "Invalid record type for format B1"
+msgstr "Tipe rekaman tidak valid untuk format B1"
+
+#: config/tc-ia64.c:1467
+msgid "Invalid record type for format X1"
+msgstr "Tipe rekaman tidak valid untuk format X1"
+
+#: config/tc-ia64.c:1509
+msgid "Invalid record type for format X3"
+msgstr "Tipe rekaman tidak valid untuk format X3"
+
+#: config/tc-ia64.c:1547
+msgid "Previous .save incomplete"
+msgstr "Sebelumnya .save tidak lengkap"
+
+#: config/tc-ia64.c:2372
+msgid "spill_mask record unimplemented."
+msgstr "rekaman spill_mask tidak terimplementasi."
+
+#: config/tc-ia64.c:2429
+msgid "record_type_not_valid"
+msgstr "record_type_not_valid"
+
+#: config/tc-ia64.c:2514
+msgid "Ignoring attempt to spill beyond end of region"
+msgstr "Mengabaikan percobaan untuk spill diluar dari daerah"
+
+#: config/tc-ia64.c:2573
+msgid "Only constant space allocation is supported"
+msgstr "Hanya alokasi konstanta ruang yang didukung"
+
+#: config/tc-ia64.c:2587
+msgid "Only constant offsets are supported"
+msgstr "Hanya konstanta ofset yang didukung"
+
+#: config/tc-ia64.c:2610
+msgid "Section switching in code is not supported."
+msgstr "Perpindahan bagian dalam kode tidak didukung."
+
+#: config/tc-ia64.c:2652
+msgid " Insn slot not set in unwind record."
+msgstr " Insn slot tidak diset dalam rekama unwind."
+
+#: config/tc-ia64.c:2726
+msgid "frgr_mem record before region record!"
+msgstr "frgr_mem record sebelum daerah record!"
+
+#: config/tc-ia64.c:2737
+msgid "fr_mem record before region record!"
+msgstr "fr_mem record sebelum daerah record!"
+
+#: config/tc-ia64.c:2746
+msgid "gr_mem record before region record!"
+msgstr "gr_mem record sebelum region record!"
+
+#: config/tc-ia64.c:2755
+msgid "br_mem record before region record!"
+msgstr "br_mem record sebelum region record!"
+
+#: config/tc-ia64.c:2765
+msgid "gr_gr record before region record!"
+msgstr "gr_gr record sebelum region record!"
+
+#: config/tc-ia64.c:2773
+msgid "br_gr record before region record!"
+msgstr "br_gr record sebelum region record!"
+
+#: config/tc-ia64.c:2891
+#, c-format
+msgid "First operand to .%s must be a predicate"
+msgstr "Operan pertama ke .%s harus berupa sebuah predikat"
+
+#: config/tc-ia64.c:2895
+#, c-format
+msgid "Pointless use of p0 as first operand to .%s"
+msgstr "Tidak berarti menggunakan p0 sebagai operan pertama ke .%s"
+
+#: config/tc-ia64.c:2951
+#, c-format
+msgid "Operand %d to .%s must be a preserved register"
+msgstr "Operan %d ke .%s harus berupa preserved register"
+
+#: config/tc-ia64.c:2987
+#, c-format
+msgid "Operand %d to .%s must be a writable register"
+msgstr "Operan %d ke .%s harus berupa sebuah register dapat ditulis"
+
+#: config/tc-ia64.c:3012
+#, c-format
+msgid "Radix `%s' unsupported or invalid"
+msgstr "Radix `%s' tidak didukung atau tidak valid"
+
+#: config/tc-ia64.c:3042 config/tc-ia64.c:3047
+#, c-format
+msgid ".%s outside of %s"
+msgstr ".%s diluar dari %s"
+
+#: config/tc-ia64.c:3132
+msgid "Tags on unwind pseudo-ops aren't supported, yet"
+msgstr "Tags dalam unwind pseudo-ops belum didukung"
+
+#: config/tc-ia64.c:3154
+msgid "First operand to .fframe must be a constant"
+msgstr "Operan pertama ke .fframe harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:3174
+msgid "First operand to .vframe must be a general register"
+msgstr "Operan pertama ke .vframe harus berupa sebuah register umum"
+
+#: config/tc-ia64.c:3182
+msgid "Operand of .vframe contradicts .prologue"
+msgstr "Operan dari .vframe bertentangan .prologue"
+
+#: config/tc-ia64.c:3192
+msgid ".vframepsp is meaningless, assuming .vframesp was meant"
+msgstr ".vframesp tidak berarti, mengasumsikan .vframesp yang berarti"
+
+#: config/tc-ia64.c:3200
+msgid "Operand to .vframesp must be a constant (sp-relative offset)"
+msgstr "Operan ke .vframesp harus berupa sebuah konstanta (sp-relatif ofset)"
+
+#: config/tc-ia64.c:3227
+msgid "First operand to .save not a register"
+msgstr "Operan pertama ke .save bukan sebuah register"
+
+#: config/tc-ia64.c:3233
+msgid "Second operand to .save not a valid register"
+msgstr "Operan kedua ke .save bukan sebuah register valid"
+
+#: config/tc-ia64.c:3264 config/tc-ia64.c:3275 config/tc-ia64.c:3283
+msgid "Second operand of .save contradicts .prologue"
+msgstr "Operan kedua dari .save bertentangan .prologue"
+
+#: config/tc-ia64.c:3290
+msgid "First operand to .save not a valid register"
+msgstr "Operan pertama ke .save bukan sebuah register valid"
+
+#: config/tc-ia64.c:3308
+msgid "First operand to .restore must be stack pointer (sp)"
+msgstr "Operan pertama ke .restore harus berupa stack pointer (sp)"
+
+#: config/tc-ia64.c:3317
+msgid "Second operand to .restore must be a constant >= 0"
+msgstr "Operan kedua ke .restore harus berupa sebuah konstanta >= 0"
+
+#: config/tc-ia64.c:3327
+#, c-format
+msgid "Epilogue count of %lu exceeds number of nested prologues (%u)"
+msgstr "Epilog terhitung dari %lu melebihi jumlah dari nested prologue (%u)"
+
+#: config/tc-ia64.c:3414
+#, c-format
+msgid "Illegal section name `%s' (causes unwind section name clash)"
+msgstr "Nama bagian `%s' tidak legal (menyebabkan unwind nama daerah clash)"
+
+#: config/tc-ia64.c:3605
+msgid "First operand to .altrp not a valid branch register"
+msgstr "Operan pertama ke .altrp bukan sebuah percabangan yang valid"
+
+#: config/tc-ia64.c:3634
+#, c-format
+msgid "First operand to .%s not a register"
+msgstr "Operan pertama ke .%s bukan sebuah register"
+
+#: config/tc-ia64.c:3639
+#, c-format
+msgid "Second operand to .%s not a constant"
+msgstr "Operan kedua ke .%s bukan sebuah konstanta"
+
+#: config/tc-ia64.c:3706
+#, c-format
+msgid "First operand to .%s not a valid register"
+msgstr "Operan pertama ke .%s bukan sebuah register yang valid"
+
+#: config/tc-ia64.c:3729
+msgid "First operand to .save.g must be a positive 4-bit constant"
+msgstr "Operan pertama ke .save.g harus berupa sebuah konstanta 4-bit"
+
+#: config/tc-ia64.c:3742
+msgid "Second operand to .save.g must be a general register"
+msgstr "Operan kedua ke .save-g harus berupa register umum"
+
+#: config/tc-ia64.c:3747
+#, c-format
+msgid "Second operand to .save.g must be the first of %d general registers"
+msgstr "Operan kedua ke .save.g harus register umum %d pertama"
+
+#: config/tc-ia64.c:3770
+msgid "Operand to .save.f must be a positive 20-bit constant"
+msgstr "Operan ke .save.f harus konstanta positif 20-bit"
+
+#: config/tc-ia64.c:3793
+msgid "First operand to .save.b must be a positive 5-bit constant"
+msgstr "Operan pertama ke .save.b harus berupa konstanta positif 5-bit"
+
+#: config/tc-ia64.c:3806
+msgid "Second operand to .save.b must be a general register"
+msgstr "Operan kedua ke .save.b harus berupa register umum"
+
+#: config/tc-ia64.c:3811
+#, c-format
+msgid "Second operand to .save.b must be the first of %d general registers"
+msgstr "Operan kedua ke .save.b harus register umum %d pertama"
+
+#: config/tc-ia64.c:3837
+msgid "First operand to .save.gf must be a non-negative 4-bit constant"
+msgstr "Operan pertama ke .save.gf harus berupa konstanta tidak negatif 4-bit"
+
+#: config/tc-ia64.c:3845
+msgid "Second operand to .save.gf must be a non-negative 20-bit constant"
+msgstr "Operan kedua ke .save.gf harus berupa sebuah konstanta tidak negatif 20-bit"
+
+#: config/tc-ia64.c:3853
+msgid "Operands to .save.gf may not be both zero"
+msgstr "Operan ke .save.gf tidak boleh keduanya nol"
+
+#: config/tc-ia64.c:3870
+msgid "Operand to .spill must be a constant"
+msgstr "Operan ke .spill harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:3939
+#, c-format
+msgid "Operand %d to .%s must be a constant"
+msgstr "Operan %d ke .%s harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:3960
+#, c-format
+msgid "Missing .label_state %ld"
+msgstr "Hilang .label_state %ld"
+
+#: config/tc-ia64.c:4014
+msgid "Operand to .label_state must be a constant"
+msgstr "Operan ke .label_state harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:4033
+msgid "Operand to .copy_state must be a constant"
+msgstr "Operan ke .copy_state harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:4056
+msgid "First operand to .unwabi must be a constant"
+msgstr "Operan pertama ke .unwabi harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:4062
+msgid "Second operand to .unwabi must be a constant"
+msgstr "Operan kedua ke .unwabi harus berupa sebuah konstanta"
+
+#: config/tc-ia64.c:4097
+msgid "Missing .endp after previous .proc"
+msgstr "Hilang .endp setelah sebelumnya .proc"
+
+#: config/tc-ia64.c:4116
+msgid "Empty argument of .proc"
+msgstr "Hilang argumen dari .proc"
+
+#: config/tc-ia64.c:4121
+#, c-format
+msgid "`%s' was already defined"
+msgstr "`%s' telah terdefinisi"
+
+#: config/tc-ia64.c:4164
+msgid "Initial .body should precede any instructions"
+msgstr "Inisial .body seharusnya mengawali instruksi apapun"
+
+#: config/tc-ia64.c:4183
+msgid ".prologue within prologue"
+msgstr ".prologue didalam prologue"
+
+#: config/tc-ia64.c:4188
+msgid "Initial .prologue should precede any instructions"
+msgstr "Inisial .prologue seharusnya mengawali instruksi apapun"
+
+#: config/tc-ia64.c:4198
+msgid "First operand to .prologue must be a positive 4-bit constant"
+msgstr "Operan pertama ke .prologue harus berupa sebuah konstanta positif 4-bit"
+
+#: config/tc-ia64.c:4200
+msgid "Pointless use of zero first operand to .prologue"
+msgstr "Tidak berarti menggunakan operan pertama nol ke .prologue"
+
+#: config/tc-ia64.c:4214
+msgid "Using a constant as second operand to .prologue is deprecated"
+msgstr "Menggunakan sebuah konstanta sebagai operan kedua ke .prologue adalah kadaluarsa"
+
+#: config/tc-ia64.c:4220
+msgid "Second operand to .prologue must be a general register"
+msgstr "Operan kedua ke .prologue harus berupa sebuah register umum"
+
+#: config/tc-ia64.c:4225
+#, c-format
+msgid "Second operand to .prologue must be the first of %d general registers"
+msgstr "Operan kedua ke .prologue harus register umum pertama dari %d"
+
+#: config/tc-ia64.c:4337
+#, c-format
+msgid "`%s' was not defined within procedure"
+msgstr "'%s' tidak didefinisikan dalam prosedur"
+
+#: config/tc-ia64.c:4375
+msgid "Empty argument of .endp"
+msgstr "Argumen kosong dari .endp"
+
+#: config/tc-ia64.c:4389
+#, c-format
+msgid "`%s' was not specified with previous .proc"
+msgstr "`%s' tidak dispesifikasikan dengan .proc sebelumnya"
+
+#: config/tc-ia64.c:4404
+#, c-format
+msgid "`%s' should be an operand to this .endp"
+msgstr "`%s' seharusnya berupa sebuah operan dalam .endp ini"
+
+#: config/tc-ia64.c:4445 config/tc-ia64.c:4783 config/tc-ia64.c:5090
+msgid "Comma expected"
+msgstr "Diduga sebuah koma"
+
+#: config/tc-ia64.c:4486
+msgid "Expected '['"
+msgstr "Diduga '['"
+
+#: config/tc-ia64.c:4495 config/tc-ia64.c:7515
+msgid "Expected ']'"
+msgstr "Diduga ']'"
+
+#: config/tc-ia64.c:4500
+msgid "Number of elements must be positive"
+msgstr "Jumlah dari elemen harus positif"
+
+#: config/tc-ia64.c:4511
+#, c-format
+msgid "Used more than the declared %d rotating registers"
+msgstr "Menggunakan lebih dari yang dideklarasikan register berotasi %d"
+
+#: config/tc-ia64.c:4519
+msgid "Used more than the available 96 rotating registers"
+msgstr "Menggunakan lebih dari 96 register berotasi yang tersedia"
+
+#: config/tc-ia64.c:4526
+msgid "Used more than the available 48 rotating registers"
+msgstr "Menggunakan lebih dari 48 register berotasi yang tersedia"
+
+#: config/tc-ia64.c:4554
+#, c-format
+msgid "Attempt to redefine register set `%s'"
+msgstr "Mencoba untuk meredefinisi register set `%s'"
+
+#: config/tc-ia64.c:4620
+#, c-format
+msgid "Unknown psr option `%s'"
+msgstr "Opsi psr `%s' tidak dikenal"
+
+#: config/tc-ia64.c:4668
+msgid "Missing section name"
+msgstr "Hilan nama bagian"
+
+#: config/tc-ia64.c:4678
+msgid "Comma expected after section name"
+msgstr "Koma diduga setelah nama bagian"
+
+#: config/tc-ia64.c:4689
+msgid "Creating sections with .xdataN/.xrealN/.xstringZ is deprecated."
+msgstr "Membuat bagian dengan .xdataN/.xrealN/.xstringZ adalah kadaluarsa."
+
+#: config/tc-ia64.c:4778
+msgid "Register name expected"
+msgstr "Nama register diduga"
+
+#: config/tc-ia64.c:4791
+msgid "Register value annotation ignored"
+msgstr "Nilai anotasi register diabaikan"
+
+#: config/tc-ia64.c:4830
+msgid "Directive invalid within a bundle"
+msgstr "Direktif tidak valid dalam sebuah bundle"
+
+#: config/tc-ia64.c:4921
+msgid "Missing predicate relation type"
+msgstr "Hilang tipe relation predikat"
+
+#: config/tc-ia64.c:4927
+msgid "Unrecognized predicate relation type"
+msgstr "Tipe relasi predikat tidak dikenal"
+
+#: config/tc-ia64.c:4973
+msgid "Bad register range"
+msgstr "Jangkauan register buruk"
+
+#: config/tc-ia64.c:4982 config/tc-ia64.c:7460
+msgid "Predicate register expected"
+msgstr "Diduga register predikat"
+
+#: config/tc-ia64.c:4987
+msgid "Duplicate predicate register ignored"
+msgstr "Mengabaikan duplikasi register predikat"
+
+#: config/tc-ia64.c:5003
+msgid "Predicate source and target required"
+msgstr "Predikat sumber dan target dibutuhkan"
+
+#: config/tc-ia64.c:5005 config/tc-ia64.c:5017
+msgid "Use of p0 is not valid in this context"
+msgstr "Penggunaan p0 adalah tidak valid dalam konteks ini"
+
+#: config/tc-ia64.c:5012
+msgid "At least two PR arguments expected"
+msgstr "Paling tidak dua PR argumen diduga"
+
+#: config/tc-ia64.c:5026
+msgid "At least one PR argument expected"
+msgstr "Paling tidak satu PR argumen diduga"
+
+#: config/tc-ia64.c:5061
+#, c-format
+msgid "Inserting \"%s\" into entry hint table failed: %s"
+msgstr "Memasukan \"%s\" kedalam tabel petunjuk gagal: %s"
+
+#. FIXME -- need 62-bit relocation type
+#: config/tc-ia64.c:5529
+msgid "62-bit relocation not yet implemented"
+msgstr "relokasi 62-bit belum diimplementasikan"
+
+#. XXX technically, this is wrong: we should not be issuing warning
+#. messages until we're sure this instruction pattern is going to
+#. be used!
+#: config/tc-ia64.c:5613
+msgid "lower 16 bits of mask ignored"
+msgstr "topeng 16 bit bagian bawah diabaikan"
+
+#: config/tc-ia64.c:5895
+msgid "Expected separator `='"
+msgstr "Diduga pemisah `='"
+
+#: config/tc-ia64.c:5928
+msgid "Duplicate equal sign (=) in instruction"
+msgstr "Duplikasi tanda sama dengan (=) dalam instruksi"
+
+#: config/tc-ia64.c:5935
+#, c-format
+msgid "Illegal operand separator `%c'"
+msgstr "Operan pemisah `%c' tidak legal"
+
+#: config/tc-ia64.c:6049
+#, c-format
+msgid "Operand %u of `%s' should be %s"
+msgstr "Operan %u dari `%s' seharusnya %s"
+
+#: config/tc-ia64.c:6053
+msgid "Wrong number of output operands"
+msgstr "Jumlah salah dari keluaran operan"
+
+#: config/tc-ia64.c:6055
+msgid "Wrong number of input operands"
+msgstr "Jumlah salah dari masukan operan"
+
+#: config/tc-ia64.c:6057
+msgid "Operand mismatch"
+msgstr "Operan tidak cocok"
+
+#: config/tc-ia64.c:6139
+#, c-format
+msgid "Invalid use of `%c%d' as output operand"
+msgstr "Penggunaan `%c%d' tidak valid sebagai operan keluaran"
+
+#: config/tc-ia64.c:6142
+#, c-format
+msgid "Invalid use of `r%d' as base update address operand"
+msgstr "Penggunaan `r%d' tidak valid sebagai dasar alamat update operan"
+
+#: config/tc-ia64.c:6166
+#, c-format
+msgid "Invalid duplicate use of `%c%d'"
+msgstr "Penggunaan ganda dari `%c%d' tidak valid"
+
+#: config/tc-ia64.c:6173
+#, c-format
+msgid "Invalid simultaneous use of `f%d' and `f%d'"
+msgstr "Penggunaan bersamaan `f%d' dan `f%d' tidak valid"
+
+#: config/tc-ia64.c:6179
+#, c-format
+msgid "Dangerous simultaneous use of `f%d' and `f%d'"
+msgstr "Penggunaan ganda `f%d' dan `f%d' berbahaya"
+
+#: config/tc-ia64.c:6223
+msgid "Value truncated to 62 bits"
+msgstr "Nilai dipotong ke 62 bits"
+
+#: config/tc-ia64.c:6286
+#, c-format
+msgid "Bad operand value: %s"
+msgstr "Nilai operan buruk: %s"
+
+#. Give an error if a frag containing code is not aligned to a 16 byte
+#. boundary.
+#: config/tc-ia64.c:6361 config/tc-ia64.h:170
+msgid "instruction address is not a multiple of 16"
+msgstr "alamat instruksi tidak dalam kelipatan dari 16"
+
+#: config/tc-ia64.c:6429
+#, c-format
+msgid "`%s' must be last in bundle"
+msgstr "`%s' harus akhir dari bundle"
+
+#: config/tc-ia64.c:6461
+#, c-format
+msgid "Internal error: don't know how to force %s to end of instruction group"
+msgstr "Internal error: tidak tahu bagaimana memaksa %s ke akhir dari grup instruksi"
+
+#: config/tc-ia64.c:6474
+#, c-format
+msgid "`%s' must be last in instruction group"
+msgstr "`%s' harus akhir dari grup instruksi"
+
+#: config/tc-ia64.c:6504
+msgid "Label must be first in a bundle"
+msgstr "Label harus pertama dalam sebuah bundle"
+
+#: config/tc-ia64.c:6581
+msgid "hint in B unit may be treated as nop"
+msgstr "petunjuk dalam unit B mungkin diperlakukan sebagai nop"
+
+#: config/tc-ia64.c:6592
+msgid "hint in B unit can't be used"
+msgstr "petunjuk dalam unit B tidak dapat digunakan"
+
+#: config/tc-ia64.c:6606
+msgid "emit_one_bundle: unexpected dynamic op"
+msgstr "emit_one_bundle: diduga op dinamis"
+
+#: config/tc-ia64.c:6729
+#, c-format
+msgid "`%s' does not fit into %s template"
+msgstr "`%s' tidak cocok kedalam template %s"
+
+#: config/tc-ia64.c:6744
+#, c-format
+msgid "`%s' does not fit into bundle"
+msgstr "`%s' tidak cocok kedalam bundle"
+
+#: config/tc-ia64.c:6756
+#, c-format
+msgid "`%s' can't go in %s of %s template"
+msgstr "`%s' tidak dapat pergi kedalam %s dari %s template"
+
+#: config/tc-ia64.c:6762
+msgid "Missing '}' at end of file"
+msgstr "Hilang '}' diakhir dari berkas"
+
+#: config/tc-ia64.c:6909
+#, c-format
+msgid "Unrecognized option '-x%s'"
+msgstr "Opsi '-x%s' tidak dikenal"
+
+#: config/tc-ia64.c:6936
+msgid ""
+"IA-64 options:\n"
+"  --mconstant-gp\t  mark output file as using the constant-GP model\n"
+"\t\t\t  (sets ELF header flag EF_IA_64_CONS_GP)\n"
+"  --mauto-pic\t\t  mark output file as using the constant-GP model\n"
+"\t\t\t  without function descriptors (sets ELF header flag\n"
+"\t\t\t  EF_IA_64_NOFUNCDESC_CONS_GP)\n"
+"  -milp32|-milp64|-mlp64|-mp64\tselect data model (default -mlp64)\n"
+"  -mle | -mbe\t\t  select little- or big-endian byte order (default -mle)\n"
+"  -mtune=[itanium1|itanium2]\n"
+"\t\t\t  tune for a specific CPU (default -mtune=itanium2)\n"
+"  -munwind-check=[warning|error]\n"
+"\t\t\t  unwind directive check (default -munwind-check=warning)\n"
+"  -mhint.b=[ok|warning|error]\n"
+"\t\t\t  hint.b check (default -mhint.b=error)\n"
+"  -x | -xexplicit\t  turn on dependency violation checking\n"
+"  -xauto\t\t  automagically remove dependency violations (default)\n"
+"  -xnone\t\t  turn off dependency violation checking\n"
+"  -xdebug\t\t  debug dependency violation checker\n"
+"  -xdebugn\t\t  debug dependency violation checker but turn off\n"
+"\t\t\t  dependency violation checking\n"
+"  -xdebugx\t\t  debug dependency violation checker and turn on\n"
+"\t\t\t  dependency violation checking\n"
+msgstr ""
+"Opsi IA-64:\n"
+"  --mconstant-gp\t   tandai keluaran berkas menggunakan model konstanta-GP\n"
+"\t\t\t  (sets tanda header ELF EF_IA_64_CONS_GP)\n"
+"  --mauto-pic\t\t  tandai keluaran dari berkas dengan menggunakan model konstanta-GG\n"
+"\t\t\t  tanpa deskripsi fungsi (set tanda ELF header\n"
+"\t\t\t  EF_IA_64_NOFUNCDESC_CONS_GP)\n"
+"  -milp32|-milp64|-mlp64|-mp64\t pilih model data (baku -mlp64)\n"
+"  -mle | -mbe\t\t   pilih little- atau big-endian pengurutan byte (baku -mle)\n"
+"  -mtune=[itanium1|itanium2]\n"
+"\t\t\t  tune ke CPU spesifik (baku -mtune=itanium2)\n"
+"  -munwind-check=[warning|error]\n"
+"\t\t\t unwind direktif pemeriksaan (baku -munwind-check=warning)\n"
+"  -mhint.b=[ok|warning|error]\n"
+"\t\t\t  hint.b check (baku -mhint.b=error)\n"
+"  -x | -xexplicit\t  aktifkan pemeriksaan pelanggaran dependensi\n"
+"  -xauto\t\t  automagically hapus pelanggaran dependensi (baku)\n"
+"  -xnone\t\t  non-aktifkan pemeriksaan pelanggaran dependensi\n"
+"  -xdebug\t\t debug pemeriksaan pelanggaran dependensi\n"
+"  -xdebugn\t\t debug pemeriksa pelanggaran dependensi tetapi non-aktifkan\n"
+"\t\t\t  pemeriksaan pelanggaran dependensi\n"
+"  -xdebugx\t\t debug pemeriksa pelanggaran dependensi dan non-aktifkan\n"
+"\t\t\t pemeriksaan pelanggaran dependensi\n"
+
+#: config/tc-ia64.c:6966
+msgid "--gstabs is not supported for ia64"
+msgstr "--gstabs tidak didukung untuk ia64"
+
+#: config/tc-ia64.c:7198
+#, c-format
+msgid "ia64.md_begin: can't hash `%s': %s"
+msgstr "ia64.md_begin: tidak dapat hash `%s':%s"
+
+#: config/tc-ia64.c:7259
+#, c-format
+msgid "Inserting \"%s\" into constant hash table failed: %s"
+msgstr "Memasukan \"%s\" kedalam tabel konstanta hash gagal: %s"
+
+#: config/tc-ia64.c:7271 config/tc-mips.c:1880
+msgid "Could not set architecture and machine"
+msgstr "Tidak dapat menset arsitektur dan mesin"
+
+#: config/tc-ia64.c:7395
+msgid "Explicit stops are ignored in auto mode"
+msgstr "Eksplisi stops diabaikan dalam mode auto"
+
+#: config/tc-ia64.c:7404
+msgid "Found '{' when manual bundling is already turned on"
+msgstr "Ditemukan '{' ketika bundling manual telah diaktifkan"
+
+#: config/tc-ia64.c:7417
+msgid "Found '{' after explicit switch to automatic mode"
+msgstr "Ditemukan '{' setelah pengubahan eksplisit ke mode otomatis"
+
+#: config/tc-ia64.c:7423
+msgid "Found '}' when manual bundling is off"
+msgstr "Ditemukan '}' ketika bundling manual tidak aktif"
+
+#: config/tc-ia64.c:7450
+msgid "Expected ')'"
+msgstr "Diduga ')'"
+
+#: config/tc-ia64.c:7455
+msgid "Qualifying predicate expected"
+msgstr "Mengkualifikasi predikat diduga"
+
+#: config/tc-ia64.c:7474
+msgid "Tag must come before qualifying predicate."
+msgstr "Tag harus datang sebelum qualifikasi predikat."
+
+#: config/tc-ia64.c:7504
+msgid "Expected ':'"
+msgstr "Diduga ':'"
+
+#: config/tc-ia64.c:7520
+msgid "Tag name expected"
+msgstr "Nama tag diduga"
+
+#: config/tc-ia64.c:7622
+msgid "Rotating register index must be a non-negative constant"
+msgstr "Indeks register retasi harus berupa sebuah konstanta tidak negatif"
+
+#: config/tc-ia64.c:7627
+#, c-format
+msgid "Index out of range 0..%u"
+msgstr "Indeks diluar dari jangkauan 0..%u"
+
+#: config/tc-ia64.c:7639
+msgid "Indirect register index must be a general register"
+msgstr "Indeks register tidak langsung harus berupa sebuah register umum"
+
+#: config/tc-ia64.c:7648
+msgid "Index can only be applied to rotating or indirect registers"
+msgstr "Indeks hanya dapat diaplikasikan ke rotasi atau register tidak langsung"
+
+#: config/tc-ia64.c:7684
+msgid "Expected '('"
+msgstr "Diduga '('"
+
+#: config/tc-ia64.c:7692
+msgid "Missing ')'"
+msgstr "Hilang ')'"
+
+#: config/tc-ia64.c:7701
+msgid "Not a symbolic expression"
+msgstr "Bukan sebuah ekspresi simbolik"
+
+#: config/tc-ia64.c:7706 config/tc-ia64.c:7720
+msgid "Illegal combination of relocation functions"
+msgstr "Kombinasi tidak legal dari fungsi relokasi"
+
+#: config/tc-ia64.c:7809
+msgid "No current frame"
+msgstr "Bukan frame sekarang"
+
+#: config/tc-ia64.c:7811
+#, c-format
+msgid "Register number out of range 0..%u"
+msgstr "Nomor register diluar dari jangkauan 0..%u"
+
+#: config/tc-ia64.c:7849
+msgid "Standalone `#' is illegal"
+msgstr "Standalone `#' adalah tidak legal"
+
+#: config/tc-ia64.c:7852
+msgid "Redundant `#' suffix operators"
+msgstr "Redundansi akihran operator `#'"
+
+#: config/tc-ia64.c:8010
+#, c-format
+msgid "Unhandled dependency %s for %s (%s), note %d"
+msgstr "Dependensi %s tidak ditangani untuk %s (%s), catat %d"
+
+#: config/tc-ia64.c:9305
+#, c-format
+msgid "Unrecognized dependency specifier %d\n"
+msgstr "Spesifikasi %d dependensi tidak dikenal\n"
+
+#: config/tc-ia64.c:10181
+msgid "Only the first path encountering the conflict is reported"
+msgstr "Hanya jika ditemukan konflik jalur pertama yang dilaporkan"
+
+#: config/tc-ia64.c:10183
+msgid "This is the location of the conflicting usage"
+msgstr "Ini adalah lokasi dimana terjadi konflik penggunaan"
+
+#: config/tc-ia64.c:10444
+#, c-format
+msgid "Unknown opcode `%s'"
+msgstr "Opkode `%s' tidak dikenal"
+
+#: config/tc-ia64.c:10522
+#, c-format
+msgid "AR %d can only be accessed by %c-unit"
+msgstr "AR %d hanya dapat diakses dengan %c-unit"
+
+#: config/tc-ia64.c:10534
+msgid "hint.b may be treated as nop"
+msgstr "hint.b boleh diperlakukan sebagai nop"
+
+#: config/tc-ia64.c:10537
+msgid "hint.b shouldn't be used"
+msgstr "hint.b seharusnya tidak digunakan"
+
+#: config/tc-ia64.c:10576
+#, c-format
+msgid "`%s' cannot be predicated"
+msgstr "`%s' tidak dapat dipredikat"
+
+#: config/tc-ia64.c:10648
+msgid "Closing bracket missing"
+msgstr "Hilang Kurung penutup"
+
+#: config/tc-ia64.c:10657
+msgid "Index must be a general register"
+msgstr "Indeks harus berupa sebuah register umum"
+
+#: config/tc-ia64.c:10822
+#, c-format
+msgid "Unsupported fixup size %d"
+msgstr "Ukuran perbaikan fixup %d tidak didukung"
+
+#. This should be an error, but since previously there wasn't any
+#. diagnostic here, don't make it fail because of this for now.
+#: config/tc-ia64.c:11089
+#, c-format
+msgid "Cannot express %s%d%s relocation"
+msgstr "Tidak dapat mengekspresikan relokasi %s%d%s"
+
+#: config/tc-ia64.c:11108
+msgid "No addend allowed in @fptr() relocation"
+msgstr "Addend tidak diperbolehkan dalam relokasi @fptr()"
+
+#: config/tc-ia64.c:11214
+#, c-format
+msgid "%s must have a constant value"
+msgstr "%s harus memiliki sebuah nilai konstan"
+
+#: config/tc-ia64.c:11268
+#, c-format
+msgid "Cannot represent %s relocation in object file"
+msgstr "Tidak dapat direpresentasikan relokasi %s dalam berkas objek"
+
+#: config/tc-ia64.c:11379
+msgid "Can't add stop bit to mark end of instruction group"
+msgstr "Tidak dapat menambahkan bit henti untuk menandai akhir dari grup instruksi"
+
+#: config/tc-ia64.c:11479 config/tc-score.c:6328 read.c:1447 read.c:2418
+#: read.c:3052 read.c:3385 read.c:3429
+msgid "expected symbol name"
+msgstr "diduga nama simbol"
+
+#: config/tc-ia64.c:11489 read.c:2428 read.c:3062 read.c:3413 stabs.c:468
+#, c-format
+msgid "expected comma after \"%s\""
+msgstr "diduga koma sesudah \"%s\""
+
+#: config/tc-ia64.c:11531
+#, c-format
+msgid "`%s' is already the alias of %s `%s'"
+msgstr "`%s' telah menjadi alias dari %s `%s'"
+
+#: config/tc-ia64.c:11541
+#, c-format
+msgid "%s `%s' already has an alias `%s'"
+msgstr "%s `%s' telah menjadi alias `%s'"
+
+#: config/tc-ia64.c:11552
+#, c-format
+msgid "inserting \"%s\" into %s alias hash table failed: %s"
+msgstr "memasukan \"%s\" kedalam tabel hash alias %s gagal: %s"
+
+#: config/tc-ia64.c:11560
+#, c-format
+msgid "inserting \"%s\" into %s name hash table failed: %s"
+msgstr "memasukan \"%s\" kedalam tabel hash nama %s gagal: %s"
+
+#: config/tc-ia64.c:11579
+#, c-format
+msgid "symbol `%s' aliased to `%s' is not used"
+msgstr "simbol `%s' dialiaskan ke `%s' tidak digunakan"
+
+#: config/tc-ia64.c:11601
+#, c-format
+msgid "section `%s' aliased to `%s' is not used"
+msgstr "bagian `%s' dialiakan ke `%s' tidak digunakan"
+
+#: config/tc-ip2k.c:158
+#, c-format
+msgid "IP2K specific command line options:\n"
+msgstr "opsi spesifik baris perintah IP2K:\n"
+
+#: config/tc-ip2k.c:159
+#, c-format
+msgid "  -mip2022               restrict to IP2022 insns \n"
+msgstr "  -mip2022               batasi ke insns IP2022 \n"
+
+#: config/tc-ip2k.c:160
+#, c-format
+msgid "  -mip2022ext            permit extended IP2022 insn\n"
+msgstr "  -mip2022ext             ijinkan ekstended insn IP2022\n"
+
+#: config/tc-iq2000.c:364
+#, c-format
+msgid "the yielding instruction %s may not be in a delay slot."
+msgstr "instruksi yang menghasilkan %s mungkin tidak dalam sebuah slot tertunda."
+
+#: config/tc-iq2000.c:372
+#, c-format
+msgid "Register number (R%ld) for double word access must be even."
+msgstr "Nomor register (R%ld) untuk akses kata ganda harus genap."
+
+#: config/tc-iq2000.c:381 config/tc-iq2000.c:386 config/tc-iq2000.c:391
+#: config/tc-iq2000.c:408 config/tc-mt.c:244 config/tc-mt.c:249
+#, c-format
+msgid "operand references R%ld of previous load."
+msgstr "referensi operan R%ld dari load sebelumnya."
+
+#: config/tc-iq2000.c:396
+msgid "instruction implicitly accesses R31 of previous load."
+msgstr "instruksi mengimplikasikan akses R31 dari load sebelumnya."
+
+#: config/tc-iq2000.c:651 config/tc-mep.c:1647
+msgid "Unmatched high relocation"
+msgstr "relokasi tinggi tidak cocok"
+
+#: config/tc-iq2000.c:829 config/tc-mips.c:14828 config/tc-score.c:6035
+msgid ".end not in text section"
+msgstr ".end tidak dalam daerah text"
+
+#: config/tc-iq2000.c:833 config/tc-mips.c:14832 config/tc-score.c:6038
+msgid ".end directive without a preceding .ent directive."
+msgstr ".end direktif tanpa sebuah awalan .ent direktif."
+
+#: config/tc-iq2000.c:842 config/tc-mips.c:14841 config/tc-score.c:6046
+msgid ".end symbol does not match .ent symbol."
+msgstr ".end simbol tidak cocok .ent simbol."
+
+#: config/tc-iq2000.c:845 config/tc-mips.c:14848 config/tc-score.c:6051
+msgid ".end directive missing or unknown symbol"
+msgstr ".end direktif hilang atau simbol tidak diketahui"
+
+#: config/tc-iq2000.c:863
+msgid "Expected simple number."
+msgstr "Diduga nomor simple."
+
+#: config/tc-iq2000.c:892 config/tc-mips.c:14753 config/tc-score.c:5885
+#, c-format
+msgid " *input_line_pointer == '%c' 0x%02x\n"
+msgstr " *input_line_pointer == '%c' 0x%02x\n"
+
+#: config/tc-iq2000.c:894
+msgid "Invalid number"
+msgstr "Nomor tidak valid"
+
+#: config/tc-iq2000.c:929 config/tc-mips.c:14923 config/tc-score.c:5924
+msgid ".ent or .aent not in text section."
+msgstr ".ent atau .aent tidak dalam daerah text."
+
+#: config/tc-iq2000.c:932
+msgid "missing `.end'"
+msgstr "hilang `.end'"
+
+#: config/tc-m32c.c:143
+#, c-format
+msgid " M32C specific command line options:\n"
+msgstr " M32C spesifik opsi baris perintah:\n"
+
+#. Pretend that we do not recognise this option.
+#: config/tc-m32r.c:331
+msgid "Unrecognised option: -hidden"
+msgstr "Opsi tidak diketanl: -hidden"
+
+#: config/tc-m32r.c:358 config/tc-sparc.c:579
+msgid "Unrecognized option following -K"
+msgstr "Opsi berikut -K tidak dikenal"
+
+#: config/tc-m32r.c:373
+#, c-format
+msgid " M32R specific command line options:\n"
+msgstr " Opsi spesifik M32R baris perintah:\n"
+
+#: config/tc-m32r.c:375
+#, c-format
+msgid "  -m32r                   disable support for the m32rx instruction set\n"
+msgstr "  -m32r                   non-aktifkan dukungan untuk set instruksi m32rx\n"
+
+#: config/tc-m32r.c:377
+#, c-format
+msgid "  -m32rx                  support the extended m32rx instruction set\n"
+msgstr "  -m32rx                  dukung set instruksi ekstensi m32rx\n"
+
+#: config/tc-m32r.c:379
+#, c-format
+msgid "  -m32r2                  support the extended m32r2 instruction set\n"
+msgstr "  -m32r2                  dukung set instruksi ekstensi m32r2\n"
+
+#: config/tc-m32r.c:381
+#, c-format
+msgid "  -EL,-little             produce little endian code and data\n"
+msgstr "  -EL,-little             menghasilkan kode dan data little endian\n"
+
+#: config/tc-m32r.c:383
+#, c-format
+msgid "  -EB,-big                produce big endian code and data\n"
+msgstr "  -EB,-big                menhasilkan kode dan data big endian\n"
+
+#: config/tc-m32r.c:385
+#, c-format
+msgid "  -parallel               try to combine instructions in parallel\n"
+msgstr "  -parallel                mencoba mengkombinasikan instruksi dalam paralel\n"
+
+#: config/tc-m32r.c:387
+#, c-format
+msgid "  -no-parallel            disable -parallel\n"
+msgstr "  -no-parallel            non-aktifkan -parallel\n"
+
+#: config/tc-m32r.c:389
+#, c-format
+msgid "  -no-bitinst             disallow the M32R2's extended bit-field instructions\n"
+msgstr "  -no-bitinst             larang ekstensi bit-bielf instruksi M32R2\n"
+
+#: config/tc-m32r.c:391
+#, c-format
+msgid "  -O                      try to optimize code.  Implies -parallel\n"
+msgstr "  -O                      mencoba untuk mengoptimasi kode. Mengimplikasikan -parallel\n"
+
+#: config/tc-m32r.c:394
+#, c-format
+msgid "  -warn-explicit-parallel-conflicts     warn when parallel instructions\n"
+msgstr "  -warn-explicit-parallel-conflicts     peringatkan ketika instruksi paralel\n"
+
+#: config/tc-m32r.c:396
+#, c-format
+msgid "                                         might violate contraints\n"
+msgstr "                                         mungkin melanggar konstrain\n"
+
+#: config/tc-m32r.c:398
+#, c-format
+msgid "  -no-warn-explicit-parallel-conflicts  do not warn when parallel\n"
+msgstr "  -no-warn-explicit-parallel-conflicts  jangan peringatkan ketika paralel\n"
+
+#: config/tc-m32r.c:400
+#, c-format
+msgid "                                         instructions might violate contraints\n"
+msgstr "                                         instruksi mungkin melanggar konstrain\n"
+
+#: config/tc-m32r.c:402
+#, c-format
+msgid "  -Wp                     synonym for -warn-explicit-parallel-conflicts\n"
+msgstr "  -Wp                     sinonim untuk -warn-explicit-parallel-conflicts\n"
+
+#: config/tc-m32r.c:404
+#, c-format
+msgid "  -Wnp                    synonym for -no-warn-explicit-parallel-conflicts\n"
+msgstr "  -Wnp                    sinonim untuk -no-warn-explicit-parallel-conflicts\n"
+
+#: config/tc-m32r.c:406
+#, c-format
+msgid "  -ignore-parallel-conflicts            do not check parallel instructions\n"
+msgstr "  -ignore-parallel-conflicts            jangan periksa instruksi paralel\n"
+
+#: config/tc-m32r.c:408
+#, c-format
+msgid "                                         fo contraint violations\n"
+msgstr "                                        pelanggaran konstrain fo\n"
+
+#: config/tc-m32r.c:410
+#, c-format
+msgid "  -no-ignore-parallel-conflicts         check parallel instructions for\n"
+msgstr "  -no-ignore-parallel-conflicts         periksa instruksi paralel untuk\n"
+
+#: config/tc-m32r.c:412
+#, c-format
+msgid "                                         contraint violations\n"
+msgstr "                                        pelanggaran konstrain\n"
+
+#: config/tc-m32r.c:414
+#, c-format
+msgid "  -Ip                     synonym for -ignore-parallel-conflicts\n"
+msgstr "  -Ip                     sinonim untuk -ignore-parallel-conflicts\n"
+
+#: config/tc-m32r.c:416
+#, c-format
+msgid "  -nIp                    synonym for -no-ignore-parallel-conflicts\n"
+msgstr "  -nIp                    sinonim untuk -no-ignore-parallel-conflicts\n"
+
+#: config/tc-m32r.c:419
+#, c-format
+msgid "  -warn-unmatched-high    warn when an (s)high reloc has no matching low reloc\n"
+msgstr "  -warn-unmatched-high    peringatkan ketika sebuah relokasi tinggi tidak memiliki pasangan relokasi rendah\n"
+
+#: config/tc-m32r.c:421
+#, c-format
+msgid "  -no-warn-unmatched-high do not warn about missing low relocs\n"
+msgstr "  -no-warn-unmatched-high jangan peringatkan mengenai hilangnya relokasi bawah\n"
+
+#: config/tc-m32r.c:423
+#, c-format
+msgid "  -Wuh                    synonym for -warn-unmatched-high\n"
+msgstr "  -Wuh                    sinonim untuk -warn-unmatched-high\n"
+
+#: config/tc-m32r.c:425
+#, c-format
+msgid "  -Wnuh                   synonym for -no-warn-unmatched-high\n"
+msgstr "  -Wnuh                   sinonim untuk -no-warn-unmatched-high\n"
+
+#: config/tc-m32r.c:428
+#, c-format
+msgid "  -KPIC                   generate PIC\n"
+msgstr "  -KPIC                   menghasilkan PIC\n"
+
+#: config/tc-m32r.c:850
+msgid "instructions write to the same destination register."
+msgstr "instruksi write ke register tujuan yang sama."
+
+#: config/tc-m32r.c:858
+msgid "Instructions do not use parallel execution pipelines."
+msgstr "Instruksi jangan menggunakan eksekusi paralel pipelines."
+
+#: config/tc-m32r.c:866
+msgid "Instructions share the same execution pipeline"
+msgstr "Instruksi membagi eksekusi pipeline yang sama"
+
+#: config/tc-m32r.c:931 config/tc-m32r.c:1045
+#, c-format
+msgid "not a 16 bit instruction '%s'"
+msgstr "bukan sebuah instruksi 16 bit '%s'"
+
+#: config/tc-m32r.c:943 config/tc-m32r.c:1057 config/tc-m32r.c:1241
+#, c-format
+msgid "instruction '%s' is for the M32R2 only"
+msgstr "instruksi '%s' hanya untuk M32R2"
+
+#: config/tc-m32r.c:956 config/tc-m32r.c:1070 config/tc-m32r.c:1254
+#, c-format
+msgid "unknown instruction '%s'"
+msgstr "instruksi tidak dikenal '%s'"
+
+#: config/tc-m32r.c:965 config/tc-m32r.c:1077 config/tc-m32r.c:1261
+#, c-format
+msgid "instruction '%s' is for the M32RX only"
+msgstr "instruksi '%s' hanya untuk M32RX"
+
+#: config/tc-m32r.c:974 config/tc-m32r.c:1086
+#, c-format
+msgid "instruction '%s' cannot be executed in parallel."
+msgstr "instruksi '%s' tidak dapat dijalankan dalam paralel."
+
+#: config/tc-m32r.c:1029 config/tc-m32r.c:1111 config/tc-m32r.c:1318
+msgid "internal error: lookup/get operands failed"
+msgstr "internal error: lookup/get operan gagal"
+
+#: config/tc-m32r.c:1096
+#, c-format
+msgid "'%s': only the NOP instruction can be issued in parallel on the m32r"
+msgstr "%s': hanya instruksi NOP dapat diisukan dalam paralel di m32r"
+
+#: config/tc-m32r.c:1125
+#, c-format
+msgid "%s: output of 1st instruction is the same as an input to 2nd instruction - is this intentional ?"
+msgstr "%s: keluaran dari instruksi 1st adalah sama seperti masukan ke 2nd instruksi - apakah ini sengaja ?"
+
+#: config/tc-m32r.c:1129
+#, c-format
+msgid "%s: output of 2nd instruction is the same as an input to 1st instruction - is this intentional ?"
+msgstr "%s: keluaran dari instruksi kedua adalah sama dengan masukan dari instruksi pertama - apakah ini sengaja ?"
+
+#: config/tc-m32r.c:1493 config/tc-ppc.c:1940 config/tc-ppc.c:4496
+msgid "Expected comma after symbol-name: rest of line ignored."
+msgstr "Diduga koma sesudah nama-simbol: sisa dari baris diabaikan."
+
+#: config/tc-m32r.c:1503
+#, c-format
+msgid ".SCOMMon length (%ld.) <0! Ignored."
+msgstr "panjang .SCOMMon (%ld.) <0! diabaikan."
+
+#: config/tc-m32r.c:1517 config/tc-ppc.c:1962 config/tc-ppc.c:3116
+#: config/tc-ppc.c:4520
+msgid "ignoring bad alignment"
+msgstr "mengabaikan alignmen buruk"
+
+#: config/tc-m32r.c:1529 config/tc-ppc.c:1999 config/tc-v850.c:322
+msgid "Common alignment not a power of 2"
+msgstr "Alignmen umum bukan kelipatan dari 2"
+
+#: config/tc-m32r.c:1544 config/tc-ppc.c:1973 config/tc-ppc.c:4532
+#, c-format
+msgid "Ignoring attempt to re-define symbol `%s'."
+msgstr "Mengabaikan percobaan untuk meredefinisi simbol `%s'."
+
+#: config/tc-m32r.c:1553
+#, c-format
+msgid "Length of .scomm \"%s\" is already %ld. Not changed to %ld."
+msgstr "Panjang dari .scomm \"%s\" telah %ld. Tidak merubah ke %ld."
+
+#: config/tc-m32r.c:1789
+msgid "Addend to unresolved symbol not on word boundary."
+msgstr "Added ke simbol tidak teresolf tidak dalam batas kata."
+
+#: config/tc-m32r.c:1930 config/tc-m32r.c:1983 config/tc-sh.c:747
+msgid "Invalid PIC expression."
+msgstr "Ekspresi PIC tidak valid."
+
+#: config/tc-m32r.c:2074
+msgid "Unmatched high/shigh reloc"
+msgstr "Relokasi high/shigh tidak cocok"
+
+#: config/tc-m68hc11.c:371
+#, c-format
+msgid ""
+"Motorola 68HC11/68HC12/68HCS12 options:\n"
+"  -m68hc11 | -m68hc12 |\n"
+"  -m68hcs12               specify the processor [default %s]\n"
+"  -mshort                 use 16-bit int ABI (default)\n"
+"  -mlong                  use 32-bit int ABI\n"
+"  -mshort-double          use 32-bit double ABI\n"
+"  -mlong-double           use 64-bit double ABI (default)\n"
+"  --force-long-branches   always turn relative branches into absolute ones\n"
+"  -S,--short-branches     do not turn relative branches into absolute ones\n"
+"                          when the offset is out of range\n"
+"  --strict-direct-mode    do not turn the direct mode into extended mode\n"
+"                          when the instruction does not support direct mode\n"
+"  --print-insn-syntax     print the syntax of instruction in case of error\n"
+"  --print-opcodes         print the list of instructions with syntax\n"
+"  --generate-example      generate an example of each instruction\n"
+"                          (used for testing)\n"
+msgstr ""
+"Motorola 68HC11/68HC12/68HCS12 opsi:\n"
+"  -m68hc11 | -m68hc12 |\n"
+"  -m68hcs12               spesifikasikan prosesor [baku %s]\n"
+"  -mshort                 gunakan 16-bit int ABI (baku)\n"
+"  -mlong                  gunakan 32-bit int ABI\n"
+"  -mshort-double          gunakan 32-bit double ABI\n"
+"  -mlong-double           gunakan 64-bit double ABI (baku)\n"
+"  --force-long-branches   selalu ubah percabangan relatif kedalam absolut\n"
+"  -S,--short-branches     jangan ubah percabangan relatif kedalam absolut\n"
+"                          ketika ofset diluar dari jangkauan\n"
+"  --strict-direct-mode    jangan ubah mode langsung kedalam mode ekstensi\n"
+"                          ketika instruksi tidak mendukung mode langsung\n"
+"  --print-insn-syntax     tampilkan syntax dari instruksi jika terjadi error\n"
+"  --print-opcodes         tampilkan daftar dari instruksi dengan syntax\n"
+"  --generate-example      buat sebuah contoh dari setiap instruksi\n"
+"                          (digunakan untuk pengetesan)\n"
+
+#: config/tc-m68hc11.c:417
+#, c-format
+msgid "Default target `%s' is not supported."
+msgstr "Target baku `%s' tidak didukung."
+
+#. Dump the opcode statistics table.
+#: config/tc-m68hc11.c:435
+#, c-format
+msgid "Name   # Modes  Min ops  Max ops  Modes mask  # Used\n"
+msgstr "Nama   # Mode   Min ops  Maks ops Mode  mask  # Digunakan\n"
+
+#: config/tc-m68hc11.c:501
+#, c-format
+msgid "Option `%s' is not recognized."
+msgstr "Opsi `%s' tidak dikenal."
+
+#: config/tc-m68hc11.c:671
+msgid "#<imm8>"
+msgstr "#<imm8>"
+
+#: config/tc-m68hc11.c:680
+msgid "#<imm16>"
+msgstr "#<imm16>"
+
+#: config/tc-m68hc11.c:689 config/tc-m68hc11.c:698
+msgid "<imm8>,X"
+msgstr "<imm8>,X"
+
+#: config/tc-m68hc11.c:725
+msgid "*<abs8>"
+msgstr "*<abs8>"
+
+#: config/tc-m68hc11.c:737
+msgid "#<mask>"
+msgstr "#<mask>"
+
+#: config/tc-m68hc11.c:747
+#, c-format
+msgid "symbol%d"
+msgstr "simbol%d"
+
+#: config/tc-m68hc11.c:749
+msgid "<abs>"
+msgstr "<abs>"
+
+#: config/tc-m68hc11.c:768
+msgid "<label>"
+msgstr "<label>"
+
+#: config/tc-m68hc11.c:784
+#, c-format
+msgid ""
+"# Example of `%s' instructions\n"
+"\t.sect .text\n"
+"_start:\n"
+msgstr ""
+"# Contoh dari instruksi `%s'\n"
+"\t.sect .text\n"
+"_start:\n"
+
+#: config/tc-m68hc11.c:831
+#, c-format
+msgid "Instruction `%s' is not recognized."
+msgstr "Instruksi `%s' tidak dikenal."
+
+#: config/tc-m68hc11.c:836
+#, c-format
+msgid "Instruction formats for `%s':"
+msgstr "Format instruksi untuk `%s':"
+
+#: config/tc-m68hc11.c:966
+#, c-format
+msgid "Immediate operand is not allowed for operand %d."
+msgstr "Operan langsung tidak diperbolehkan untuk operan %d."
+
+#: config/tc-m68hc11.c:1010
+msgid "Indirect indexed addressing is not valid for 68HC11."
+msgstr "Pengalamatan indeks tidak langsung tidak valid untuk 68HC11."
+
+#: config/tc-m68hc11.c:1030
+msgid "Spurious `,' or bad indirect register addressing mode."
+msgstr "Spurious `,' atau mode pengalamatan register tidak langsung."
+
+#: config/tc-m68hc11.c:1052
+msgid "Missing second register or offset for indexed-indirect mode."
+msgstr "Hilang register kedua atau ofset untuk mode indeksing tidak langsung."
+
+#: config/tc-m68hc11.c:1062
+msgid "Missing second register for indexed-indirect mode."
+msgstr "Hilang register kedua untuk mode indeksing tidak langsung."
+
+#: config/tc-m68hc11.c:1078
+msgid "Missing `]' to close indexed-indirect mode."
+msgstr "Hilang `]' untuk menutuk mode indeksing tidak langsung."
+
+#: config/tc-m68hc11.c:1123
+msgid "Illegal operand."
+msgstr "Operan tidak legal."
+
+#: config/tc-m68hc11.c:1128
+msgid "Missing operand."
+msgstr "Hilang operan."
+
+#: config/tc-m68hc11.c:1181
+msgid "Pre-increment mode is not valid for 68HC11"
+msgstr "Mode pre-increment tidak valid untuk 68HC11"
+
+#: config/tc-m68hc11.c:1194
+msgid "Wrong register in register indirect mode."
+msgstr "Register salah dalam mode register tidak langsung."
+
+#: config/tc-m68hc11.c:1202
+msgid "Missing `]' to close register indirect operand."
+msgstr "Hilang `]' untuk menutup operan register tidak langsung."
+
+#: config/tc-m68hc11.c:1222
+msgid "Post-decrement mode is not valid for 68HC11."
+msgstr "Mode post-decrement tidak valid untuk 68HC11."
+
+#: config/tc-m68hc11.c:1230
+msgid "Post-increment mode is not valid for 68HC11."
+msgstr "Mode post-increment tidak valid untuk 68HC11."
+
+#: config/tc-m68hc11.c:1248
+msgid "Invalid indexed indirect mode."
+msgstr "Mode indeksed tidak langsung tidak valid."
+
+#: config/tc-m68hc11.c:1340
+#, c-format
+msgid "Trap id `%ld' is out of range."
+msgstr "Trap id `%ld' diluar dari jangkauan."
+
+#: config/tc-m68hc11.c:1344
+msgid "Trap id must be within [0x30..0x39] or [0x40..0xff]."
+msgstr "Trap id harus berada dalam p0x30..0x39] atau [0x40..0xff]."
+
+#: config/tc-m68hc11.c:1351
+#, c-format
+msgid "Operand out of 8-bit range: `%ld'."
+msgstr "Operan diluar dari jangkauan 8-bit: `%ld'."
+
+#: config/tc-m68hc11.c:1358
+msgid "The trap id must be a constant."
+msgstr "Trap id harus berupa sebuah konstanta."
+
+#: config/tc-m68hc11.c:1393
+#, c-format
+msgid "Operand `%x' not recognized in fixup8."
+msgstr "Operan `%x' tidak dikenal dalam fixup8."
+
+#: config/tc-m68hc11.c:1410 config/tc-m68hc11.c:1459
+#, c-format
+msgid "Operand out of 16-bit range: `%ld'."
+msgstr "Operan diluar dari jangkauan 16-bit: `%ld'."
+
+#: config/tc-m68hc11.c:1442 config/tc-m68hc11.c:1475
+#, c-format
+msgid "Operand `%x' not recognized in fixup16."
+msgstr "Operan `%x' tidak dikenal dalam fixup16."
+
+#: config/tc-m68hc11.c:1492
+#, c-format
+msgid "Unexpected branch conversion with `%x'"
+msgstr "Tidak diduga pengubahan percabangan dengan `%x'"
+
+#: config/tc-m68hc11.c:1583 config/tc-m68hc11.c:1721
+#, c-format
+msgid "Operand out of range for a relative branch: `%ld'"
+msgstr "Operan diluar dari jangkauan untuk sebuah percabangan relatif: `%ld'"
+
+#: config/tc-m68hc11.c:1689
+msgid "Invalid register for dbcc/tbcc instruction."
+msgstr "Register tidak valid untuk instruksi dbcc/tbcc."
+
+#: config/tc-m68hc11.c:1777
+#, c-format
+msgid "Increment/decrement value is out of range: `%ld'."
+msgstr "Nilai peningkatan/pengurangan diluar dari jangkauan: `%ld'."
+
+#: config/tc-m68hc11.c:1788
+msgid "Expecting a register."
+msgstr "Diduga sebuah register."
+
+#: config/tc-m68hc11.c:1803
+msgid "Invalid register for post/pre increment."
+msgstr "Register tidak valid untuk post/pre peningkatan."
+
+#: config/tc-m68hc11.c:1833
+msgid "Invalid register."
+msgstr "Register tidak valid."
+
+#: config/tc-m68hc11.c:1840
+#, c-format
+msgid "Offset out of 16-bit range: %ld."
+msgstr "Ofset diluar dari jangkauan 16-bit: %ld."
+
+#: config/tc-m68hc11.c:1845
+#, c-format
+msgid "Offset out of 5-bit range for movw/movb insn: %ld."
+msgstr "Ofset diluar dari jangkauan 5-bit untuk instruksi movw/movb: %ld."
+
+#: config/tc-m68hc11.c:1951
+msgid "Expecting register D for indexed indirect mode."
+msgstr "Diduga register D untuk mode indeksing tidak langsung."
+
+#: config/tc-m68hc11.c:1953
+msgid "Indexed indirect mode is not allowed for movb/movw."
+msgstr "Mode indeksing tidak langsung tidak diperbolehkan untuk movb/movw."
+
+#: config/tc-m68hc11.c:1970
+msgid "Invalid accumulator register."
+msgstr "Register akumulator tidak valid."
+
+#: config/tc-m68hc11.c:1995
+msgid "Invalid indexed register."
+msgstr "Register indeks tidak valid."
+
+#: config/tc-m68hc11.c:2003
+msgid "Addressing mode not implemented yet."
+msgstr "Mode pengalamatan belum diimplementasikan."
+
+#: config/tc-m68hc11.c:2016
+msgid "Invalid source register for this instruction, use 'tfr'."
+msgstr "Register asal tidak valid untuk instruksi ini, gunakan 'tfr'."
+
+#: config/tc-m68hc11.c:2018
+msgid "Invalid source register."
+msgstr "Register asal tidak valid."
+
+#: config/tc-m68hc11.c:2023
+msgid "Invalid destination register for this instruction, use 'tfr'."
+msgstr "Register tujuan tidak valid untuk instruksi ini, gunakan 'tfr'."
+
+#: config/tc-m68hc11.c:2025
+msgid "Invalid destination register."
+msgstr "register tujuan tidak valid."
+
+#: config/tc-m68hc11.c:2121
+msgid "Invalid indexed register, expecting register X."
+msgstr "register indeks tidak valid, menduga register X."
+
+#: config/tc-m68hc11.c:2123
+msgid "Invalid indexed register, expecting register Y."
+msgstr "register indeks tidak valid, menduga register Y."
+
+#: config/tc-m68hc11.c:2429
+msgid "No instruction or missing opcode."
+msgstr "Tidak ada instruksi atau hilang opkode."
+
+#: config/tc-m68hc11.c:2494
+#, c-format
+msgid "Opcode `%s' is not recognized."
+msgstr "Opkode `%s' tidak dikenal."
+
+#: config/tc-m68hc11.c:2516
+#, c-format
+msgid "Garbage at end of instruction: `%s'."
+msgstr "Sampah diakhir dari instruksi: `%s'."
+
+#: config/tc-m68hc11.c:2539
+#, c-format
+msgid "Invalid operand for `%s'"
+msgstr "Operan tidak valid untuk `%s'"
+
+#: config/tc-m68hc11.c:2590
+#, c-format
+msgid "Invalid mode: %s\n"
+msgstr "Mode tidak valid: %s\n"
+
+#: config/tc-m68hc11.c:2650
+msgid "bad .relax format"
+msgstr "Format .relax buruk"
+
+#: config/tc-m68hc11.c:2694
+#, c-format
+msgid "Relocation %d is not supported by object file format."
+msgstr "Relokasi %d tidak didukung oleh format berkas objek."
+
+#: config/tc-m68hc11.c:2973
+msgid "bra or bsr with undefined symbol."
+msgstr "bra atau bsr dengan simbol tidak terdefinisi."
+
+#: config/tc-m68hc11.c:3076 config/tc-m68hc11.c:3133
+#, c-format
+msgid "Subtype %d is not recognized."
+msgstr "Subtipe %d tidak dikenal."
+
+#: config/tc-m68hc11.c:3192
+msgid "Expression too complex."
+msgstr "Ekspresi terlalu kompleks."
+
+#: config/tc-m68hc11.c:3225
+msgid "Value out of 16-bit range."
+msgstr "Nilai diluar dari jangkauan 16-bit."
+
+#: config/tc-m68hc11.c:3243
+#, c-format
+msgid "Value %ld too large for 8-bit PC-relative branch."
+msgstr "Nilai %ld terlalu besar untuk percabangan PC-relatif 8-bit."
+
+#: config/tc-m68hc11.c:3250
+#, c-format
+msgid "Auto increment/decrement offset '%ld' is out of range."
+msgstr "Peningkatan/pengurangan otomatis ofset '%ld' diluar dari jangkauan."
+
+#: config/tc-m68hc11.c:3263
+#, c-format
+msgid "Offset out of 5-bit range for movw/movb insn: %ld"
+msgstr "Ofset diluar dari jangkauan 5-bit untuk instruksi movw/movb: %ld"
+
+#: config/tc-m68hc11.c:3279
+#, c-format
+msgid "Line %d: unknown relocation type: 0x%x."
+msgstr "Baris %d: tipe relokasi tidak dikenal: 0x%x."
+
+#: config/tc-m68k.c:1037
+#, c-format
+msgid "Can not do %d byte pc-relative relocation"
+msgstr "Tidak dapat melakukan pc-relatif relokasi %d byte"
+
+#: config/tc-m68k.c:1039
+#, c-format
+msgid "Can not do %d byte pc-relative pic relocation"
+msgstr "Tidak dapat melakukan pc-relative pic relokasi %d byte"
+
+#: config/tc-m68k.c:1044
+#, c-format
+msgid "Can not do %d byte relocation"
+msgstr "Tidak dapat melakukan relokasi %d byte"
+
+#: config/tc-m68k.c:1046
+#, c-format
+msgid "Can not do %d byte pic relocation"
+msgstr "Tidak dapat melakukan relokasi pic %d byte"
+
+#: config/tc-m68k.c:1111
+#, c-format
+msgid "Unable to produce reloc against symbol '%s'"
+msgstr "Tidak dapat  menghasilkan relokasi terhadap simbol '%s'"
+
+#: config/tc-m68k.c:1155 config/tc-vax.c:2366
+#, c-format
+msgid "Cannot make %s relocation PC relative"
+msgstr "Tidak dapat membuat relokasi PC relatif %s"
+
+#: config/tc-m68k.c:1254 config/tc-vax.c:1876
+msgid "No operator"
+msgstr "Tidak ada operator"
+
+#: config/tc-m68k.c:1284 config/tc-vax.c:1892
+msgid "Unknown operator"
+msgstr "Operator tidak diketahui"
+
+#: config/tc-m68k.c:2187
+msgid "invalid instruction for this architecture; needs "
+msgstr "Instruksi tidak valid untuk arsitektur ini; dibutuhkan "
+
+#: config/tc-m68k.c:2195
+msgid "hardware divide"
+msgstr "perangkat pembagi"
+
+#: config/tc-m68k.c:2217 config/tc-m68k.c:2221 config/tc-m68k.c:2225
+msgid "or higher"
+msgstr "atau lebih tinggi"
+
+#: config/tc-m68k.c:2278
+msgid "operands mismatch"
+msgstr "operan tidak cocok"
+
+#: config/tc-m68k.c:2342 config/tc-m68k.c:2348 config/tc-m68k.c:2354
+#: config/tc-mmix.c:2459 config/tc-mmix.c:2483
+msgid "operand out of range"
+msgstr "operan diluar dari jangkauan"
+
+#: config/tc-m68k.c:2411
+#, c-format
+msgid "Bignum too big for %c format; truncated"
+msgstr "Bignum terlalu besar untuk format %c; dipotong"
+
+#: config/tc-m68k.c:2488
+msgid "displacement too large for this architecture; needs 68020 or higher"
+msgstr "displacement terlalu besar untuk arsitektur ini; dibutuhkan 68020 atau lebih tinggi"
+
+#: config/tc-m68k.c:2599
+msgid "scale factor invalid on this architecture; needs cpu32 or 68020 or higher"
+msgstr "faktor skala tidak valid di arsitektur ini; dibutuhkan cpu32 atau 68020 atau lebih tinggi"
+
+#: config/tc-m68k.c:2604
+msgid "invalid index size for coldfire"
+msgstr "ukuran indeks tidak valid untuk coldfire"
+
+#: config/tc-m68k.c:2657
+msgid "Forcing byte displacement"
+msgstr "Memaksa byte diplacement"
+
+#: config/tc-m68k.c:2659
+msgid "byte displacement out of range"
+msgstr "byte displacement diluar dari jangkauan"
+
+#: config/tc-m68k.c:2707 config/tc-m68k.c:2745
+msgid "invalid operand mode for this architecture; needs 68020 or higher"
+msgstr "Mode operan tidak valid untuk arsitektur ini; dibutuhkan 68020 atau lebih tinggi"
+
+#: config/tc-m68k.c:2731 config/tc-m68k.c:2765
+msgid ":b not permitted; defaulting to :w"
+msgstr ":b tidak diijinkan; default ke :w"
+
+#: config/tc-m68k.c:2842
+msgid "unsupported byte value; use a different suffix"
+msgstr "nilai byte tidak didukung; gunakan akhiran yang berbeda"
+
+#: config/tc-m68k.c:2857
+msgid "unknown/incorrect operand"
+msgstr "operan tidak dikenal/ tidak benar"
+
+#: config/tc-m68k.c:2900 config/tc-m68k.c:2908 config/tc-m68k.c:2915
+#: config/tc-m68k.c:2922
+msgid "out of range"
+msgstr "diluar dari jangkauan"
+
+#: config/tc-m68k.c:2995
+msgid "Can't use long branches on this architecture"
+msgstr "Tidak dapat menggunakan percabangan panjang di arsitektur ini"
+
+#: config/tc-m68k.c:3101
+msgid "Expression out of range, using 0"
+msgstr "Ekspresi diluar dari jangkauan, menggunakan 0"
+
+#: config/tc-m68k.c:3292 config/tc-m68k.c:3308
+msgid "Floating point register in register list"
+msgstr "Floating point register dalam daftar register"
+
+#: config/tc-m68k.c:3298
+msgid "Wrong register in floating-point reglist"
+msgstr "Register salah dalam floating-point reglist"
+
+#: config/tc-m68k.c:3314
+msgid "incorrect register in reglist"
+msgstr "register tidak benar dalam daftar register"
+
+#: config/tc-m68k.c:3320
+msgid "wrong register in floating-point reglist"
+msgstr "register salah dalam daftar register floating-point"
+
+#. ERROR.
+#: config/tc-m68k.c:3793
+msgid "Extra )"
+msgstr "Kelebihan )"
+
+#. ERROR.
+#: config/tc-m68k.c:3804
+msgid "Missing )"
+msgstr "Hilang )"
+
+#: config/tc-m68k.c:3821
+msgid "Missing operand"
+msgstr "Hilang operan"
+
+#: config/tc-m68k.c:4139
+#, c-format
+msgid "unrecognized default cpu `%s'"
+msgstr "tidak dikenali cpu baku `%s'"
+
+#: config/tc-m68k.c:4193
+#, c-format
+msgid "%s -- statement `%s' ignored"
+msgstr "%s -- pernyataan `%s' diabaikan"
+
+#: config/tc-m68k.c:4242
+#, c-format
+msgid "Don't know how to figure width of %c in md_assemble()"
+msgstr "Tidak tahu bagaimana memperkirakan lebar dari %c dalam md_assemble()"
+
+#: config/tc-m68k.c:4411
+#, c-format
+msgid "Internal Error:  Can't allocate m68k_sorted_opcodes of size %d"
+msgstr "Internal Error: Tidak dapat mengalokasikan m68k_sorted_opcodes untuk ukuran %d"
+
+#: config/tc-m68k.c:4476 config/tc-m68k.c:4515
+#, c-format
+msgid "Internal Error: Can't find %s in hash table"
+msgstr "Internal Error: Tidak dapat menemukan %s dalam tabel hash"
+
+#: config/tc-m68k.c:4479 config/tc-m68k.c:4518
+#, c-format
+msgid "Internal Error: Can't hash %s: %s"
+msgstr "Internal Error: Tidak dapat hash %s: %s"
+
+#: config/tc-m68k.c:4643
+#, c-format
+msgid "text label `%s' aligned to odd boundary"
+msgstr "text label `%s' aligned ke batas ganjil"
+
+#: config/tc-m68k.c:4790
+#, c-format
+msgid "value %ld out of range"
+msgstr "nilai %ld diluar dari jangkauan"
+
+#: config/tc-m68k.c:4804
+msgid "invalid byte branch offset"
+msgstr "byte ofset percabangan tidak valid"
+
+#: config/tc-m68k.c:4841
+msgid "short branch with zero offset: use :w"
+msgstr "percabangan pendek dengan ofset nol: gunakan :w"
+
+#: config/tc-m68k.c:4885
+msgid "Conversion of PC relative BSR to absolute JSR"
+msgstr "Pengubahan dari PC relatif BSR ke absolut JSR"
+
+#: config/tc-m68k.c:4896
+msgid "Conversion of PC relative branch to absolute jump"
+msgstr "Pengubahan dari percabangan PC relatif ke lompat absolut"
+
+#: config/tc-m68k.c:4913 config/tc-m68k.c:4974
+msgid "Conversion of PC relative conditional branch to absolute jump"
+msgstr "Pengubahan dari kondisi PC relatif ke percabangan lompat absolut"
+
+#: config/tc-m68k.c:4954
+msgid "Conversion of DBcc to absolute jump"
+msgstr "Konversi dari DBcc ke lompat absolut"
+
+#: config/tc-m68k.c:5039
+msgid "Conversion of PC relative displacement to absolute"
+msgstr "Konversi dari PC relatif displacement ke absolut"
+
+#: config/tc-m68k.c:5252
+msgid "Tried to convert PC relative branch to absolute jump"
+msgstr "Mencoba mengubah percabangan PC relatif ke lompat absolut"
+
+#: config/tc-m68k.c:5297 config/tc-m68k.c:5308 config/tc-m68k.c:5352
+msgid "expression out of range: defaulting to 1"
+msgstr "ekspresi diluar dari jangkauan: default ke 1"
+
+#: config/tc-m68k.c:5344
+msgid "expression out of range: defaulting to 0"
+msgstr "ekspresi diluar dari jangkauan: default ke 0"
+
+#: config/tc-m68k.c:5385 config/tc-m68k.c:5397
+#, c-format
+msgid "Can't deal with expression; defaulting to %ld"
+msgstr "Tidak dapat menangani dengan pernyataan: baku ke %ld"
+
+#: config/tc-m68k.c:5411
+msgid "expression doesn't fit in BYTE"
+msgstr "pernyataan tidak cukup dalam BYTE"
+
+#: config/tc-m68k.c:5415
+msgid "expression doesn't fit in WORD"
+msgstr "pernyataan tidak cukup dalam WORD"
+
+#: config/tc-m68k.c:5502
+#, c-format
+msgid "%s: unrecognized processor name"
+msgstr "%s: nama prosesor tidak dikenal"
+
+#: config/tc-m68k.c:5563
+msgid "bad coprocessor id"
+msgstr "id koprosesor buruk"
+
+#: config/tc-m68k.c:5569
+msgid "unrecognized fopt option"
+msgstr "opsi fopt tidak dikenal"
+
+#: config/tc-m68k.c:5702
+#, c-format
+msgid "option `%s' may not be negated"
+msgstr "opsi `%s' tidak boleh dinegasikan"
+
+#: config/tc-m68k.c:5713
+#, c-format
+msgid "option `%s' not recognized"
+msgstr "opsi `%s' tidak dikenal"
+
+#: config/tc-m68k.c:5742
+msgid "bad format of OPT NEST=depth"
+msgstr "format dari OPT NEST=kedalaman buruk"
+
+#: config/tc-m68k.c:5798
+msgid "missing label"
+msgstr "hilang label"
+
+#: config/tc-m68k.c:5822 config/tc-m68k.c:5851
+msgid "bad register list"
+msgstr "daftar register buruk"
+
+#: config/tc-m68k.c:5824
+#, c-format
+msgid "bad register list: %s"
+msgstr "daftar register buruk: %s"
+
+#: config/tc-m68k.c:5922
+msgid "restore without save"
+msgstr "restore tanpa menyimpan"
+
+#: config/tc-m68k.c:6076 config/tc-m68k.c:6446
+msgid "syntax error in structured control directive"
+msgstr "sintaks error dalam kontrol direktif terstruktur"
+
+#: config/tc-m68k.c:6121
+msgid "missing condition code in structured control directive"
+msgstr "kode kondisi hilang dalam direktif kontrol terstruktur"
+
+#: config/tc-m68k.c:6192
+#, c-format
+msgid "Condition <%c%c> in structured control directive can not be encoded correctly"
+msgstr "Kondisi <%c%c> dalam direktif kontrol terstruktur tidak dapat dienkode secara benar"
+
+#: config/tc-m68k.c:6488
+msgid "missing then"
+msgstr "hilang then"
+
+#: config/tc-m68k.c:6569
+msgid "else without matching if"
+msgstr "else tanpat pasangan if"
+
+#: config/tc-m68k.c:6602
+msgid "endi without matching if"
+msgstr "endi tanpa pasangan if"
+
+#: config/tc-m68k.c:6642
+msgid "break outside of structured loop"
+msgstr "break diluar dari loop terstruktur"
+
+#: config/tc-m68k.c:6680
+msgid "next outside of structured loop"
+msgstr "next diluar dari loop terstruktur"
+
+#: config/tc-m68k.c:6731
+msgid "missing ="
+msgstr "hilang ="
+
+#: config/tc-m68k.c:6769
+msgid "missing to or downto"
+msgstr "hilang to atau downto"
+
+#: config/tc-m68k.c:6805 config/tc-m68k.c:6839 config/tc-m68k.c:7053
+msgid "missing do"
+msgstr "hilang do"
+
+#: config/tc-m68k.c:6940
+msgid "endf without for"
+msgstr "endf tanpa for"
+
+#: config/tc-m68k.c:6994
+msgid "until without repeat"
+msgstr "until tanpa repeat"
+
+#: config/tc-m68k.c:7088
+msgid "endw without while"
+msgstr "endw tanpa while"
+
+#: config/tc-m68k.c:7121 config/tc-m68k.c:7149
+msgid "already assembled instructions"
+msgstr "instruksi telah dirakit"
+
+#: config/tc-m68k.c:7226
+#, c-format
+msgid "`%s' is deprecated, use `%s'"
+msgstr "`%s' adalah kadaluarsa, gunakan `%s'"
+
+#: config/tc-m68k.c:7245
+#, c-format
+msgid "cpu `%s' unrecognized"
+msgstr "cpu `%s' tidak dikenal"
+
+#: config/tc-m68k.c:7264
+#, c-format
+msgid "architecture `%s' unrecognized"
+msgstr "arsitektur `%s' tidak dikenal"
+
+#: config/tc-m68k.c:7285
+#, c-format
+msgid "extension `%s' unrecognized"
+msgstr "ekstensi `%s' tidak dikenal"
+
+#: config/tc-m68k.c:7403
+#, c-format
+msgid "option `-A%s' is deprecated: use `-%s'"
+msgstr "opsi `-A%s' kadaluarsa: gunakan `-%s'"
+
+#: config/tc-m68k.c:7436
+msgid "architecture features both enabled and disabled"
+msgstr "featur arsitektur keduanya aktif dan no-aktif"
+
+#: config/tc-m68k.c:7463
+msgid "selected processor does not have all features of selected architecture"
+msgstr "prosesor yang dipilih tidak memiliki semua feature dari arsitektur yang dipilih"
+
+#: config/tc-m68k.c:7472
+msgid "m68k and cf features both selected"
+msgstr "m68k dan cf feature keduanya dipilih"
+
+#: config/tc-m68k.c:7484
+msgid "68040 and 68851 specified; mmu instructions may assemble incorrectly"
+msgstr "68040 dan 68851 dispesifikasikan; instruksi mmu mungkin merakit tidak benar"
+
+#: config/tc-m68k.c:7518
+#, c-format
+msgid ""
+"-march=<arch>\t\tset architecture\n"
+"-mcpu=<cpu>\t\tset cpu [default %s]\n"
+msgstr ""
+"-march=<arch>\t\tset arsitektur\n"
+"-mcpu=<arch>\t\tset cpu [baku %s]\n"
+
+#: config/tc-m68k.c:7523
+#, c-format
+msgid "-m[no-]%-16s enable/disable%s architecture extension\n"
+msgstr "-m[no-]%-16s aktifkan/non-aktifkan%s ekstensi arsitektur\n"
+
+#: config/tc-m68k.c:7529
+#, c-format
+msgid ""
+"-l\t\t\tuse 1 word for refs to undefined symbols [default 2]\n"
+"-pic, -k\t\tgenerate position independent code\n"
+"-S\t\t\tturn jbsr into jsr\n"
+"--pcrel                 never turn PC-relative branches into absolute jumps\n"
+"--register-prefix-optional\n"
+"\t\t\trecognize register names without prefix character\n"
+"--bitwise-or\t\tdo not treat `|' as a comment character\n"
+"--base-size-default-16\tbase reg without size is 16 bits\n"
+"--base-size-default-32\tbase reg without size is 32 bits (default)\n"
+"--disp-size-default-16\tdisplacement with unknown size is 16 bits\n"
+"--disp-size-default-32\tdisplacement with unknown size is 32 bits (default)\n"
+msgstr ""
+"-l\t\t\tgunakan 1 word untuk refs untuk simbol tidak terdefinisi [baku 2]\n"
+"-pic, -k\t\thasilkan kode bebas posisi\n"
+"-S\t\t\tubah jbsr ke jsr\n"
+"--pcrel                  jangan ubah percabangan PC-relatif kedalam lompat absolut\n"
+"--register-prefix-optional\n"
+"\t\t\tkenali nama register tanpa karakter awalan\n"
+"--bitwise-or\t\tjangan perlakukan `|' sebagai sebuah karakter komentar\n"
+"--base-size-default-16\tregister dasar tanpa ukuran adalah 16 bit\n"
+"--base-size-default-32\tregister dasar tanpa ukuran adalah 32 bit (baku)\n"
+"--disp-size-default-16\tdisplacement dengan ukuran tidak diketahui adalah 16 bit\n"
+"--disp-size-default-32\tdisplacement dengan ukuran tidak diketahui adalah  32 bit (baku)\n"
+
+#: config/tc-m68k.c:7543
+#, c-format
+msgid "Architecture variants are: "
+msgstr "Variasi arsitektur adalah: "
+
+#: config/tc-m68k.c:7552
+#, c-format
+msgid "Processor variants are: "
+msgstr "Variasi prosesor adalah: "
+
+#: config/tc-m68k.c:7559 config/tc-xtensa.c:6165
+#, c-format
+msgid "\n"
+msgstr "\n"
+
+#: config/tc-m68k.c:7590
+#, c-format
+msgid "Error %s in %s\n"
+msgstr "Error %s dalam %s\n"
+
+#: config/tc-m68k.c:7594
+#, c-format
+msgid "Opcode(%d.%s): "
+msgstr "Opkode(%d.%s): "
+
+#: config/tc-m68k.c:7754
+msgid "Not a defined coldfire architecture"
+msgstr "Bukan sebuah arsitektur terdefinisi coldfire"
+
+#. Over here we will fill the description of the machine specific options.
+#: config/tc-maxq.c:209
+#, c-format
+msgid " MAXQ-specific assembler options:\n"
+msgstr " Opsi perakit MAXQ-spesifik:\n"
+
+#: config/tc-maxq.c:211
+#, c-format
+msgid ""
+"\t-MAXQ20\t\t       generate obj for MAXQ20(default)\n"
+"\t-MAXQ10\t\t       generate obj for MAXQ10\n"
+"\t"
+msgstr ""
+"\t-MAXQ20\t\t       hasilkan obj untuk MAXQ20(baku)\n"
+"\t-MAXQ10\t\t       hasilkan obj untuk MAXQ10\n"
+"\t"
+
+#: config/tc-maxq.c:377
+#, c-format
+msgid "Illegal Reloc type in md_estimate_size_before_relax for line : %d"
+msgstr "Tipe relokasi tidak legal dalam md_estimate_size_before_relax untuk baris: %d"
+
+#: config/tc-maxq.c:454
+#, c-format
+msgid "Cant make long jump/call into short jump/call : %d"
+msgstr "Tidak dapat membuat jump/call panjang kedalam jump/call pendek: %d"
+
+#: config/tc-maxq.c:933
+#, c-format
+msgid "Invalid register value %s"
+msgstr "Nilai register %s tidak valid"
+
+#: config/tc-maxq.c:1051
+#, c-format
+msgid "Invalid bit number : '%c'"
+msgstr "Nomor bit tidak valid : '%c'"
+
+#: config/tc-maxq.c:1063
+#, c-format
+msgid "Illegal character after operand '%s'"
+msgstr "Karakter tidak legal setelah operan '%s'"
+
+#: config/tc-maxq.c:1139 config/tc-maxq.c:1316
+#, c-format
+msgid "Invalid Character in immediate Value : %c"
+msgstr "Karakter tidak v alid dalam nilai langsung : %c"
+
+#: config/tc-maxq.c:1159 config/tc-maxq.c:1336
+#, c-format
+msgid "Invalid Character in immediate value : %c"
+msgstr "Karakter tidak valid dalam nilai langsung: %c"
+
+#: config/tc-maxq.c:1175
+msgid "Immediate value greater than 16 bits"
+msgstr "Nilai langsung lebih besar dari 16 bits"
+
+#: config/tc-maxq.c:1189
+msgid "Attempt to move a value in the stack pointer greater than the size of the stack"
+msgstr "Mencoba memindahkan sebuah nilai dalam stack pointer lebih besar dari ukuran dari stack"
+
+#: config/tc-maxq.c:1198
+msgid "Attempt to move 16 bit value into an 8 bit register.Truncating..\n"
+msgstr "Mencoba memindahkan nilai 16 bit kedalam sebuah register 8 bit. Dipotong..\n"
+
+#: config/tc-maxq.c:1260
+msgid "Invalid immediate move operation"
+msgstr "Operasi immediate move tidak valid"
+
+#: config/tc-maxq.c:1533
+#, c-format
+msgid "Size of Operand '%s' greater than %d"
+msgstr "Ukuran dari operan '%s' lebih besar dari %d"
+
+#: config/tc-maxq.c:1688
+#, c-format
+msgid "illegal immediate operand '%s'"
+msgstr "immediate operan '%s' tidak legal"
+
+#: config/tc-maxq.c:1710
+#, c-format
+msgid "Invalid operand for memory access '%s'"
+msgstr "Operan tidak valid untuk akses memori '%s'"
+
+#: config/tc-maxq.c:1772
+msgid "illegal displacement operand "
+msgstr "displacement operan tidak legal "
+
+#: config/tc-maxq.c:1837
+#, c-format
+msgid "invalid character %c before operand %d"
+msgstr "karakter %c tidak valid sebelum operan %d"
+
+#: config/tc-maxq.c:1859
+#, c-format
+msgid "invalid character %c in operand %d"
+msgstr "karakter %c dalam operan %d tidak valid"
+
+#. We found no match.
+#: config/tc-maxq.c:2004
+#, c-format
+msgid "operand %d is invalid for `%s'"
+msgstr "operan %d tidak valid untuk `%s'"
+
+#: config/tc-maxq.c:2037
+msgid "The Accumulator cannot be used as a source in ALU instructions\n"
+msgstr "Akumulator tidak dapat digunakan sebagai sebuah sumber dalam instruksi ALU\n"
+
+#: config/tc-maxq.c:2055
+#, c-format
+msgid "'%s' operand cant be used as destination in %s"
+msgstr "operan '%s' tidak dapat digunakan sebagai tujuan dalam %s"
+
+#: config/tc-maxq.c:2071 config/tc-maxq.c:2102 config/tc-maxq.c:2116
+#, c-format
+msgid "Invalid Instruction '%s' operand cant be used with %s"
+msgstr "Instruksi '%s' tidak valid operan tidak dapat digunakan dengan %s"
+
+#: config/tc-maxq.c:2087 config/tc-maxq.c:2138
+#, c-format
+msgid "'%s' operand cant be used as source in %s"
+msgstr "operan '%s' tidak dapat digunakan sebagai sumber dalam %s"
+
+#: config/tc-maxq.c:2147
+#, c-format
+msgid "'%s' instruction cant have first operand as Immediate vale"
+msgstr "instruksi '%s' tidak dapat memiliki operan pertama sebagai nilai immediate"
+
+#: config/tc-maxq.c:2160
+#, c-format
+msgid "SP cannot be used with %s\n"
+msgstr "SP tidak dapat digunakan dengan %s\n"
+
+#: config/tc-maxq.c:2167
+msgid "@SP-- cannot be used with PUSH\n"
+msgstr "@SP -- tidak dapat digunakan dengan PUSH\n"
+
+#: config/tc-maxq.c:2183 config/tc-maxq.c:2191
+msgid "Operands either contradictory or use the data bus in read/write state together"
+msgstr "Operan baik kontradiksi atau menggunakan data bus dalam keadaan baca/tulis secara bersamaan"
+
+#: config/tc-maxq.c:2198
+msgid "MOVE Cant Use NUL as SRC"
+msgstr "MOVE tidak dapat menggunakan NUL  sebagai SRC"
+
+#: config/tc-maxq.c:2220
+msgid "Contradictory movement between DP register and memory access using DP"
+msgstr "Kontradisiki perpindahan diantara register DP dan akses memori menggunakan DP"
+
+#: config/tc-maxq.c:2228
+msgid "SP and @SP-- cannot be used together in a move instruction"
+msgstr "SP dan @SP-- tidak dapat digunakan bersama dalam sebuah instruksi move"
+
+#: config/tc-maxq.c:2247
+msgid "Only Module 8 system registers allowed in this operation"
+msgstr "Hanya Module 8 sistem register yang diperbolehkan dalam operasi ini"
+
+#: config/tc-maxq.c:2273 config/tc-maxq.c:2282 config/tc-maxq.c:2308
+msgid "Read only Register used as destination"
+msgstr "Baca-saja register digunakan sebagai tujuan"
+
+#: config/tc-maxq.c:2290
+#, c-format
+msgid "Bit No '%d'exceeds register size in this operation"
+msgstr "Bit No '%d' melebihi ukuran register dalam operasi ini"
+
+#: config/tc-maxq.c:2315 config/tc-maxq.c:2336
+#, c-format
+msgid "Bit No '%d' exceeds register size in this operation"
+msgstr "Bit No '%d' melebihi ukuran register dalam operasi ini"
+
+#: config/tc-maxq.c:2352
+msgid "Memory References cannot be used with branching operations\n"
+msgstr "Referensi memori tidak dapat digunakan dengan operasi percabangan\n"
+
+#: config/tc-maxq.c:2361
+msgid "DJNZ uses only LC[n] register \n"
+msgstr "DJNZ hanya menggunakan register LC[n]\n"
+
+#: config/tc-maxq.c:2387
+#, c-format
+msgid "'%s' operand cant be used as destination  in %s"
+msgstr "'%s' operan tidak dapat digunakan sebagai tujuan dalam %s"
+
+#: config/tc-maxq.c:2397
+#, c-format
+msgid "Read only register used for writing purposes '%s'"
+msgstr "Baca-saja register digunakan untuk tujuan menulis saja '%s'"
+
+#: config/tc-maxq.c:2409
+msgid "Invalid destination for this kind of source."
+msgstr "Tujuan tidak valid untuk sumber seperti ini."
+
+#: config/tc-maxq.c:2416
+msgid "Invalid register as destination for this kind of source.Only data pointers can be used."
+msgstr "Register tidak valid sebagai tujuan untuk sumber seperti ini.Hanya petunjuk data yang dapat digunakan."
+
+#: config/tc-maxq.c:2504 config/tc-maxq.c:2592
+msgid "Invalid Instruction"
+msgstr "Instruksi tidak valid"
+
+#: config/tc-maxq.c:2790
+msgid "Cannot allocate memory"
+msgstr "Tidak dapat mengalokasikan memori"
+
+#: config/tc-maxq.c:2862
+msgid "Internal Error: Illegal Architecure specified"
+msgstr "Internal Error: Arsitektur ilegal dispesifikasikan"
+
+#: config/tc-maxq.c:2900
+msgid "Invalid architecture type"
+msgstr "Tipe arsitektur tidak valid"
+
+#: config/tc-maxq.c:2905 config/tc-maxq.c:2916 config/tc-maxq.c:2929
+#: config/tc-maxq.c:2941 config/tc-maxq.c:2954
+#, c-format
+msgid "Internal Error : Can't Hash %s : %s"
+msgstr "Internal Error : tidak dapat hash %s : %s"
+
+#: config/tc-maxq.c:3071
+#, c-format
+msgid "Ineffective insntruction %s \n"
+msgstr "Instruksi tidak efektif %s\n"
+
+#: config/tc-mcore.c:521
+#, c-format
+msgid "register expected, but saw '%.6s'"
+msgstr "Diduga sebuah register, tetapi terlihat '%.6s'"
+
+#: config/tc-mcore.c:603
+#, c-format
+msgid "control register expected, but saw '%.6s'"
+msgstr "diduga register pengotrol, tetapi terlihat '%.6s'"
+
+#: config/tc-mcore.c:639
+msgid "bad/missing psr specifier"
+msgstr "buruk/hilang psr specifier"
+
+#: config/tc-mcore.c:689
+msgid "more than 65K literal pools"
+msgstr "lebih dari 65K literal pools"
+
+#: config/tc-mcore.c:743
+msgid "missing ']'"
+msgstr "hilang ']'"
+
+#: config/tc-mcore.c:782
+msgid "operand must be a constant"
+msgstr "operan harus berupa sebuah konstanta"
+
+#: config/tc-mcore.c:784
+#, c-format
+msgid "operand must be absolute in range %u..%u, not %ld"
+msgstr "operan harus absolut dalam jangkauan %u..%u, tidak %ld"
+
+#: config/tc-mcore.c:819
+msgid "operand must be a multiple of 4"
+msgstr "operan harus sebuah kelipatan dari 4"
+
+#: config/tc-mcore.c:826
+msgid "operand must be a multiple of 2"
+msgstr "operan harus sebuah kelipatan dari 2"
+
+#: config/tc-mcore.c:840 config/tc-mcore.c:1356 config/tc-mcore.c:1410
+msgid "base register expected"
+msgstr "diduga dasar register"
+
+#: config/tc-mcore.c:888
+#, c-format
+msgid "unknown opcode \"%s\""
+msgstr "opkode tidak dikenal \"%s\""
+
+#: config/tc-mcore.c:931
+msgid "invalid register: r15 illegal"
+msgstr "register tidak valid: r15 tidak legal"
+
+#: config/tc-mcore.c:980 config/tc-mcore.c:1561
+msgid "M340 specific opcode used when assembling for M210"
+msgstr "M340 spesifik opkode digunakan ketika merakit untuk M210"
+
+#: config/tc-mcore.c:998 config/tc-mcore.c:1038 config/tc-mcore.c:1057
+#: config/tc-mcore.c:1076 config/tc-mcore.c:1104 config/tc-mcore.c:1133
+#: config/tc-mcore.c:1170 config/tc-mcore.c:1205 config/tc-mcore.c:1224
+#: config/tc-mcore.c:1243 config/tc-mcore.c:1277 config/tc-mcore.c:1302
+#: config/tc-mcore.c:1359 config/tc-mcore.c:1413 config/tc-mcore.c:1449
+#: config/tc-mcore.c:1508 config/tc-mcore.c:1530 config/tc-mcore.c:1553
+msgid "second operand missing"
+msgstr "operan kedua hilang"
+
+#: config/tc-mcore.c:1014
+msgid "destination register must be r1"
+msgstr "register tujuan harus berupa r1"
+
+#: config/tc-mcore.c:1035
+msgid "source register must be r1"
+msgstr "asal register harus berupa r1"
+
+#: config/tc-mcore.c:1099 config/tc-mcore.c:1156
+msgid "immediate is not a power of two"
+msgstr "immediate bukan kelipatan dari dua"
+
+#: config/tc-mcore.c:1127
+msgid "translating bgeni to movi"
+msgstr "menerjemahkan bgeni ke movi"
+
+#: config/tc-mcore.c:1164
+msgid "translating mgeni to movi"
+msgstr "menerjemahkan mgeni ke movi"
+
+#: config/tc-mcore.c:1196
+msgid "translating bmaski to movi"
+msgstr "menerjemahkan bmaski ke movi"
+
+#: config/tc-mcore.c:1272
+#, c-format
+msgid "displacement too large (%d)"
+msgstr "displacement terlalu besar (%d)"
+
+#: config/tc-mcore.c:1286
+msgid "Invalid register: r0 and r15 illegal"
+msgstr "register tidak valid: r0 dan r15 tidak legal"
+
+#: config/tc-mcore.c:1317
+msgid "bad starting register: r0 and r15 invalid"
+msgstr "awal register buruk: r0 dan r15 tidak valid"
+
+#: config/tc-mcore.c:1330
+msgid "ending register must be r15"
+msgstr "register akhir harus r15"
+
+#: config/tc-mcore.c:1350
+msgid "bad base register: must be r0"
+msgstr "register dasar buruk: harus r0"
+
+#: config/tc-mcore.c:1368
+msgid "first register must be r4"
+msgstr "register pertama harus r4"
+
+#: config/tc-mcore.c:1379
+msgid "last register must be r7"
+msgstr "register terakhir harus r7"
+
+#: config/tc-mcore.c:1416
+msgid "reg-reg expected"
+msgstr "diduga reg-reg"
+
+#: config/tc-mcore.c:1527
+msgid "second operand must be 1"
+msgstr "operan kedua harus 1"
+
+#: config/tc-mcore.c:1548
+msgid "zero used as immediate value"
+msgstr "nol digunakan sebagai nilai langsung"
+
+#: config/tc-mcore.c:1575
+msgid "duplicated psr bit specifier"
+msgstr "duplikasi psr bit specifier"
+
+#: config/tc-mcore.c:1581
+msgid "`af' must appear alone"
+msgstr "`af' harus terlihat sendiri"
+
+#: config/tc-mcore.c:1588
+#, c-format
+msgid "unimplemented opcode \"%s\""
+msgstr "opkode tidak terimplementasi \"%s\""
+
+#: config/tc-mcore.c:1597
+#, c-format
+msgid "ignoring operands: %s "
+msgstr "mengabaikan operan: %s "
+
+#: config/tc-mcore.c:1667
+#, c-format
+msgid "unrecognised cpu type '%s'"
+msgstr "tipe cpu '%s' tidak dikenal"
+
+#: config/tc-mcore.c:1685
+#, c-format
+msgid ""
+"MCORE specific options:\n"
+"  -{no-}jsri2bsr\t  {dis}able jsri to bsr transformation (def: dis)\n"
+"  -{no-}sifilter\t  {dis}able silicon filter behavior (def: dis)\n"
+"  -cpu=[210|340]          select CPU type\n"
+"  -EB                     assemble for a big endian system (default)\n"
+"  -EL                     assemble for a little endian system\n"
+msgstr ""
+"Opsi spesifik MCORE:\n"
+"  -{no-}jsri2bsr\t  {non}aktifkan transformasi jsri ke bsr (baku: non)\n"
+"  -{no-}sifilter\t  {non}aktifkan perlakuan filter silicon (baku: non)\n"
+"  -cpu=[210|340]          pilih tipe CPU\n"
+"  -EB                     rakit untuk sistem big endian (baku)\n"
+"  -EL                     rakit untuk sistem little endian\n"
+
+#: config/tc-mcore.c:1703
+msgid "failed sanity check: short_jump"
+msgstr "gagal pemeriksaan keadaan: short_jump"
+
+#: config/tc-mcore.c:1713
+msgid "failed sanity check: long_jump"
+msgstr "gagal pemeriksaan keadaan: long_jump"
+
+#: config/tc-mcore.c:1739
+#, c-format
+msgid "odd displacement at %x"
+msgstr "displacemen ganjil di %x"
+
+#: config/tc-mcore.c:1921
+msgid "unknown"
+msgstr "tidak diketahui"
+
+#: config/tc-mcore.c:1948
+#, c-format
+msgid "odd distance branch (0x%lx bytes)"
+msgstr "jarak cabang aneh (0x%lx bytes)"
+
+#: config/tc-mcore.c:1952
+#, c-format
+msgid "pcrel for branch to %s too far (0x%lx)"
+msgstr "pcrel untuk cabang ke %s terlalu jauh (0x%lx)"
+
+#: config/tc-mcore.c:1972
+#, c-format
+msgid "pcrel for lrw/jmpi/jsri to %s too far (0x%lx)"
+msgstr "pcrel untuk lrw/jmpi/jsri ke %s terlalu jauh (0x%lx)"
+
+#: config/tc-mcore.c:1984
+#, c-format
+msgid "pcrel for loopt too far (0x%lx)"
+msgstr "pcrel untuk loopt terlalu jauh (0x%lx)"
+
+#: config/tc-mcore.c:2180
+#, c-format
+msgid "Can not do %d byte %srelocation"
+msgstr "Tidak dapat melakukan %d byte %s relokasi"
+
+#: config/tc-mcore.c:2182
+msgid "pc-relative"
+msgstr "pc-relatif"
+
+#: config/tc-mep.c:301
+#, c-format
+msgid ""
+"MeP specific command line options:\n"
+"  -EB                     assemble for a big endian system (default)\n"
+"  -EL                     assemble for a little endian system\n"
+"  -mconfig=<name>         specify a chip configuration to use\n"
+"  -maverage -mno-average -mmult -mno-mult -mdiv -mno-div\n"
+"  -mbitops -mno-bitops -mleadz -mno-leadz -mabsdiff -mno-absdiff\n"
+"  -mminmax -mno-minmax -mclip -mno-clip -msatur -mno-satur -mcop32\n"
+"                          enable/disable the given opcodes\n"
+"\n"
+"  If -mconfig is given, the other -m options modify it.  Otherwise,\n"
+"  if no -m options are given, all core opcodes are enabled;\n"
+"  if any enabling -m options are given, only those are enabled;\n"
+"  if only disabling -m options are given, only those are disabled.\n"
+msgstr ""
+"Opsi spesifik Mep baris perintah:\n"
+"  -EB                     rakit untuk sistem big endian (baku)\n"
+"  -EL                     rakit untuk sistem little endian\n"
+"  -mconfig=<nama>         spesifikasikan konfigurasi chip yang digunakan\n"
+"  -maverage -mno-average -mmult -mno-mult -mdiv -mno-div\n"
+"  -mbitops -mno-bitops -mleadz -mno-leadz -mabsdiff -mno-absdiff\n"
+"  -mminmax -mno-minmax -mclip -mno-clip -msatur -mno-satur -mcop32\n"
+"                          aktifkan/non-aktifkan opkode yang diberikan\n"
+"\n"
+"  Jika -mconfig diberikan, opsi -m lain memodifikasinya. Jika tidak,\n"
+"  jika tidak ada opsi -m yang diberikan, seluruh core opkode diaktifkan;\n"
+"  jika pengaktifan opsi -m diberikan, hanya itu saja yang diaktifkan saja;\n"
+"  jika hanya menon-aktifkan opsi -m diberikan, hanya itu saja yang dinon-aktifkan.\n"
+
+#. There are no insns in the queue and a plus is present.
+#. This is a syntax error.  Let's not tolerate this.
+#. We can relax this later if necessary.
+#: config/tc-mep.c:1008
+msgid "Invalid use of parallelization operator."
+msgstr "Pengunakan dari operator paralelisasi tidak valid."
+
+#: config/tc-mep.c:1050
+msgid "Leading plus sign not allowed in core mode"
+msgstr "Awalan tanda plus tidak diperbolehkan dalam mode core"
+
+#: config/tc-mep.c:1531
+#, c-format
+msgid "Don't know how to relocate plain operands of type %s"
+msgstr "Tidak tahu bagaimana merelokasi tipe operan %s"
+
+#: config/tc-mep.c:1541
+#, c-format
+msgid "Perhaps you are missing %%tpoff()?"
+msgstr "Mungkin anda lupa %%tpoff()?"
+
+#: config/tc-mep.c:1725
+msgid "Bad .section directive: want a,v,w,x,M,S in string"
+msgstr "Direktif .section buruk: diinginkan dalam string a,v,w,x,M,S"
+
+#: config/tc-mep.c:1783
+msgid ".vliw unavailable when VLIW is disabled."
+msgstr ".vliw tidak tersedia ketika VLIW tidak aktif."
+
+#. Prototypes for static functions.
+#: config/tc-mips.c:1030
+#, c-format
+msgid "internal Error, line %d, %s"
+msgstr "internal Error, baris %d, %s"
+
+#: config/tc-mips.c:1875
+msgid "-G may not be used in position-independent code"
+msgstr "-G tidak boleh digunakan dalam kode bebas posisi"
+
+#: config/tc-mips.c:1922
+#, c-format
+msgid "internal: can't hash `%s': %s"
+msgstr "internal: tidak dapat hash `%s': %s"
+
+#: config/tc-mips.c:1930
+#, c-format
+msgid "internal error: bad mips16 opcode: %s %s\n"
+msgstr "internal error: opkode mips16 buruk: %s %s\n"
+
+#: config/tc-mips.c:2102
+#, c-format
+msgid "returned from mips_ip(%s) insn_opcode = 0x%x\n"
+msgstr "dikembalikan dari mips_ip(%s) insn_opcode = 0x%x\n"
+
+#: config/tc-mips.c:2858 config/tc-mips.c:14414
+msgid "extended instruction in delay slot"
+msgstr "instruksi ekstensi dalam slot tertunda"
+
+#: config/tc-mips.c:2922 config/tc-mips.c:2929
+#, c-format
+msgid "jump to misaligned address (0x%lx)"
+msgstr "lompat ke alamat misaligned (0x%lx)"
+
+#: config/tc-mips.c:2939 config/tc-mips.c:3694
+#, c-format
+msgid "branch to misaligned address (0x%lx)"
+msgstr "cabang ke alamat misaligned (0x%lx)"
+
+#: config/tc-mips.c:2944 config/tc-mips.c:3697
+#, c-format
+msgid "branch address range overflow (0x%lx)"
+msgstr "jangkauan alamat percabangan overflow (0x%lx)"
+
+#: config/tc-mips.c:3427
+msgid "Macro instruction expanded into multiple instructions in a branch delay slot"
+msgstr "instruksi makro diekspan kedalam beberapa instruksi dalam sebuah branch delay slot"
+
+#: config/tc-mips.c:3430
+msgid "Macro instruction expanded into multiple instructions"
+msgstr "Instruksi makro diekspan kedalam beberapa instruksi"
+
+#: config/tc-mips.c:3966 config/tc-mips.c:7927 config/tc-mips.c:7951
+#: config/tc-mips.c:8024 config/tc-mips.c:8047
+msgid "operand overflow"
+msgstr "operan overflow"
+
+#: config/tc-mips.c:3985 config/tc-mips.c:4585 config/tc-mips.c:7298
+#: config/tc-mips.c:8114
+msgid "Macro used $at after \".set noat\""
+msgstr "Makro menggunakan $at sesudah \".set noat\""
+
+#: config/tc-mips.c:4014
+msgid "unsupported large constant"
+msgstr "konstanta besar tidak didukung"
+
+#: config/tc-mips.c:4016
+#, c-format
+msgid "Instruction %s requires absolute expression"
+msgstr "Instruksi %s membutuhkan ekspresi absolut"
+
+#: config/tc-mips.c:4149 config/tc-mips.c:6418 config/tc-mips.c:6994
+#, c-format
+msgid "Number (0x%s) larger than 32 bits"
+msgstr "Nomor (0x%s) lebih besar dari 32 bit"
+
+#: config/tc-mips.c:4169
+msgid "Number larger than 64 bits"
+msgstr "Nomor lebih besar dari 64 bit"
+
+#: config/tc-mips.c:4463 config/tc-mips.c:4491 config/tc-mips.c:4529
+#: config/tc-mips.c:4574 config/tc-mips.c:6627 config/tc-mips.c:6666
+#: config/tc-mips.c:6705 config/tc-mips.c:7109 config/tc-mips.c:7161
+#: config/tc-score.c:4234
+msgid "PIC code offset overflow (max 16 signed bits)"
+msgstr "Ofset kode PIC overflow (maksimal 16 signed bit)"
+
+#: config/tc-mips.c:4896 config/tc-mips.c:4962 config/tc-mips.c:5050
+#: config/tc-mips.c:5097 config/tc-mips.c:5158 config/tc-mips.c:5206
+#: config/tc-mips.c:8208 config/tc-mips.c:8215 config/tc-mips.c:8222
+#: config/tc-mips.c:8329
+msgid "Unsupported large constant"
+msgstr "Konstanta besar tidak didukung"
+
+#. result is always true
+#: config/tc-mips.c:4928
+#, c-format
+msgid "Branch %s is always true"
+msgstr "Cabang %s tidak selalu benar"
+
+#: config/tc-mips.c:5169 config/tc-mips.c:5217 config/tc-mips.c:8978
+#: config/tc-mips.c:9135
+#, c-format
+msgid "Improper position (%lu)"
+msgstr "Posisi tidak sesuai (%lu)"
+
+#: config/tc-mips.c:5175 config/tc-mips.c:9045
+#, c-format
+msgid "Improper extract size (%lu, position %lu)"
+msgstr "Ukuran ekstraks tidak sesuai (%lu, posisi %lu)"
+
+#: config/tc-mips.c:5223 config/tc-mips.c:9009
+#, c-format
+msgid "Improper insert size (%lu, position %lu)"
+msgstr "Ukuran masukan tidak sesuai (%lu, posisi %lu)"
+
+#: config/tc-mips.c:5260 config/tc-mips.c:5357
+msgid "Divide by zero."
+msgstr "Dibagi dengan nol."
+
+#: config/tc-mips.c:5443
+msgid "dla used to load 32-bit register"
+msgstr "dla digunakan untuk load 32-bit register"
+
+#: config/tc-mips.c:5446
+msgid "la used to load 64-bit address"
+msgstr "la digunakan untuk load alamat 64 bit"
+
+#: config/tc-mips.c:5558 config/tc-z80.c:700
+msgid "offset too large"
+msgstr "ofset terlalu besar"
+
+#: config/tc-mips.c:5732 config/tc-mips.c:6011
+msgid "PIC code offset overflow (max 32 signed bits)"
+msgstr "Ofset kode PIC overflow (maksimal 32 signed bit)"
+
+#: config/tc-mips.c:6057
+msgid "MIPS PIC call to register other than $25"
+msgstr "Panggilan MIPS PIC ke register selain $25"
+
+#: config/tc-mips.c:6063 config/tc-mips.c:6074 config/tc-mips.c:6196
+#: config/tc-mips.c:6207
+msgid "No .cprestore pseudo-op used in PIC code"
+msgstr "Tidak ada .cprestore pseudo-op digunakan dalam kode PIC"
+
+#: config/tc-mips.c:6068 config/tc-mips.c:6201
+msgid "No .frame pseudo-op used in PIC code"
+msgstr "Tidak ada .frame pseudo-op digunakan dalam kode PIC"
+
+#: config/tc-mips.c:6222
+msgid "Non-PIC jump used in PIC library"
+msgstr "Non-PIC jump digunakan dalam perpustakaan PIC"
+
+#: config/tc-mips.c:6385 config/tc-mips.c:7261
+#, c-format
+msgid "opcode not supported on this processor: %s"
+msgstr "opkode tidak didukung dalam prosesor ini: %s"
+
+#: config/tc-mips.c:7467 config/tc-mips.c:7498 config/tc-mips.c:7549
+#: config/tc-mips.c:7579
+msgid "Improper rotate count"
+msgstr "jumlah rotasi tidak sesuai"
+
+#: config/tc-mips.c:7629
+#, c-format
+msgid "Instruction %s: result is always false"
+msgstr "Instruksi %s: hasil selalu salah"
+
+#: config/tc-mips.c:7790
+#, c-format
+msgid "Instruction %s: result is always true"
+msgstr "Instruksi %s: hasil selalu benar"
+
+#. FIXME: Check if this is one of the itbl macros, since they
+#. are added dynamically.
+#: config/tc-mips.c:8110
+#, c-format
+msgid "Macro %s not implemented yet"
+msgstr "Makro %s belum diimplementasikan"
+
+#: config/tc-mips.c:8360
+#, c-format
+msgid "internal: bad mips opcode (mask error): %s %s"
+msgstr "internal: opkode mips buruk (mask error): %s %s"
+
+#: config/tc-mips.c:8400 config/tc-mips.c:9209
+#, c-format
+msgid "internal: bad mips opcode (unknown extension operand type `+%c'): %s %s"
+msgstr "internal: opkde mips buruk (tipe ekstensi operan tidak diketahui `+%c'): %s %s"
+
+#: config/tc-mips.c:8478
+#, c-format
+msgid "internal: bad mips opcode (unknown operand type `%c'): %s %s"
+msgstr "internal: opkode mips buruk (tipe operan tidak diketahui `%c'): %s %s"
+
+#: config/tc-mips.c:8485
+#, c-format
+msgid "internal: bad mips opcode (bits 0x%lx undefined): %s %s"
+msgstr "internal: opkode mips buruk (bits 0x%lx tidak terdefinisi): %s %s"
+
+#: config/tc-mips.c:8643 config/tc-mips.c:10101
+#, c-format
+msgid "opcode not supported on this processor: %s (%s)"
+msgstr "opkode tidak didukung dalam prosesor ini: %s (%s)"
+
+#: config/tc-mips.c:8676
+#, c-format
+msgid "BALIGN immediate not 1 or 3 (%lu)"
+msgstr "BALIGN immediate bukan 1 atau 3 (%lu)"
+
+#: config/tc-mips.c:8689 config/tc-mips.c:8702 config/tc-mips.c:8715
+#: config/tc-mips.c:8728 config/tc-mips.c:8754 config/tc-mips.c:8798
+#, c-format
+msgid "DSP immediate not in range 0..%d (%lu)"
+msgstr "DSP immediate tidak dalam jangkauan 0..%d (%lu)"
+
+#: config/tc-mips.c:8746 config/tc-mips.c:8773
+msgid "Invalid dsp acc register"
+msgstr "register dsp acc tidak valid"
+
+#: config/tc-mips.c:8784 config/tc-mips.c:8815 config/tc-mips.c:8832
+#, c-format
+msgid "DSP immediate not in range %ld..%ld (%ld)"
+msgstr "DSP immediate tidak dalam jangkauan %ld..%ld (%ld)"
+
+#: config/tc-mips.c:8845
+#, c-format
+msgid "MT usermode bit not 0 or 1 (%lu)"
+msgstr "MT usermode bit tidak 0 atau 1 (%lu)"
+
+#: config/tc-mips.c:8856
+#, c-format
+msgid "MT load high bit not 0 or 1 (%lu)"
+msgstr "MT load high bit bukan 0 atau 1 (%lu)"
+
+#: config/tc-mips.c:8873 config/tc-mips.c:8886
+msgid "Invalid dsp/smartmips acc register"
+msgstr "register acc dsp/smartmips tidak valid"
+
+#: config/tc-mips.c:8951
+#, c-format
+msgid "Illegal %s number (%lu, 0x%lx)"
+msgstr "Tidak legal %s nomor (%lu, 0x%lx)"
+
+#: config/tc-mips.c:9064 config/tc-mips.c:9614
+msgid "absolute expression required"
+msgstr "ekspresi absolut dibutuhkan"
+
+#: config/tc-mips.c:9087
+#, c-format
+msgid "Invalid register number (%d)"
+msgstr "Nomor register tidak valid (%d)"
+
+#: config/tc-mips.c:9095
+msgid "Invalid coprocessor 0 register number"
+msgstr "Nomor register koprosesor 0 tidak valid"
+
+#: config/tc-mips.c:9105
+#, c-format
+msgid "Improper bit index (%lu)"
+msgstr "Bit indeks (%lu) tidak sesuai"
+
+#: config/tc-mips.c:9166 config/tc-mips.c:9183
+#, c-format
+msgid "Improper size (%lu)"
+msgstr "Ukuran tidak sesuai (%lu)"
+
+#: config/tc-mips.c:9199
+#, c-format
+msgid "Improper immediate (%ld)"
+msgstr "Tidak sesuai immediate (%ld)"
+
+#: config/tc-mips.c:9226
+#, c-format
+msgid "Improper shift amount (%lu)"
+msgstr "Jumlah pergeseran tidak sesuai (%lu)"
+
+#: config/tc-mips.c:9249 config/tc-mips.c:10422 config/tc-mips.c:10675
+#, c-format
+msgid "Invalid value for `%s' (%lu)"
+msgstr "Nilai tidak valid untuk `%s' (%lu)"
+
+#: config/tc-mips.c:9264
+#, c-format
+msgid "Code for %s not in range 0..1023 (%lu)"
+msgstr "Kode untuk %s tidak dalam jangkauan 0..1023 (%lu)"
+
+#: config/tc-mips.c:9276
+#, c-format
+msgid "Lower code for %s not in range 0..1023 (%lu)"
+msgstr "Kode lebih rendah untuk %s tidak dalam daerah 0..1023 (%lu)"
+
+#: config/tc-mips.c:9288
+#, c-format
+msgid "Code for %s not in range 0..1048575 (%lu)"
+msgstr "Kode untuk %s tidak dalam daerah 0..1048575 (%lu)"
+
+#: config/tc-mips.c:9301
+#, c-format
+msgid "Coproccesor code > 25 bits (%lu)"
+msgstr "Kode koprosesor > 25 bits (%lu)"
+
+#: config/tc-mips.c:9315
+#, c-format
+msgid "Illegal 19-bit code (%lu)"
+msgstr "Kode 19-bit tidak legal (%lu)"
+
+#: config/tc-mips.c:9328
+#, c-format
+msgid "Invalid performance register (%lu)"
+msgstr "register performance (%lu) tidak valid"
+
+#: config/tc-mips.c:9371 config/tc-mips.c:10282
+msgid "used $at without \".set noat\""
+msgstr "menggunakan $at tanpa \".set noat\""
+
+#: config/tc-mips.c:9373 config/tc-mips.c:10284
+#, c-format
+msgid "used $%u with \".set at=$%u\""
+msgstr "menggunakan $%u dengan \".set at=$%u\""
+
+#: config/tc-mips.c:9399
+msgid "source and destinationations must be different"
+msgstr "asal dan tujuan harus berbeda"
+
+#: config/tc-mips.c:9404
+msgid "a destination register must be supplied"
+msgstr "sebuah register tujuan harus diberikan"
+
+#: config/tc-mips.c:9487
+#, c-format
+msgid "Invalid MDMX Immediate (%ld)"
+msgstr "immediate MDMX tidak valid (%ld)"
+
+#: config/tc-mips.c:9525
+#, c-format
+msgid "Float register should be even, was %d"
+msgstr "Float register seharusnya genap, sebelumnya %d"
+
+#: config/tc-mips.c:9564
+#, c-format
+msgid "Bad element selector %ld"
+msgstr "Pemilih elemen %ld buruk"
+
+#: config/tc-mips.c:9572
+#, c-format
+msgid "Expecting ']' found '%s'"
+msgstr "Diduga ']' ditemukan '%s'"
+
+#: config/tc-mips.c:9678
+#, c-format
+msgid "Bad floating point constant: %s"
+msgstr "Konstanta floating point buruk: %s"
+
+#: config/tc-mips.c:9798
+msgid "Can't use floating point insn in this section"
+msgstr "Tidak dapat menggunakan instruksi floating point dalam daerah ini"
+
+#: config/tc-mips.c:9859
+msgid "expression out of range"
+msgstr "pernyataan diluar dari jangkauan"
+
+#: config/tc-mips.c:9899
+msgid "lui expression not in range 0..65535"
+msgstr "lui ekspresi tidak dalam daerah 0..65535"
+
+#: config/tc-mips.c:9920
+#, c-format
+msgid "Condition code register should be even for %s, was %d"
+msgstr "Kondisi kode register seharusnya genap untuk %s, sebelumnya %d"
+
+#: config/tc-mips.c:9925
+#, c-format
+msgid "Condition code register should be 0 or 4 for %s, was %d"
+msgstr "Kondisi kode register seharusnya 0 atau 4 untuk %s, sebelumnya %d"
+
+#: config/tc-mips.c:9951
+msgid "invalid coprocessor sub-selection value (0-7)"
+msgstr "koprosesor tidak valid nilai sub-selection (0-7)"
+
+#: config/tc-mips.c:9963 config/tc-mips.c:9980
+#, c-format
+msgid "bad byte vector index (%ld)"
+msgstr "indeks (%ld) vektor byte buruk"
+
+#: config/tc-mips.c:9991
+#, c-format
+msgid "bad char = '%c'\n"
+msgstr "karakter buruk = '%c'\n"
+
+#: config/tc-mips.c:10002 config/tc-mips.c:10007 config/tc-mips.c:10700
+msgid "illegal operands"
+msgstr "operan tidak legal"
+
+#: config/tc-mips.c:10075 config/tc-score.c:2413
+msgid "unrecognized opcode"
+msgstr "opkode tidak dikenal"
+
+#: config/tc-mips.c:10458 config/tc-mips.c:10539 config/tc-mips.c:10554
+msgid "can't parse register list"
+msgstr "tidak dapat parse daftar register"
+
+#: config/tc-mips.c:10527
+msgid "more than one frame size in list"
+msgstr "lebih dari sat ukuran frame dalam daftar"
+
+#: config/tc-mips.c:10582
+msgid "unexpected register in list"
+msgstr "register tidak diduga dalam daftar"
+
+#: config/tc-mips.c:10592
+msgid "arg/static registers overlap"
+msgstr "arg/statis register tumpang tindih"
+
+#: config/tc-mips.c:10610
+msgid "invalid arg register list"
+msgstr "daftar arg register tidak valid"
+
+#: config/tc-mips.c:10619 config/tc-mips.c:10642
+msgid "invalid static register list"
+msgstr "daftar statis register tidak valid"
+
+#: config/tc-mips.c:10649
+msgid "missing frame size"
+msgstr "hilang ukuran frame"
+
+#: config/tc-mips.c:10652
+msgid "invalid frame size"
+msgstr "ukuran frame tidak valid"
+
+#: config/tc-mips.c:10818
+msgid "extended operand requested but not required"
+msgstr "ekstensi operan diminta tetapi tidak dibutuhkan"
+
+#: config/tc-mips.c:10820
+msgid "invalid unextended operand value"
+msgstr "nilai operan tidak-eksten tidak valid"
+
+#: config/tc-mips.c:10848
+msgid "operand value out of range for instruction"
+msgstr "nilai operan diluar dari jangkauan untuk instruksi"
+
+#: config/tc-mips.c:11274
+#, c-format
+msgid "A different %s was already specified, is now %s"
+msgstr "Sebuah %s berbeda telah dispesifikasikan, sekarang %s"
+
+#: config/tc-mips.c:11513
+msgid "-call_shared is supported only for ELF format"
+msgstr "-call_shared hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11523
+msgid "-call_nonpic is supported only for ELF format"
+msgstr "-call_nonpic hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11533
+msgid "-non_shared is supported only for ELF format"
+msgstr "-non_shader hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11559
+msgid "-32 is supported for ELF format only"
+msgstr "-32 hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11568
+msgid "-n32 is supported for ELF format only"
+msgstr "-n32 hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11577
+msgid "-64 is supported for ELF format only"
+msgstr "-64 hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11582 config/tc-mips.c:11635
+msgid "No compiled in support for 64 bit object file format"
+msgstr "Tidak dikompile dalam dukungan untuk berkas format objek 64 bit"
+
+#: config/tc-mips.c:11622
+msgid "-mabi is supported for ELF format only"
+msgstr "-mabi hanya didukung untuk format ELF"
+
+#: config/tc-mips.c:11642
+#, c-format
+msgid "invalid abi -mabi=%s"
+msgstr "abi tidak valid -mabi=%s"
+
+#: config/tc-mips.c:11720
+msgid "-G not supported in this configuration."
+msgstr "-G tidak didukung dalam konfigurasi ini."
+
+#: config/tc-mips.c:11746
+#, c-format
+msgid "-%s conflicts with the other architecture options, which imply -%s"
+msgstr "-%s konflik dengan opsi arsitektur lain, yang mengindikasikan -%s"
+
+#: config/tc-mips.c:11777
+msgid "-mgp64 used with a 32-bit processor"
+msgstr "-mgp64 digunakan dengan sebuah prosesor 32 bit"
+
+#: config/tc-mips.c:11779
+msgid "-mgp32 used with a 64-bit ABI"
+msgstr "-mgp32 digunakan dengan sebuah ABI 64 bit"
+
+#: config/tc-mips.c:11781
+msgid "-mgp64 used with a 32-bit ABI"
+msgstr "-mgp64 digunakan dengan sebuah ABI 32 bit"
+
+#: config/tc-mips.c:11819
+msgid "-mfp64 used with a 32-bit fpu"
+msgstr "-mfp64 digunakan dengan sbeuah fpu 32 bit"
+
+#: config/tc-mips.c:11822
+msgid "-mfp64 used with a 32-bit ABI"
+msgstr "-mfp64 digunakan dengan sebuah ABI 32 bit"
+
+#: config/tc-mips.c:11826
+msgid "-mfp32 used with a 64-bit ABI"
+msgstr "-mfp32 digunakan dengan sebuah ABI 64 bit"
+
+#: config/tc-mips.c:11840
+msgid "trap exception not supported at ISA 1"
+msgstr "exception trap tidak didukung di ISA 1"
+
+#: config/tc-mips.c:11850
+msgid "-mfp32 used with -mips3d"
+msgstr "-mfp32 digunakan dengan -mips3d"
+
+#: config/tc-mips.c:11856
+msgid "-mfp32 used with -mdmx"
+msgstr "-mfp32 digunakan dengan -mdmx"
+
+#: config/tc-mips.c:11931
+msgid "PC relative MIPS16 instruction references a different section"
+msgstr "PC relatif MIPS16 instruksi referensi ke daerah berbeda"
+
+#: config/tc-mips.c:12229 config/tc-sparc.c:3180 config/tc-sparc.c:3187
+#: config/tc-sparc.c:3194 config/tc-sparc.c:3201 config/tc-sparc.c:3208
+#: config/tc-sparc.c:3217 config/tc-sparc.c:3228 config/tc-sparc.c:3250
+#: config/tc-sparc.c:3274 write.c:1105
+msgid "relocation overflow"
+msgstr "overflow relokasi"
+
+#: config/tc-mips.c:12239
+#, c-format
+msgid "Branch to misaligned address (%lx)"
+msgstr "Cabang ke alamat misaligned (%lx)"
+
+#: config/tc-mips.c:12286
+msgid "Branch out of range"
+msgstr "Cabang diluar dari jangkauan"
+
+#: config/tc-mips.c:12368
+#, c-format
+msgid "Alignment too large: %d. assumed."
+msgstr "Alignmen terlalu besar: %d. diasumsikan."
+
+#: config/tc-mips.c:12371
+msgid "Alignment negative: 0 assumed."
+msgstr "Alignmen negatif: 0 diasumsikan."
+
+#: config/tc-mips.c:12616
+#, c-format
+msgid "%s: no such section"
+msgstr "%s: tidak ada daerah seperti itu"
+
+#: config/tc-mips.c:12665
+#, c-format
+msgid ".option pic%d not supported"
+msgstr ".option pic%d tidak didukung"
+
+#: config/tc-mips.c:12670 config/tc-mips.c:12977
+msgid "-G may not be used with SVR4 PIC code"
+msgstr "-G tidak boleh digunakan dengan kode SVR4 PIC"
+
+#: config/tc-mips.c:12676
+#, c-format
+msgid "Unrecognized option \"%s\""
+msgstr "Opsi \"%s\" tidak dikenal"
+
+#: config/tc-mips.c:12719
+#, c-format
+msgid "Unrecognized register name `%s'"
+msgstr "Nama register `%s' tidak dikenal"
+
+#: config/tc-mips.c:12736
+msgid "`noreorder' must be set before `nomacro'"
+msgstr "`noreorder' harus diset sebelum `nomacro'"
+
+#: config/tc-mips.c:12861
+#, c-format
+msgid "unknown architecture %s"
+msgstr "arsitektur %s tidak dikenal"
+
+#: config/tc-mips.c:12874 config/tc-mips.c:12904
+#, c-format
+msgid "unknown ISA level %s"
+msgstr "ISA tingkat %s tidak dikenal"
+
+#: config/tc-mips.c:12882
+#, c-format
+msgid "unknown ISA or architecture %s"
+msgstr "ISA atau arsitektur %s tidak dikenal"
+
+#: config/tc-mips.c:12932
+msgid ".set pop with no .set push"
+msgstr ".set pop tidak dengan .set push"
+
+#: config/tc-mips.c:12961
+#, c-format
+msgid "Tried to set unrecognized symbol: %s\n"
+msgstr "Mencoba menset simbol tidak dikenal: %s\n"
+
+#: config/tc-mips.c:13019
+msgid ".cpload not in noreorder section"
+msgstr ".cpload tidak dalam daerah noreorder"
+
+#: config/tc-mips.c:13087 config/tc-mips.c:13106
+msgid "missing argument separator ',' for .cpsetup"
+msgstr "hilang argumen pemisah ',' untuk .cpsetup"
+
+#: config/tc-mips.c:13264
+#, c-format
+msgid "Unsupported use of %s"
+msgstr "Tidak didukung penggunaan dari %s"
+
+#: config/tc-mips.c:13346 config/tc-score.c:6253
+msgid "Unsupported use of .gpword"
+msgstr "Tidak didukung penggunaan dari .gpword"
+
+#: config/tc-mips.c:13386
+msgid "Unsupported use of .gpdword"
+msgstr "Tidak didukung penggunaan dari .gpdword"
+
+#: config/tc-mips.c:13731
+msgid "unsupported PC relative reference to different section"
+msgstr "tidak didukung referensi PC relatif ke daerah berbeda"
+
+#: config/tc-mips.c:13844 config/tc-xtensa.c:1556 config/tc-xtensa.c:1831
+msgid "unsupported relocation"
+msgstr "relokasi tidak didukung"
+
+#: config/tc-mips.c:14093
+#, c-format
+msgid "Can not represent %s relocation in this object file format"
+msgstr "Tidak dapat merepresentasikan relokasi %s dalam format berkas objek ini"
+
+#: config/tc-mips.c:14178
+msgid "relaxed out-of-range branch into a jump"
+msgstr "relaxed diluar-dari-jangkauan cabang kedalam sebuah lompat"
+
+#: config/tc-mips.c:14712
+msgid "missing .end at end of assembly"
+msgstr "hilang .end di akhir dari perakitan"
+
+#: config/tc-mips.c:14727 config/tc-score.c:5859
+msgid "expected simple number"
+msgstr "diduga nomor sederhana"
+
+#: config/tc-mips.c:14755 config/tc-score.c:5886
+msgid "invalid number"
+msgstr "nomor tidak valid"
+
+#: config/tc-mips.c:14926 config/tc-score.c:5926
+msgid "missing .end"
+msgstr "hilang .end"
+
+#: config/tc-mips.c:14978
+msgid "Bad .frame directive"
+msgstr "Direktif .frame buruk"
+
+#: config/tc-mips.c:15010
+msgid ".mask/.fmask outside of .ent"
+msgstr ".mask/.fmask diluar dari .ent"
+
+#: config/tc-mips.c:15017
+msgid "Bad .mask/.fmask directive"
+msgstr ".mask/.fmask direktif buruk"
+
+#: config/tc-mips.c:15342
+#, c-format
+msgid ""
+"MIPS options:\n"
+"-EB\t\t\tgenerate big endian output\n"
+"-EL\t\t\tgenerate little endian output\n"
+"-g, -g2\t\t\tdo not remove unneeded NOPs or swap branches\n"
+"-G NUM\t\t\tallow referencing objects up to NUM bytes\n"
+"\t\t\timplicitly with the gp register [default 8]\n"
+msgstr ""
+"Opsi MIPS:\n"
+"-EB\t\t\thasilkan keluaran big endian\n"
+"-EL\t\t\thasilkan keluaran little endian\n"
+"-g, -g2\t\t\tjangan hapus NOPS yang tidak dibutuhkan atau swap branch\n"
+"-G NUM\t\t\tijinkan referensi objek sampai ke NUM bytes\n"
+"\t\t\tsecara implisit dengan gp register [baku 8]\n"
+
+#: config/tc-mips.c:15349
+#, c-format
+msgid ""
+"-mips1\t\t\tgenerate MIPS ISA I instructions\n"
+"-mips2\t\t\tgenerate MIPS ISA II instructions\n"
+"-mips3\t\t\tgenerate MIPS ISA III instructions\n"
+"-mips4\t\t\tgenerate MIPS ISA IV instructions\n"
+"-mips5                  generate MIPS ISA V instructions\n"
+"-mips32                 generate MIPS32 ISA instructions\n"
+"-mips32r2               generate MIPS32 release 2 ISA instructions\n"
+"-mips64                 generate MIPS64 ISA instructions\n"
+"-mips64r2               generate MIPS64 release 2 ISA instructions\n"
+"-march=CPU/-mtune=CPU\tgenerate code/schedule for CPU, where CPU is one of:\n"
+msgstr ""
+"-mips1\t\t\thasilkan MIPS ISA I instruksi\n"
+"-mips2\t\t\thasilkan MIPS ISA II instruksi\n"
+"-mips3\t\t\thasilkan MIPS ISA III instruksi\n"
+"-mips4\t\t\thasilkan MIPS ISA IV instruksi\n"
+"-mips5                  hasilkan MIPS ISA V instruksi\n"
+"-mips32                 hasilkan MIPS32 ISA instruksi\n"
+"-mips32r2               hasilkan MIPS32 release 2 ISA instruksi\n"
+"-mips64                 hasilkan MIPS64 ISA instruksi\n"
+"-mips64r2               hasilkan MIPS64 release 2 ISA instruksi\n"
+"-march=CPU/-mtune=CPU\thasilkan kode/schedule untuk CPU, dimana CPU adalah salah satu dari:\n"
+
+#: config/tc-mips.c:15368
+#, c-format
+msgid ""
+"-mCPU\t\t\tequivalent to -march=CPU -mtune=CPU. Deprecated.\n"
+"-no-mCPU\t\tdon't generate code specific to CPU.\n"
+"\t\t\tFor -mCPU and -no-mCPU, CPU must be one of:\n"
+msgstr ""
+"-mCPU\t\t\tsama dengan -march=CPU -mtune=CPU. Kadaluarsa.\n"
+"-no-mCPU\t\tjangan hasilkan kode spesifik ke CPU.\n"
+"\t\t\tUntuk -mCPU dan -no-mCPU, CPU harus salah satu dari:\n"
+
+#: config/tc-mips.c:15381
+#, c-format
+msgid ""
+"-mips16\t\t\tgenerate mips16 instructions\n"
+"-no-mips16\t\tdo not generate mips16 instructions\n"
+msgstr ""
+"-mips16\t\t\thasilkan instruksi mips16\n"
+"-no-mips16\t\tjangan hasilkan instruksi mips16\n"
+
+#: config/tc-mips.c:15384
+#, c-format
+msgid ""
+"-msmartmips\t\tgenerate smartmips instructions\n"
+"-mno-smartmips\t\tdo not generate smartmips instructions\n"
+msgstr ""
+"-msmartmips\t\thasilkan instruksi smartmips\n"
+"-mno-smartmips\t\tjangan hasilkan instruksi smartmips\n"
+
+#: config/tc-mips.c:15387
+#, c-format
+msgid ""
+"-mdsp\t\t\tgenerate DSP instructions\n"
+"-mno-dsp\t\tdo not generate DSP instructions\n"
+msgstr ""
+"-mdsp\t\t\thasilkan instruksi DSP\n"
+"-mno-dsp\t\tjangan hasilkan instruksi DSP\n"
+
+#: config/tc-mips.c:15390
+#, c-format
+msgid ""
+"-mdspr2\t\t\tgenerate DSP R2 instructions\n"
+"-mno-dspr2\t\tdo not generate DSP R2 instructions\n"
+msgstr ""
+"-mdspr2\t\t\thasilkan instruksi DSP R2\n"
+"-mno-dpsr2\t\tjangan hasilkan instruksi DSP R2\n"
+
+#: config/tc-mips.c:15393
+#, c-format
+msgid ""
+"-mmt\t\t\tgenerate MT instructions\n"
+"-mno-mt\t\t\tdo not generate MT instructions\n"
+msgstr ""
+"-mmt\t\t\thasilkan instruksi MT\n"
+"-mno-mt\t\t\tjangan hasilkan instruksi MT\n"
+
+#: config/tc-mips.c:15396
+#, c-format
+msgid ""
+"-mfix-vr4120\t\twork around certain VR4120 errata\n"
+"-mfix-vr4130\t\twork around VR4130 mflo/mfhi errata\n"
+"-mgp32\t\t\tuse 32-bit GPRs, regardless of the chosen ISA\n"
+"-mfp32\t\t\tuse 32-bit FPRs, regardless of the chosen ISA\n"
+"-msym32\t\t\tassume all symbols have 32-bit values\n"
+"-O0\t\t\tremove unneeded NOPs, do not swap branches\n"
+"-O\t\t\tremove unneeded NOPs and swap branches\n"
+"--trap, --no-break\ttrap exception on div by 0 and mult overflow\n"
+"--break, --no-trap\tbreak exception on div by 0 and mult overflow\n"
+msgstr ""
+"-mfix-vr4120\t\tperbaiki kesalahan dalam beberapa VR4120\n"
+"-mfix-vr4130\t\tperbaiki kesalahan dalam VR4130 mflo/mfhi\n"
+"-mgp32\t\t\tgunakan 32 bit GPR, tidak peduli ISA yang dipilih\n"
+"-mfp32\t\t\tgunakan 32 bit FPR, tidak peduli ISA yang dipilih\n"
+"-msym32\t\t\tasumsikan seluruh simbol memiliki nilai 32 bit\n"
+"-O0\t\t\thapus NOP yang tidak dibutuhkan, jangan swap branch\n"
+"-O\t\t\thapus NOP yang tidak dibutuhkan dan swap branch\n"
+"--trap, --no-break\ttrap exception di pembagian dengan nol dan overflow multiplikasi\n"
+"--break, --no-trap\tbreak exception di pembagian dengan nol dan overflow multiplikasi\n"
+
+#: config/tc-mips.c:15406
+#, c-format
+msgid ""
+"-mhard-float\t\tallow floating-point instructions\n"
+"-msoft-float\t\tdo not allow floating-point instructions\n"
+"-msingle-float\t\tonly allow 32-bit floating-point operations\n"
+"-mdouble-float\t\tallow 32-bit and 64-bit floating-point operations\n"
+"--[no-]construct-floats [dis]allow floating point values to be constructed\n"
+msgstr ""
+"-mhard-float\t\tijinkan instruksi floating-point\n"
+"-msoft-float\t\tjangan ijinkan instruksi floating-point\n"
+"-msingle-float\t\thanya ijinkan operasi 32 bit floating-point\n"
+"-mdouble-float\t\tijinkan operasi 32 bit dan 64 bit floating-point\n"
+"--[no-]construct-floats [dis]allow nilai floating point untuk dikonstruksi\n"
+
+#: config/tc-mips.c:15414
+#, c-format
+msgid ""
+"-KPIC, -call_shared\tgenerate SVR4 position independent code\n"
+"-call_nonpic\t\tgenerate non-PIC code that can operate with DSOs\n"
+"-mvxworks-pic\t\tgenerate VxWorks position independent code\n"
+"-non_shared\t\tdo not generate code that can operate with DSOs\n"
+"-xgot\t\t\tassume a 32 bit GOT\n"
+"-mpdr, -mno-pdr\t\tenable/disable creation of .pdr sections\n"
+"-mshared, -mno-shared   disable/enable .cpload optimization for\n"
+"                        position dependent (non shared) code\n"
+"-mabi=ABI\t\tcreate ABI conformant object file for:\n"
+msgstr ""
+"-KPIC, -call_shared\thasilkan kode bebas posisi SVR4\n"
+"-call_nonpic\t\thasilkan kode bukan-PIC yang dapat beroperasi dengan DSO\n"
+"-mvxworks-pic\t\thasilkan kode bebas posisi VxWorks\n"
+"-non_shared\t\tjangan hasilkan kode yang dapat beroperasi dengan DSO\n"
+"-xgot\t\t\tasumsikan sebuah GOT 32 bit\n"
+"-mpdr, -mno-pdr\t\taktifkan/non-aktifkan pembuatan dari daerah .pdr\n"
+"-mshared, -mno-shared non-aktifkan/aktifkan optimisasi .cpload untuk\n"
+"                       kode bebas posisi (tidak terbagi)\n"
+"-mabi=ABI\t\tbuak berkas objek konforman ABI untuk:\n"
+
+#: config/tc-mips.c:15435
+#, c-format
+msgid ""
+"-32\t\t\tcreate o32 ABI object file (default)\n"
+"-n32\t\t\tcreate n32 ABI object file\n"
+"-64\t\t\tcreate 64 ABI object file\n"
+msgstr ""
+"-32\t\t\tbuat o32 ABI berkas objek (baku)\n"
+"-n32\t\t\tbuat n32 ABI berkas objek\n"
+"-64\t\t\tbuat 64 ABI berkas objek\n"
+
+#: config/tc-mmix.c:693
+#, c-format
+msgid " MMIX-specific command line options:\n"
+msgstr " Opsi MMIX-spesifik baris perintah:\n"
+
+#: config/tc-mmix.c:694
+#, c-format
+msgid ""
+"  -fixed-special-register-names\n"
+"                          Allow only the original special register names.\n"
+msgstr ""
+"  -fixed-special-regiter-names\n"
+"                          Hanya ijinkan nama register spesial asli.\n"
+
+#: config/tc-mmix.c:697
+#, c-format
+msgid "  -globalize-symbols      Make all symbols global.\n"
+msgstr "  -globalize-symbols      Buat seluruh simbol global.\n"
+
+#: config/tc-mmix.c:699
+#, c-format
+msgid "  -gnu-syntax             Turn off mmixal syntax compatibility.\n"
+msgstr "  -gnu-syntax             Non-aktifkan kompabilitas mmxial syntax.\n"
+
+#: config/tc-mmix.c:701
+#, c-format
+msgid "  -relax                  Create linker relaxable code.\n"
+msgstr "  -relax                  Buat kode linker relaxable.\n"
+
+#: config/tc-mmix.c:703
+#, c-format
+msgid ""
+"  -no-predefined-syms     Do not provide mmixal built-in constants.\n"
+"                          Implies -fixed-special-register-names.\n"
+msgstr ""
+"  -no-predefined-syms     Jangan sediakan mmixal konstanta built-in.\n"
+"                          Mengindikasikan -fixed-special-register-names.\n"
+
+#: config/tc-mmix.c:706
+#, c-format
+msgid ""
+"  -no-expand              Do not expand GETA, branches, PUSHJ or JUMP\n"
+"                          into multiple instructions.\n"
+msgstr ""
+"  -no-expand              Jangan expan GET, branches, PUSJ atau JUMP\n"
+"                          kedalam instruksi perkalian.\n"
+
+#: config/tc-mmix.c:709
+#, c-format
+msgid "  -no-merge-gregs         Do not merge GREG definitions with nearby values.\n"
+msgstr "  -no-merge-gregs         Jangan gabungkan defingis GREG dengan nilai terdekat.\n"
+
+#: config/tc-mmix.c:711
+#, c-format
+msgid "  -linker-allocated-gregs If there's no suitable GREG definition for the                          operands of an instruction, let the linker resolve.\n"
+msgstr "  -linker-allocated-gregs Jika disana tidak ada definisi GREG yang sesuai untuk operan dari instruksi, biarkan linker menyelesaikannya.\n"
+
+#: config/tc-mmix.c:714
+#, c-format
+msgid ""
+"  -x                      Do not warn when an operand to GETA, a branch,\n"
+"                          PUSHJ or JUMP is not known to be within range.\n"
+"                          The linker will catch any errors.  Implies\n"
+"                          -linker-allocated-gregs."
+msgstr ""
+"  -x                      Jangan peringatkan ketika sebuah operan dengan GET, sebuah cabang,\n"
+"                          PUSHJ atau JUMP tidak diketahui dalam jangkauan.\n"
+"                          Linker akan menangkap error apapun. Mengindikasikan\n"
+"                          -linker-allocated-gregs."
+
+#: config/tc-mmix.c:840
+#, c-format
+msgid "unknown opcode: `%s'"
+msgstr "opkode tidak dikenal: `%s'"
+
+#: config/tc-mmix.c:962 config/tc-mmix.c:977
+msgid "specified location wasn't TETRA-aligned"
+msgstr "lokasi yang dispesifikasikan tidak dalam TETRA-aligned"
+
+#: config/tc-mmix.c:964 config/tc-mmix.c:979 config/tc-mmix.c:4100
+#: config/tc-mmix.c:4116
+msgid "unaligned data at an absolute location is not supported"
+msgstr "data tidak teralign berada dalam lokasi absolut tidak didukung"
+
+#: config/tc-mmix.c:1089
+#, c-format
+msgid "invalid operand to opcode %s: `%s'"
+msgstr "operan ke opkode %s tidak valid: `%s'"
+
+#: config/tc-mmix.c:1111 config/tc-mmix.c:1138 config/tc-mmix.c:1171
+#: config/tc-mmix.c:1179 config/tc-mmix.c:1196 config/tc-mmix.c:1224
+#: config/tc-mmix.c:1245 config/tc-mmix.c:1270 config/tc-mmix.c:1318
+#: config/tc-mmix.c:1416 config/tc-mmix.c:1441 config/tc-mmix.c:1473
+#: config/tc-mmix.c:1505 config/tc-mmix.c:1535 config/tc-mmix.c:1588
+#: config/tc-mmix.c:1605 config/tc-mmix.c:1632 config/tc-mmix.c:1660
+#: config/tc-mmix.c:1687 config/tc-mmix.c:1713 config/tc-mmix.c:1729
+#: config/tc-mmix.c:1755 config/tc-mmix.c:1771 config/tc-mmix.c:1787
+#: config/tc-mmix.c:1850 config/tc-mmix.c:1866
+#, c-format
+msgid "invalid operands to opcode %s: `%s'"
+msgstr "operan ke opkode %s tidak valid: `%s'"
+
+#: config/tc-mmix.c:1843
+#, c-format
+msgid "unsupported operands to %s: `%s'"
+msgstr "operan ke %s tidak didukung: `%s'"
+
+#: config/tc-mmix.c:1968
+msgid "internal: mmix_prefix_name but empty prefix"
+msgstr "internal: mmix_prefix_name tetapi awalan kosong"
+
+#: config/tc-mmix.c:2012
+#, c-format
+msgid "too many GREG registers allocated (max %d)"
+msgstr "terlalu banyak register GREG yang dialokasikan (maksimal %d)"
+
+#: config/tc-mmix.c:2070
+msgid "BSPEC already active.  Nesting is not supported."
+msgstr "BSPEC telah aktif. Nesting tidak didukung."
+
+#: config/tc-mmix.c:2079
+msgid "invalid BSPEC expression"
+msgstr "pernyataan BSPEC tidak valid"
+
+#: config/tc-mmix.c:2095
+#, c-format
+msgid "can't create section %s"
+msgstr "tidak dapat membuat daerah %s"
+
+#: config/tc-mmix.c:2100
+#, c-format
+msgid "can't set section flags for section %s"
+msgstr "tidak dapt menset tanda daerah untuk daerah %s"
+
+#: config/tc-mmix.c:2121
+msgid "ESPEC without preceding BSPEC"
+msgstr "ESPEC tanpa awalan BSPEC"
+
+#: config/tc-mmix.c:2150
+msgid "missing local expression"
+msgstr "hilang pernyataan lokal"
+
+#: config/tc-mmix.c:2360
+msgid "operand out of range, instruction expanded"
+msgstr "operan diluar dari jangkauan, instruksi diekspan"
+
+#. The BFD_RELOC_MMIX_LOCAL-specific message is supposed to be
+#. user-friendly, though a little bit non-substantial.
+#: config/tc-mmix.c:2611
+msgid "directive LOCAL must be placed in code or data"
+msgstr "direktif LOCAL harus diletakan dalam kode atau data"
+
+#: config/tc-mmix.c:2612
+msgid "internal confusion: relocation in a section without contents"
+msgstr "internal confusion: relokasi dalam sebuah daerah tanpa isi"
+
+#: config/tc-mmix.c:2726
+msgid "internal: BFD_RELOC_MMIX_BASE_PLUS_OFFSET not resolved to section"
+msgstr "internal: BFD_RELOC_MMIX_BASE_PLUS_OFFSET tidak terselesaikan ke daerah"
+
+#: config/tc-mmix.c:2774
+msgid "no suitable GREG definition for operands"
+msgstr "tidap ada definisi GREG yang sesuai untuk operan"
+
+#: config/tc-mmix.c:2833
+msgid "operands were not reducible at assembly-time"
+msgstr "operan tidak terbagi di waktu-perakitan"
+
+#: config/tc-mmix.c:2860
+#, c-format
+msgid "cannot generate relocation type for symbol %s, code %s"
+msgstr "tidak dapat menghasilkan relokasi tipe untuk simbol %s, kode %s"
+
+#: config/tc-mmix.c:2880
+#, c-format
+msgid "internal: unhandled label %s"
+msgstr "internal: label tidak tertangani %s"
+
+#: config/tc-mmix.c:2910
+msgid "[0-9]H labels may not appear alone on a line"
+msgstr "[0-9]H label mungkin tidak terlihat sendiri di sebuah baris"
+
+#: config/tc-mmix.c:2919
+msgid "[0-9]H labels do not mix with dot-pseudos"
+msgstr "[0-9]H jangan mencampurkan label dengan dot-pseudo"
+
+#: config/tc-mmix.c:3007
+msgid "invalid characters in input"
+msgstr "karakter tidak valid dalam masukan"
+
+#: config/tc-mmix.c:3113
+msgid "empty label field for IS"
+msgstr "field label kosong untuk IS"
+
+#: config/tc-mmix.c:3439
+#, c-format
+msgid "internal: unexpected relax type %d:%d"
+msgstr "internal: tipe relax %d tidak diduga: %d"
+
+#: config/tc-mmix.c:3461
+msgid "BSPEC without ESPEC."
+msgstr "BSPEC tanpa ESPEC."
+
+#: config/tc-mmix.c:3661
+msgid "GREG expression too complicated"
+msgstr "GREG ekspresi terlalu komplesk"
+
+#: config/tc-mmix.c:3676
+msgid "internal: GREG expression not resolved to section"
+msgstr "internal: pernyataan GREP tidak terselesaikan ke daerah"
+
+#: config/tc-mmix.c:3725
+msgid "register section has contents\n"
+msgstr "daerah register memiliki isi\n"
+
+#: config/tc-mmix.c:3852
+msgid "section change from within a BSPEC/ESPEC pair is not supported"
+msgstr "daerah berubah dari dalam sebuah pasangan BSPEC/ESPEC tidak didukung"
+
+#: config/tc-mmix.c:3873
+msgid "directive LOC from within a BSPEC/ESPEC pair is not supported"
+msgstr "direktif LOC dari dalam sebuah pasangan BSPEC/ESPEC tidak didukung"
+
+#: config/tc-mmix.c:3884
+msgid "invalid LOC expression"
+msgstr "pernyataan LOC tidak valid"
+
+#: config/tc-mmix.c:3911 config/tc-mmix.c:3938
+msgid "LOC expression stepping backwards is not supported"
+msgstr "pernyataan LOC melangkah kebelakang tidak didukung"
+
+#. We will only get here in rare cases involving #NO_APP,
+#. where the unterminated string is not recognized by the
+#. preformatting pass.
+#: config/tc-mmix.c:4022 config/tc-mmix.c:4182 config/tc-z80.c:1691
+msgid "unterminated string"
+msgstr "string tidak terselesaikan"
+
+#: config/tc-mmix.c:4039
+msgid "BYTE expression not a pure number"
+msgstr "pernyataan BYTE not a pure number"
+
+#. Note that mmixal does not allow negative numbers in
+#. BYTE sequences, so neither should we.
+#: config/tc-mmix.c:4048
+msgid "BYTE expression not in the range 0..255"
+msgstr "pernyataan BYTE tidak dalam daerah 0..255"
+
+#: config/tc-mmix.c:4098 config/tc-mmix.c:4114
+msgid "data item with alignment larger than location"
+msgstr "item data dengan alignmen lebih besar dari lokasi"
+
+#. Since integer_constant is local to expr.c, we have to make this a
+#. macro.  FIXME: Do it cleaner.
+#: config/tc-mmix.h:104
+msgid "`&' serial number operator is not supported"
+msgstr "`&' operator nomor serial tidak didukung"
+
+#: config/tc-mn10200.c:304
+#, c-format
+msgid ""
+"MN10200 options:\n"
+"none yet\n"
+msgstr ""
+"opsi MN10200:\n"
+"belum ada\n"
+
+#: config/tc-mn10200.c:898 config/tc-mn10300.c:1249 config/tc-ppc.c:2297
+#: config/tc-s390.c:1527 config/tc-v850.c:1604
+#, c-format
+msgid "Unrecognized opcode: `%s'"
+msgstr "Opkode tidak dikenal: `%s'"
+
+#: config/tc-mn10300.c:441
+#, c-format
+msgid ""
+"MN10300 assembler options:\n"
+"none yet\n"
+msgstr ""
+"Opsi perakit MN10300:\n"
+"belum ada\n"
+
+#: config/tc-mn10300.c:1065 config/tc-sh.c:776 config/tc-z80.c:671 read.c:4226
+#, c-format
+msgid "unsupported BFD relocation size %u"
+msgstr "ukuran relokasi BFD %u tidak didukung"
+
+#: config/tc-mn10300.c:1266
+msgid "Invalid opcode/operands"
+msgstr "opkode/operan tidak valid"
+
+#: config/tc-mn10300.c:1791
+msgid "Invalid register specification."
+msgstr "Spesifikasi register tidak valid."
+
+#: config/tc-mn10300.c:2383
+#, c-format
+msgid "Bad relocation fixup type (%d)"
+msgstr "Tipe perbaikan relokasi (%d) buruk"
+
+#: config/tc-msp430.c:547
+msgid ".profiler pseudo requires at least two operands."
+msgstr ".profiler pseudo membutuhkan paling tidak dua operan."
+
+#: config/tc-msp430.c:606
+msgid "unknown profiling flag - ignored."
+msgstr "tanda profiling tidak diketahui - diabaikan."
+
+#: config/tc-msp430.c:622
+msgid "ambiguous flags combination - '.profiler' directive ignored."
+msgstr "kombinasi tanda - ambigu '.profiler' direktif diabaikan."
+
+#: config/tc-msp430.c:632
+msgid "profiling in absolute section?"
+msgstr "profiling dalam daerah absolut?"
+
+#: config/tc-msp430.c:721
+#, c-format
+msgid "Known MCU names:\n"
+msgstr "Nama MCU yang diketahui:\n"
+
+#: config/tc-msp430.c:724
+#, c-format
+msgid "\t %s\n"
+msgstr "\t %s\n"
+
+#: config/tc-msp430.c:750
+#, c-format
+msgid "redefinition of mcu type %s' to %s'"
+msgstr "redefinisi dari tipe mcu %s' ke %s'"
+
+#: config/tc-msp430.c:793
+#, c-format
+msgid ""
+"MSP430 options:\n"
+"  -mmcu=[msp430-name] select microcontroller type\n"
+"                  msp430x110  msp430x112\n"
+"                  msp430x1101 msp430x1111\n"
+"                  msp430x1121 msp430x1122 msp430x1132\n"
+"                  msp430x122  msp430x123\n"
+"                  msp430x1222 msp430x1232\n"
+"                  msp430x133  msp430x135\n"
+"                  msp430x1331 msp430x1351\n"
+"                  msp430x147  msp430x148  msp430x149\n"
+"                  msp430x155  msp430x156  msp430x157\n"
+"                  msp430x167  msp430x168  msp430x169\n"
+"                  msp430x1610 msp430x1611 msp430x1612\n"
+"                  msp430x311  msp430x312  msp430x313  msp430x314  msp430x315\n"
+"                  msp430x323  msp430x325\n"
+"                  msp430x336  msp430x337\n"
+"                  msp430x412  msp430x413  msp430x415  msp430x417\n"
+"                  msp430xE423 msp430xE425 msp430E427\n"
+"                  msp430xW423 msp430xW425 msp430W427\n"
+"                  msp430xG437 msp430xG438 msp430G439\n"
+"                  msp430x435  msp430x436  msp430x437\n"
+"                  msp430x447  msp430x448  msp430x449\n"
+msgstr ""
+"opsi MSP430:\n"
+"  -mmcu=[msp430-name] pilih tipe mikrokontroler\n"
+"                  msp430x110  msp430x112\n"
+"                  msp430x1101 msp430x1111\n"
+"                  msp430x1121 msp430x1122 msp430x1132\n"
+"                  msp430x122  msp430x123\n"
+"                  msp430x1222 msp430x1232\n"
+"                  msp430x133  msp430x135\n"
+"                  msp430x1331 msp430x1351\n"
+"                  msp430x147  msp430x148  msp430x149\n"
+"                  msp430x155  msp430x156  msp430x157\n"
+"                  msp430x167  msp430x168  msp430x169\n"
+"                  msp430x1610 msp430x1611 msp430x1612\n"
+"                  msp430x311  msp430x312  msp430x313  msp430x314  msp430x315\n"
+"                  msp430x323  msp430x325\n"
+"                  msp430x336  msp430x337\n"
+"                  msp430x412  msp430x413  msp430x415  msp430x417\n"
+"                  msp430xE423 msp430xE425 msp430E427\n"
+"                  msp430xW423 msp430xW425 msp430W427\n"
+"                  msp430xG437 msp430xG438 msp430G439\n"
+"                  msp430x435  msp430x436  msp430x437\n"
+"                  msp430x447  msp430x448  msp430x449\n"
+
+#: config/tc-msp430.c:816
+#, c-format
+msgid ""
+"  -mQ - enable relaxation at assembly time. DANGEROUS!\n"
+"  -mP - enable polymorph instructions\n"
+msgstr ""
+"  -mQ - aktifkan relaksasi di waktu perakitan. BERBAHAYA!\n"
+"  -mP - aktifkan instruksi polymorph\n"
+
+#: config/tc-msp430.c:970
+#, c-format
+msgid "value %d out of range. Use #lo() or #hi()"
+msgstr "nilai %d diluar dari jangkauan. Gunakan #lo() atau #hi()"
+
+#: config/tc-msp430.c:1058
+#, c-format
+msgid "unknown expression in operand %s. use #llo() #lhi() #hlo() #hhi() "
+msgstr "pernyataan dalam operan %s tidak dikenal. gunakan #llo() #lhi() @hhi() "
+
+#: config/tc-msp430.c:1109
+#, c-format
+msgid "Registers cannot be used within immediate expression [%s]"
+msgstr "Register tidak dapat digunakan dalam ekspresi langsung [%s]"
+
+#: config/tc-msp430.c:1111
+#, c-format
+msgid "unknown operand %s"
+msgstr "operan %s tidak dikenal"
+
+#: config/tc-msp430.c:1133 config/tc-msp430.c:1268
+#, c-format
+msgid "value out of range: %d"
+msgstr "nilai diluar dari jangkauan: %d"
+
+#: config/tc-msp430.c:1144
+#, c-format
+msgid "Registers cannot be used within absolute expression [%s]"
+msgstr "Register tidak dapat digunakan dalam ekspresi absolut [%s]"
+
+#: config/tc-msp430.c:1146 config/tc-msp430.c:1289
+#, c-format
+msgid "unknown expression in operand %s"
+msgstr "ekspresi dalam operan %s tidak diketahui"
+
+#: config/tc-msp430.c:1160 config/tc-msp430.c:1167
+#, c-format
+msgid "unknown addressing mode %s"
+msgstr "mode pengalamatan %s tidak diketahui"
+
+#: config/tc-msp430.c:1175
+#, c-format
+msgid "Bad register name r%s"
+msgstr "Nama register r%s buruk"
+
+#: config/tc-msp430.c:1187
+#, c-format
+msgid "MSP430 does not have %d registers"
+msgstr "MSP430 tidak memiliki register %d"
+
+#: config/tc-msp430.c:1207
+msgid "')' required"
+msgstr "dibutuhkan ')'"
+
+#: config/tc-msp430.c:1220
+#, c-format
+msgid "unknown operator %s. Did you mean X(Rn) or #[hl][hl][oi](CONST) ?"
+msgstr "operator %s tidak diketahui. Apakah yang anda maksud X(Rn) atau #[hl][hl][oi](CONST)?"
+
+#: config/tc-msp430.c:1229
+#, c-format
+msgid "unknown operator (r%s substituted as a register name"
+msgstr "operator tidak diketahui (r%s) digantikan sebagai sebuah nama register"
+
+#: config/tc-msp430.c:1241 config/tc-msp430.c:1252
+#, c-format
+msgid "unknown operator %s"
+msgstr "operator %s tidak diketahui"
+
+#: config/tc-msp430.c:1246
+msgid "r2 should not be used in indexed addressing mode"
+msgstr "r2 seharusnya tidak digunakan dalam mode pengalamatan terindeks"
+
+#: config/tc-msp430.c:1287
+#, c-format
+msgid "Registers cannot be used as a prefix of indexed expression [%s]"
+msgstr "Register tidak dapat digunakan sebagai sebuah awalan dari pernyataan terindeks [%s]"
+
+#. Unreachable.
+#: config/tc-msp430.c:1336
+#, c-format
+msgid "unknown addressing mode for operand %s"
+msgstr "mode pengalamatan tidak diketahui untuk operan %s"
+
+#: config/tc-msp430.c:1361
+#, c-format
+msgid "Internal bug. Try to use 0(r%d) instead of @r%d"
+msgstr "Internal bug. Coba gunakan 0(r%d) daripada menggunakan @r%d"
+
+#: config/tc-msp430.c:1371
+msgid "this addressing mode is not applicable for destination operand"
+msgstr "mode pengalamatan ini tidak berjalan untuk operan tujuan"
+
+#: config/tc-msp430.c:1415
+#, c-format
+msgid "instruction %s requires %d operand(s)"
+msgstr "instruksi %s membutuhkan %d operan"
+
+#: config/tc-msp430.c:1668
+#, c-format
+msgid "Even number required. Rounded to %d"
+msgstr "nomor genap dibutuhkan. Dibulatkan ke %d"
+
+#: config/tc-msp430.c:1679
+#, c-format
+msgid "Wrong displacement  %d"
+msgstr "Displacement salah %d"
+
+#: config/tc-msp430.c:1696
+msgid "instruction requires label sans '$'"
+msgstr "instruksi membutuhkan label tanpa '$'"
+
+#: config/tc-msp430.c:1701
+msgid "instruction requires label or value in range -511:512"
+msgstr "instruksi membutuhkan label atau nilai dalam jangkauan -511:512"
+
+#: config/tc-msp430.c:1708 config/tc-msp430.c:1752 config/tc-msp430.c:1791
+msgid "instruction requires label"
+msgstr "instruksi membutuhkan label"
+
+#: config/tc-msp430.c:1716 config/tc-msp430.c:1758
+msgid "polymorphs are not enabled. Use -mP option to enable."
+msgstr "polymorphs tidak aktif. Gunakan opsi -mP untuk meng-aktifkan."
+
+#: config/tc-msp430.c:1795
+msgid "Illegal instruction or not implemented opcode."
+msgstr "Instruksi tidak legal atau opkode tidak terimplementasi."
+
+#: config/tc-msp430.c:2145
+#, c-format
+msgid "internal inconsistency problem in %s: insn %04lx"
+msgstr "masalah internal tidak konsisten dalam %s: instruksi %04lx"
+
+#: config/tc-msp430.c:2175 config/tc-msp430.c:2198
+#, c-format
+msgid "internal inconsistency problem in %s: ext. insn %04lx"
+msgstr "masalah internal tidak konsisten dalam %s: eksternal instruksi %04lx"
+
+#: config/tc-msp430.c:2210
+#, c-format
+msgid "internal inconsistency problem in %s:  %lx"
+msgstr "masalah internal tidak konsisten dalam %s: %lx"
+
+#: config/tc-mt.c:151
+#, c-format
+msgid "MT specific command line options:\n"
+msgstr "opsi MT spesifik baris perintah:\n"
+
+#: config/tc-mt.c:152
+#, c-format
+msgid "  -march=ms1-64-001         allow ms1-64-001 instructions\n"
+msgstr "  -march=ms1-64-001         ijingkan ms1-64-001 instruksi\n"
+
+#: config/tc-mt.c:153
+#, c-format
+msgid "  -march=ms1-16-002         allow ms1-16-002 instructions (default)\n"
+msgstr "  -march=ms1-16-002         ijinkan ms1-16-002 instruksi (baku)\n"
+
+#: config/tc-mt.c:154
+#, c-format
+msgid "  -march=ms1-16-003         allow ms1-16-003 instructions\n"
+msgstr "  -march=ms1-16-003         ijinkan ms1-16-003 instruksi\n"
+
+#: config/tc-mt.c:155
+#, c-format
+msgid "  -march=ms2                allow ms2 instructions \n"
+msgstr "  -march=ms2                ijinkan instruksi ms2\n"
+
+#: config/tc-mt.c:156
+#, c-format
+msgid "  -nosched                  disable scheduling restrictions\n"
+msgstr "  -nosched                  non-aktifkan pembatasan penjadwalan\n"
+
+#: config/tc-mt.c:224
+#, c-format
+msgid "instruction %s may not follow another memory access instruction."
+msgstr "instruksi %s mungkin tidak diikuti instruksi akses memori lain."
+
+#: config/tc-mt.c:230
+#, c-format
+msgid "instruction %s may not follow another I/O instruction."
+msgstr "instruksi %s mungkin tidak diikuti instruksi I/O lain."
+
+#: config/tc-mt.c:236
+#, c-format
+msgid "%s may not occupy the delay slot of another branch insn."
+msgstr "%s mungkin tidak mengisi delay slot dari instruksi cabang lain."
+
+#: config/tc-mt.c:261
+#, c-format
+msgid "operand references R%ld of previous instrutcion."
+msgstr "referensi operan R%ld dari instruksi sebelumnya."
+
+#: config/tc-mt.c:267
+#, c-format
+msgid "operand references R%ld of instructcion before previous."
+msgstr "referensi operan R%ld dari instruksi sebelumnya."
+
+#: config/tc-mt.c:281 config/tc-mt.c:286
+#, c-format
+msgid "conditional branch or jal insn's operand references R%ld of previous arithmetic or logic insn."
+msgstr "percabangan kondisional atau jal instruksi operan referensi R%ld dari sebelumnya aritmetik atau logik instruksi."
+
+#: config/tc-mt.c:348
+msgid "md_estimate_size_before_relax\n"
+msgstr "md_estimate_size_before_relax\n"
+
+#: config/tc-ns32k.c:439
+msgid "Invalid syntax in PC-relative addressing mode"
+msgstr "Sintaks tidak valid dalam mode pengalamatan PC-relatif"
+
+#: config/tc-ns32k.c:463
+msgid "Invalid syntax in External addressing mode"
+msgstr "Sintaks tidak valid dalam mode pengalamatan eksternal"
+
+#: config/tc-ns32k.c:544
+msgid "Invalid syntax in Memory Relative addressing mode"
+msgstr "Sintaks tidak valid dalam mode pengalamatan memori relatif"
+
+#: config/tc-ns32k.c:611
+msgid "Invalid scaled-indexed mode, use (b,w,d,q)"
+msgstr "Mode skale-indeks tidak valid, gunakan (b,w,d,q)"
+
+#: config/tc-ns32k.c:616
+msgid "Syntax in scaled-indexed mode, use [Rn:m] where n=[0..7] m={b,w,d,q}"
+msgstr "Sintaks dalam mode skala-indeks, gunakan [Rn:m] dimana n=[0..7] m={b,w,d,q}"
+
+#: config/tc-ns32k.c:621
+msgid "Scaled-indexed addressing mode combined with scaled-index"
+msgstr "Mode pengalamatan skala-indeks dikombinasikan dengan skala-indeks"
+
+#: config/tc-ns32k.c:632
+msgid "Invalid or illegal addressing mode combined with scaled-index"
+msgstr "Mode pengalamatan tidak valid atau tidak legal dikombinasikan dengan skala-indeks"
+
+#: config/tc-ns32k.c:755
+msgid "Premature end of suffix -- Defaulting to d"
+msgstr "Akhir prematus dari akhiran - Baku ke d"
+
+#: config/tc-ns32k.c:768
+msgid "Bad suffix after ':' use {b|w|d} Defaulting to d"
+msgstr "Akhiran buruk setelah ':' gunakan {b|w|d} baku ke d"
+
+#: config/tc-ns32k.c:813
+msgid "Very short instr to option, ie you can't do it on a NULLstr"
+msgstr "Sangat pendek instruksi ke opsi, anda tidak dapat melakukan ini di NULLstr"
+
+#: config/tc-ns32k.c:863
+msgid "No such entry in list. (cpu/mmu register)"
+msgstr "Tidak ada masukan seperti itu dalam daftar. (cpu/mmu register)"
+
+#: config/tc-ns32k.c:920
+msgid "Internal consistency error.  check ns32k-opcode.h"
+msgstr "Internal konsistensi error. periksa ns32k-opcode.h"
+
+#: config/tc-ns32k.c:944
+msgid "Address of immediate operand"
+msgstr "Alamat dari operan langsung"
+
+#: config/tc-ns32k.c:945
+msgid "Invalid immediate write operand."
+msgstr "Operan immediate write tidak valid."
+
+#: config/tc-ns32k.c:1075
+msgid "Bad opcode-table-option, check in file ns32k-opcode.h"
+msgstr "opcode-table-option buruk, periksa dalam berkas ns32k-opcode.h"
+
+#: config/tc-ns32k.c:1108
+msgid "No such opcode"
+msgstr "Tidak ada opkode seperti itu"
+
+#: config/tc-ns32k.c:1183
+msgid "Bad suffix, defaulting to d"
+msgstr "Akhiran buruk, baku ke d"
+
+#: config/tc-ns32k.c:1210
+msgid "Too many operands passed to instruction"
+msgstr "Terlalu banyak operan dilewatkan ke instruksi"
+
+#. Check error in default.
+#: config/tc-ns32k.c:1222
+msgid "Wrong numbers of operands in default, check ns32k-opcodes.h"
+msgstr "Nomor salah dalam operan dalam default, periksa ns32k-opcodes.h"
+
+#: config/tc-ns32k.c:1225
+msgid "Wrong number of operands"
+msgstr "Nomor salah dari operan"
+
+#: config/tc-ns32k.c:1298
+#, c-format
+msgid "Can not do %d byte pc-relative relocation for storage type %d"
+msgstr "Tidak dapat melakukan %d byte pc-relatif relokasi untuk tipe penyimpanan %d"
+
+#: config/tc-ns32k.c:1301
+#, c-format
+msgid "Can not do %d byte relocation for storage type %d"
+msgstr "Tidak dapat melakukan %d byte relokasi untuk tipe penyimpanan %d"
+
+#: config/tc-ns32k.c:1393
+#, c-format
+msgid "value of %ld out of byte displacement range."
+msgstr "nilai dari %ld diluar dari jangkauan byte displacement."
+
+#: config/tc-ns32k.c:1403
+#, c-format
+msgid "value of %ld out of word displacement range."
+msgstr "nilai dari %ld diluar dari jangkauan word displacement."
+
+#: config/tc-ns32k.c:1418
+#, c-format
+msgid "value of %ld out of double word displacement range."
+msgstr "nilai dari %ld diluar dari jangkauan double word displacement."
+
+#: config/tc-ns32k.c:1439
+#, c-format
+msgid "Internal logic error.  line %d, file \"%s\""
+msgstr "Internal logik error. baris %d, berkas \"%s\""
+
+#: config/tc-ns32k.c:1487
+#, c-format
+msgid "Internal logic error. line %d, file \"%s\""
+msgstr "Internal logik error. baris %d, berkas \"%s\""
+
+#: config/tc-ns32k.c:1588
+msgid "Bit field out of range"
+msgstr "Bit field diluar dari jangkauan"
+
+#: config/tc-ns32k.c:1688
+msgid "iif convert internal pcrel/binary"
+msgstr "iif mengubah internal pcrel/binary"
+
+#: config/tc-ns32k.c:1705
+msgid "Bignum too big for long"
+msgstr "Bignum terlalu besar untuk long"
+
+#: config/tc-ns32k.c:1782
+msgid "iif convert internal pcrel/pointer"
+msgstr "iif mengubah internal pcrel/pointer"
+
+#: config/tc-ns32k.c:1787
+msgid "Internal logic error in iif.iifP[n].type"
+msgstr "Internal logik error dalam iif.iifP[n].type"
+
+#. We cant relax this case.
+#: config/tc-ns32k.c:1823
+msgid "Can't relax difference"
+msgstr "Tidak dapat relaks perbedaan"
+
+#: config/tc-ns32k.c:1864
+msgid "Displacement too large for :d"
+msgstr "Displacement terlalu besar untuk :d"
+
+#: config/tc-ns32k.c:1877
+msgid "Internal logic error in iif.iifP[].type"
+msgstr "Internal logik errro dalam iif.iifP[].type"
+
+#. Fatal.
+#: config/tc-ns32k.c:1909
+#, c-format
+msgid "Can't hash %s: %s"
+msgstr "Tidak dapat hash %s: %s"
+
+#: config/tc-ns32k.c:2145
+#, c-format
+msgid "invalid architecture option -m%s, ignored"
+msgstr "opsi arsitektur -m%s tidak valid, diabaikan"
+
+#: config/tc-ns32k.c:2158
+#, c-format
+msgid "invalid default displacement size \"%s\". Defaulting to %d."
+msgstr "ukuran default displacement \"%s\" tidak valid. Baku ke %d."
+
+#: config/tc-ns32k.c:2174
+#, c-format
+msgid ""
+"NS32K options:\n"
+"-m32032 | -m32532\tselect variant of NS32K architecture\n"
+"--disp-size-default=<1|2|4>\n"
+msgstr ""
+"Opsi NS32K:\n"
+"-m32032 | -m32532\tpilih varian dari arsitektur NS32K\n"
+"--disp-size-default=<1|2|4>\n"
+
+#: config/tc-ns32k.c:2249
+#, c-format
+msgid "Cannot find relocation type for symbol %s, code %d"
+msgstr "Tidak dapat menemukan tipe relokasi untuk simbol %s, kode %d"
+
+#: config/tc-or32.c:361
+#, c-format
+msgid "unknown opcode1: `%s'"
+msgstr "opkode1 tidak dikenal: `%s'"
+
+#: config/tc-or32.c:367
+#, c-format
+msgid "unknown opcode2 `%s'."
+msgstr "opkode2 `%s' tidak dikenal."
+
+#: config/tc-or32.c:404
+#, c-format
+msgid "instruction not allowed: %s"
+msgstr "instruksi tidak diperbolehkan: %s"
+
+#: config/tc-or32.c:407
+#, c-format
+msgid "too many operands: %s"
+msgstr "terlalu banyak operan: %s"
+
+#: config/tc-or32.c:491
+msgid "call/jmp target out of range (1)"
+msgstr "call/jmp target diluar dari jangkauan (1)"
+
+#: config/tc-or32.c:613
+msgid "call/jmp target out of range (2)"
+msgstr "call/jmp target diluar dari jangkauan (2)"
+
+#: config/tc-or32.c:632
+#, c-format
+msgid "bad relocation type: 0x%02x"
+msgstr "tipe relokasi buruk: 0x%02x"
+
+#: config/tc-or32.c:824
+msgid "invalid register in & expression"
+msgstr "register tidak valid dalam pernyataan &"
+
+#: config/tc-pdp11.c:490
+msgid "Low order bits truncated in immediate float operand"
+msgstr "Low order bit dipotong dalam operan float langsung"
+
+#: config/tc-pdp11.c:679 config/tc-z80.c:1890 config/tc-z80.c:1903
+#, c-format
+msgid "Unknown instruction '%s'"
+msgstr "Instruksi '%s' tidak diketahui"
+
+#: config/tc-pj.c:65 config/tc-pj.c:74
+msgid "confusing relocation expressions"
+msgstr "relokasi ekspresi membingungkan"
+
+#: config/tc-pj.c:157
+msgid "can't have relocation for ipush"
+msgstr "tidak dapat memiliki relokasi untuk ipush"
+
+#: config/tc-pj.c:260
+#, c-format
+msgid "unknown opcode %s"
+msgstr "opkode %s tidak dikenal"
+
+#: config/tc-pj.c:355
+#, c-format
+msgid ""
+"PJ options:\n"
+"-little\t\t\tgenerate little endian code\n"
+"-big\t\t\tgenerate big endian code\n"
+msgstr ""
+"Opsi PJ:\n"
+"-little\t\t\tmenghasilkan kode little endian\n"
+"-big\t\t\tmenghasilkan kode big endian\n"
+
+#: config/tc-pj.c:382 config/tc-sh.c:4059 config/tc-sh.c:4066
+#: config/tc-sh.c:4073 config/tc-sh.c:4080
+msgid "pcrel too far"
+msgstr "pcrel terlalu jauh"
+
+#: config/tc-pj.h:38
+msgid "convert_frag\n"
+msgstr "convert_frag\n"
+
+#: config/tc-pj.h:39
+msgid "estimate size\n"
+msgstr "perkirakan ukuran\n"
+
+#: config/tc-ppc.c:1030
+#, c-format
+msgid "%s unsupported"
+msgstr "%s tidak didukung"
+
+#: config/tc-ppc.c:1096 config/tc-s390.c:404 config/tc-s390.c:411
+#, c-format
+msgid "invalid switch -m%s"
+msgstr "switch -m%s tidak valid"
+
+#: config/tc-ppc.c:1132
+#, c-format
+msgid ""
+"PowerPC options:\n"
+"-a32\t\t\tgenerate ELF32/XCOFF32\n"
+"-a64\t\t\tgenerate ELF64/XCOFF64\n"
+"-u\t\t\tignored\n"
+"-mpwrx, -mpwr2\t\tgenerate code for POWER/2 (RIOS2)\n"
+"-mpwr\t\t\tgenerate code for POWER (RIOS1)\n"
+"-m601\t\t\tgenerate code for PowerPC 601\n"
+"-mppc, -mppc32, -m603, -m604\n"
+"\t\t\tgenerate code for PowerPC 603/604\n"
+"-m403\t\t\tgenerate code for PowerPC 403\n"
+"-m405\t\t\tgenerate code for PowerPC 405\n"
+"-m440\t\t\tgenerate code for PowerPC 440\n"
+"-m464\t\t\tgenerate code for PowerPC 464\n"
+"-m7400, -m7410, -m7450, -m7455\n"
+"\t\t\tgenerate code for PowerPC 7400/7410/7450/7455\n"
+"-m750cl\t\t\tgenerate code for PowerPC 750cl\n"
+msgstr ""
+"Opsi PowerPC:\n"
+"-a32\t\t\tmenghasilkan ELF32/XCOFF32\n"
+"-a64\t\t\tmenghasilkan ELF64/XCOFF64\n"
+"-u\t\t\tdiabaikan\n"
+"-mpwrx, -mpwr2\t\tmenghasilkan kode untuk POWER/2 (RIOS2)\n"
+"-mpwr\t\t\tmenghasilkan kode untuk POWER (RIOS1)\n"
+"-m601\t\t\tmenghasilkan kode untuk PowerPC 601\n"
+"-mppc, -mppc32, -m603, -m604\n"
+"\t\t\tmenghasilkan kode untuk PowerPC 603/604\n"
+"-m403\t\t\tmenghasilkan kode untuk PowerPC 403\n"
+"-m405\t\t\tmenghasilkan kode untuk PowerPC 405\n"
+"-m440\t\t\tmenghasilkan kode untuk PowerPC 440\n"
+"-m464\t\t\tmenghasilkan kode untuk PowerPC 464\n"
+"-m7400, -m7410, -m7450, -m7455\n"
+"\t\t\tmenghasilkan kode untuk PowerPC 7400/74100/7450/7455\n"
+"-m7450cl\t\t\tmenghasilkan kode untuk PowerPC 750cl\n"
+
+#: config/tc-ppc.c:1149
+#, c-format
+msgid ""
+"-mppc64, -m620\t\tgenerate code for PowerPC 620/625/630\n"
+"-mppc64bridge\t\tgenerate code for PowerPC 64, including bridge insns\n"
+"-mbooke64\t\tgenerate code for 64-bit PowerPC BookE\n"
+"-mbooke, mbooke32\tgenerate code for 32-bit PowerPC BookE\n"
+"-mpower4\t\tgenerate code for Power4 architecture\n"
+"-mpower5\t\tgenerate code for Power5 architecture\n"
+"-mpower6\t\tgenerate code for Power6 architecture\n"
+"-mpower7\t\tgenerate code for Power7 architecture\n"
+"-mcell\t\t\tgenerate code for Cell Broadband Engine architecture\n"
+"-mcom\t\t\tgenerate code Power/PowerPC common instructions\n"
+"-many\t\t\tgenerate code for any architecture (PWR/PWRX/PPC)\n"
+msgstr ""
+"-mppc64, -m620\t\tmenghasilkan kode untuk PowerPC 620/625/630\n"
+"-mppc64bridge\t\tmenghasilkan kode untuk PowerPC 64, termasuk instruksi insns\n"
+"-mbooke64\t\tmenghasilkan kode untuk 64 bit PowerPC BookE\n"
+"-mbooke, mbooke32\tmenghasilkan kode untuk 32 bit Power PC BookE\n"
+"-mpower4\t\tmenghasilkan kode untuk arsitektur Power4\n"
+"-mpower5\t\tmenghasilkan kode untuk arsitektur Power5\n"
+"-mpower6\t\tmenghasilkan kode untuk arsitektur Power6\n"
+"-mpower7\t\tmenghasilkan kode untuk arsitektur Power7\n"
+"-mcell\t\t\tmenghasilkan kode untuk arsitektur Cell Broadband Engine\n"
+"-mcom\t\t\tmenghasilkan kode untuk Power/PowerPC arsitektur bersama\n"
+"-many\t\t\tmenghasilkan kode untuk arsitektur apapun (PWR/PWRX/PPC)\n"
+
+#: config/tc-ppc.c:1161
+#, c-format
+msgid ""
+"-maltivec\t\tgenerate code for AltiVec\n"
+"-mvsx\t\t\tgenerate code for Vector-Scalar (VSX) instructions\n"
+"-me300\t\t\tgenerate code for PowerPC e300 family\n"
+"-me500, -me500x2\tgenerate code for Motorola e500 core complex\n"
+"-me500mc,               generate code for Freescale e500mc core complex\n"
+"-mspe\t\t\tgenerate code for Motorola SPE instructions\n"
+"-mregnames\t\tAllow symbolic names for registers\n"
+"-mno-regnames\t\tDo not allow symbolic names for registers\n"
+msgstr ""
+"-maltivec\t\tmenghasilkan kode untuk AltiVec\n"
+"-mvsx\t\t\tmenghasilkan kode untuk Vector-Skalar (VSX) instruksi\n"
+"-me300\t\t\tmenghasilkan kode untuk keluarga PowerPC e300\n"
+"-me500, -me500x2\tmenghasilkan kode untuk Motorola e500 core complex\n"
+"-me500mc,               menghasilkan kode untuk Freescale e500mc core complex\n"
+"-mspe\t\t\tmenghasilkan kode untuk instruksi Motorola SPE\n"
+"-mregnames\t\tMengijinkan nama simbolik untuk register\n"
+"-mno-regnames\t\tJangan ijinkan nama simbolik untuk register\n"
+
+#: config/tc-ppc.c:1171
+#, c-format
+msgid ""
+"-mrelocatable\t\tsupport for GCC's -mrelocatble option\n"
+"-mrelocatable-lib\tsupport for GCC's -mrelocatble-lib option\n"
+"-memb\t\t\tset PPC_EMB bit in ELF flags\n"
+"-mlittle, -mlittle-endian, -l, -le\n"
+"\t\t\tgenerate code for a little endian machine\n"
+"-mbig, -mbig-endian, -b, -be\n"
+"\t\t\tgenerate code for a big endian machine\n"
+"-msolaris\t\tgenerate code for Solaris\n"
+"-mno-solaris\t\tdo not generate code for Solaris\n"
+"-V\t\t\tprint assembler version number\n"
+"-Qy, -Qn\t\tignored\n"
+msgstr ""
+"-mrelocatable\t\tdukung untuk opsi GCC -mrelocatble\n"
+"-mrelocatable-lib\tdukung untuk opsi GCC -mrelocatble\n"
+"-memb\t\t\tset PPC_EMB bit dalam tanda ELF\n"
+"-mlittle, -mlittle-endian, -l, -le\n"
+"\t\t\tmenghasilkan kode untuk sebuah mesin little endian\n"
+"-mbig, -mbig-endian, -b, -be\n"
+"\t\t\tmenghasilkan kode untuk sebuah mesin big endian\n"
+"-msolaris\t\tmenghasilkan kode untuk Solaris\n"
+"-mno-solaris\t\tjangan hasilkan kode untuk Solaris\n"
+"-V\t\t\ttampilkan nomor versi perakit\n"
+"-Qy, -Qn\t\tdiabaikan\n"
+
+#: config/tc-ppc.c:1208
+#, c-format
+msgid "Unknown default cpu = %s, os = %s"
+msgstr "Tidak diketahui baku cpu = %s, os = %s"
+
+#: config/tc-ppc.c:1234
+msgid "Neither Power nor PowerPC opcodes were selected."
+msgstr "Bukan Power atau PowerPC opkode yang dipilih."
+
+#: config/tc-ppc.c:1313
+#, c-format
+msgid "powerpc_operands[%d].bitm invalid"
+msgstr "powerpc_operands[%d].bitm tidak valid"
+
+#: config/tc-ppc.c:1320
+#, c-format
+msgid "powerpc_operands[%d] duplicates powerpc_operands[%d]"
+msgstr "powerpc_operands[%d] duplikasi powerpc_operands[%d]"
+
+#: config/tc-ppc.c:1342
+#, c-format
+msgid "major opcode is not sorted for %s"
+msgstr "mayor opkode tidak diurutkan untuk %s"
+
+#: config/tc-ppc.c:1379
+#, c-format
+msgid "%s (%08lx %08lx) after %s (%08lx %08lx)"
+msgstr "%s (%08lx %08lx) sesudah %s (%08lx %08lx)"
+
+#: config/tc-ppc.c:1388
+#, c-format
+msgid "mask trims opcode bits for %s"
+msgstr "mask trims opkokde bit untuk %s"
+
+#: config/tc-ppc.c:1397
+#, c-format
+msgid "operand index error for %s"
+msgstr "operan indeks error untuk %s"
+
+#: config/tc-ppc.c:1409
+#, c-format
+msgid "operand %d overlap in %s"
+msgstr "operan %d tumpang tindih dalam %s"
+
+#: config/tc-ppc.c:1451
+#, c-format
+msgid "duplicate instruction %s"
+msgstr "duplikasi instruksi %s"
+
+#: config/tc-ppc.c:1475
+#, c-format
+msgid "duplicate macro %s"
+msgstr "duplikasi makro %s"
+
+#: config/tc-ppc.c:1810
+msgid "identifier+constant@got means identifier@got+constant"
+msgstr "identifier+constant@got berarti identifier@got+constant"
+
+#: config/tc-ppc.c:1876
+#, c-format
+msgid "%s relocations do not fit in %d bytes\n"
+msgstr "%s relokasi tidak cukup dalam %d bytes\n"
+
+#: config/tc-ppc.c:1981
+#, c-format
+msgid "Length of .lcomm \"%s\" is already %ld. Not changed to %ld."
+msgstr "Panjang dari .lcomm \"%s\" telah %ld. Tidak diubah ke %ld."
+
+#: config/tc-ppc.c:2061
+msgid "Relocation cannot be done when using -mrelocatable"
+msgstr "Relokasi tidak dapat dilakukan ketika menggunakan -mrelocatable"
+
+#: config/tc-ppc.c:2110
+msgid "TOC section size exceeds 64k"
+msgstr "TOC section size melebihi 64k"
+
+#: config/tc-ppc.c:2191
+#, c-format
+msgid "syntax error: invalid toc specifier `%s'"
+msgstr "sintaks erro: invalid toc specifier `%s'"
+
+#: config/tc-ppc.c:2205
+#, c-format
+msgid "syntax error: expected `]', found  `%c'"
+msgstr "sintaks error: diduga `]',  ditemukan `%c'"
+
+#: config/tc-ppc.c:2482
+msgid "[tocv] symbol is not a toc symbol"
+msgstr "[tocv] simbol bukan sebuah toc simbol"
+
+#: config/tc-ppc.c:2493
+msgid "Unimplemented toc32 expression modifier"
+msgstr "Tidak terimplementasi toc ekspresi modifier"
+
+#: config/tc-ppc.c:2498
+msgid "Unimplemented toc64 expression modifier"
+msgstr "Tidak terimplementasi toc64 ekspresi modifier"
+
+#: config/tc-ppc.c:2502
+#, c-format
+msgid "Unexpected return value [%d] from parse_toc_entry!\n"
+msgstr "Tidak diduga nilai kembali [%d] dari parse_toc_entry!\n"
+
+#: config/tc-ppc.c:2727
+msgid "unsupported relocation for DS offset field"
+msgstr "relokasi tidak didukung untuk DS ofset field"
+
+#: config/tc-ppc.c:2779
+#, c-format
+msgid "syntax error; found `%c' but expected `%c'"
+msgstr "sintaks error; ditemukan `%c' tetapi diduga `%c'"
+
+#: config/tc-ppc.c:2822 config/tc-ppc.h:94
+msgid "instruction address is not a multiple of 4"
+msgstr "alamat instruksi bukan kelipatan dari 4"
+
+#: config/tc-ppc.c:2931
+msgid "wrong number of operands"
+msgstr "jumlah dari operan salah"
+
+#: config/tc-ppc.c:2985
+msgid "Bad .section directive: want a,e,w,x,M,S,G,T in string"
+msgstr "Direktif .section buruk: diinginkan dalam string a,e,w,x,M,S,G,T"
+
+#: config/tc-ppc.c:3091
+msgid "missing size"
+msgstr "hilang ukuran"
+
+#: config/tc-ppc.c:3100
+msgid "negative size"
+msgstr "ukuran negatif"
+
+#: config/tc-ppc.c:3137
+msgid "missing real symbol name"
+msgstr "hilang nama simbol ril"
+
+#: config/tc-ppc.c:3158
+msgid "attempt to redefine symbol"
+msgstr "mencoba untuk meredefinisi simbol"
+
+#: config/tc-ppc.c:3400
+msgid "The XCOFF file format does not support arbitrary sections"
+msgstr "Format berkas XCOFF tidak didukung dalam beberapa bagian"
+
+#: config/tc-ppc.c:3474
+msgid "missing rename string"
+msgstr "hilang string pengubah nama"
+
+#: config/tc-ppc.c:3504 config/tc-ppc.c:4046 read.c:3270
+msgid "missing value"
+msgstr "hilang nilai"
+
+#: config/tc-ppc.c:3522
+msgid "illegal .stabx expression; zero assumed"
+msgstr "pernyataan .stabx tidak legal; diasumsikan nol"
+
+#: config/tc-ppc.c:3554
+msgid "missing class"
+msgstr "hilang kelas"
+
+#: config/tc-ppc.c:3563
+msgid "missing type"
+msgstr "hilang tipe"
+
+#: config/tc-ppc.c:3643
+msgid "missing symbol name"
+msgstr "hilang nama simbol"
+
+#: config/tc-ppc.c:3833
+msgid "nested .bs blocks"
+msgstr "nested .bs blok"
+
+#: config/tc-ppc.c:3865
+msgid ".es without preceding .bs"
+msgstr ".es tanpa diawali .bs"
+
+#: config/tc-ppc.c:4038
+msgid "non-constant byte count"
+msgstr "bukan-konstanta byte dihitung"
+
+#: config/tc-ppc.c:4085
+msgid ".tc not in .toc section"
+msgstr ".tc tidak dalam daerah .toc"
+
+#: config/tc-ppc.c:4104
+msgid ".tc with no label"
+msgstr ".tc tanpa label"
+
+#: config/tc-ppc.c:4196
+msgid ".machine stack overflow"
+msgstr "..machine stack overflow"
+
+#: config/tc-ppc.c:4203
+msgid ".machine stack underflow"
+msgstr ".machine stack underflow"
+
+#: config/tc-ppc.c:4210
+#, c-format
+msgid "invalid machine `%s'"
+msgstr "machine `%s' tidak valid"
+
+#: config/tc-ppc.c:4261
+msgid "No previous section to return to. Directive ignored."
+msgstr "Tidak ada bagian sebelumnya kembali ke. Direktif diabaikan."
+
+#. Section Contents
+#. unknown
+#: config/tc-ppc.c:4671
+msgid "Unsupported section attribute -- 'a'"
+msgstr "Atribut daerah tidak didukung -- 'a'"
+
+#: config/tc-ppc.c:4855
+msgid "bad symbol suffix"
+msgstr "akhiran simbol buruk"
+
+#: config/tc-ppc.c:4947
+msgid "Unrecognized symbol suffix"
+msgstr "Akhiran simbol tidak dikenal"
+
+#: config/tc-ppc.c:5035
+msgid "two .function pseudo-ops with no intervening .ef"
+msgstr "dua .function pseudo-ops tanpa intervening .ef"
+
+#: config/tc-ppc.c:5048
+msgid ".ef with no preceding .function"
+msgstr ".ef tanpa diawali .function"
+
+#: config/tc-ppc.c:5176
+#, c-format
+msgid "warning: symbol %s has no csect"
+msgstr "peringatan: simbol %s tidak memiliki csect"
+
+#: config/tc-ppc.c:5421
+msgid "symbol in .toc does not match any .tc"
+msgstr "simbol dalam .toc tidak cocok dengan .tc apapun"
+
+#: config/tc-ppc.c:5789
+#, c-format
+msgid "unsupported relocation against %s"
+msgstr "relokasi terhadap %s tidak didukung"
+
+#: config/tc-ppc.c:5862
+#, c-format
+msgid "cannot emit PC relative %s relocation against %s"
+msgstr "tidak dapat mengeluarkan relokasi %s PC relatif terhadap %s"
+
+#: config/tc-ppc.c:5867
+#, c-format
+msgid "cannot emit PC relative %s relocation"
+msgstr "tidak dapat mengeluarkan relokasi %s PC relatif"
+
+#: config/tc-ppc.c:6049
+#, c-format
+msgid "Unable to handle reference to symbol %s"
+msgstr "Tidak dapat menangani referensi ke simbol %s"
+
+#: config/tc-ppc.c:6052
+msgid "Unable to resolve expression"
+msgstr "Tidak dapat menyelesaikan pernyataan"
+
+#: config/tc-ppc.c:6079
+msgid "must branch to an address a multiple of 4"
+msgstr "harus bercabang ke sebuah alamat kelipatan dari 4"
+
+#: config/tc-ppc.c:6083
+#, c-format
+msgid "@local or @plt branch destination is too far away, %ld bytes"
+msgstr "@local atau @plt cabang tujuan adalah terlalu jauh, %ld bytes"
+
+#: config/tc-ppc.c:6114
+#, c-format
+msgid "Gas failure, reloc value %d\n"
+msgstr "Gas gagal, nilai relokasi %d\n"
+
+#: config/tc-s390.c:446
+#, c-format
+msgid ""
+"        S390 options:\n"
+"        -mregnames        Allow symbolic names for registers\n"
+"        -mwarn-areg-zero  Warn about zero base/index registers\n"
+"        -mno-regnames     Do not allow symbolic names for registers\n"
+"        -m31              Set file format to 31 bit format\n"
+"        -m64              Set file format to 64 bit format\n"
+msgstr ""
+"        opsi S390:\n"
+"        -mregnames        Ijinkan nama simbolik untuk register\n"
+"        -mwarn-areg-zero  Peringatkan mengenai register dasar/indeks nol\n"
+"        -mno-regnames     Jangan ijinkan nama simbolik untuk register\n"
+"        -m31              Set berkas format ke format 31 bit\n"
+"        -m64              Set berkas format ke format 64 bit\n"
+
+#: config/tc-s390.c:453
+#, c-format
+msgid ""
+"        -V                print assembler version number\n"
+"        -Qy, -Qn          ignored\n"
+msgstr ""
+"        -V                tampilkan nomor versi perakit\n"
+"        -Qy, -Qn          diabaikan\n"
+
+#: config/tc-s390.c:489
+#, c-format
+msgid "Internal assembler error for instruction format %s"
+msgstr "Internal perakit error untuk format instruksi %s"
+
+#: config/tc-s390.c:510
+#, c-format
+msgid "Internal assembler error for instruction %s"
+msgstr "Internal perakit error untuk instruksi %s"
+
+#: config/tc-s390.c:744
+#, c-format
+msgid "identifier+constant@%s means identifier@%s+constant"
+msgstr "identifier+constant@%s berarti identifier@%s+constant"
+
+#: config/tc-s390.c:825
+msgid "Can't handle O_big in s390_exp_compare"
+msgstr "Tidak dapat menangani O_big dalam s390_exp_compare"
+
+#: config/tc-s390.c:906
+msgid "Invalid suffix for literal pool entry"
+msgstr "Akhiran tidak valid untuk masukan literal pool"
+
+#: config/tc-s390.c:963
+msgid "Big number is too big"
+msgstr "Big number terlalu besar"
+
+#: config/tc-s390.c:1110
+msgid "relocation not applicable"
+msgstr "relokasi tidak bisa dilakukan"
+
+#: config/tc-s390.c:1297
+msgid "invalid operand suffix"
+msgstr "akhira operan tidak valid"
+
+#: config/tc-s390.c:1320
+msgid "syntax error; missing '(' after displacement"
+msgstr "sintaks error: hilang '(' setelah displacemen"
+
+#: config/tc-s390.c:1336 config/tc-s390.c:1380 config/tc-s390.c:1410
+msgid "syntax error; expected ,"
+msgstr "sintaks error; diduga ,"
+
+#: config/tc-s390.c:1368
+msgid "syntax error; missing ')' after base register"
+msgstr "sintaks error: hilang ')' setelah register dasar"
+
+#: config/tc-s390.c:1397
+msgid "syntax error; ')' not allowed here"
+msgstr "sintaks error; ')' tidak diijinkan disini"
+
+#: config/tc-s390.c:1587 config/tc-s390.c:1610 config/tc-s390.c:1623
+msgid "Invalid .insn format\n"
+msgstr "Format .insn tidak valid\n"
+
+#: config/tc-s390.c:1595
+#, c-format
+msgid "Unrecognized opcode format: `%s'"
+msgstr "Format opkode tidak dikenal: `%s'"
+
+#: config/tc-s390.c:1626
+msgid "second operand of .insn not a constant\n"
+msgstr "operan kedua dari .insn tidak berupa konstanta\n"
+
+#: config/tc-s390.c:1629
+msgid "missing comma after insn constant\n"
+msgstr "hilang koma setelah konstanta insn\n"
+
+#: config/tc-s390.c:2009
+msgid "unsupported relocation type"
+msgstr "tipe relokasi tidak didukung"
+
+#: config/tc-score.c:49
+msgid "instruction is not conditional"
+msgstr "instruksi tidak kondisional"
+
+#: config/tc-score.c:50
+msgid "acc0 expected"
+msgstr "acc0 diduga"
+
+#: config/tc-score.c:51
+msgid "div / mul are reserved instructions"
+msgstr "div / mul reserved instruksi"
+
+#: config/tc-score.c:52
+msgid "This architecture doesn't support mmu"
+msgstr "Arsitektur ini tidak mendukung mmu"
+
+#: config/tc-score.c:53
+msgid "This architecture doesn't support atomic instruction"
+msgstr "Arsitektur ini tidak mendukung instruksi atomic"
+
+#: config/tc-score.c:54
+msgid "the label length is longer than 1024"
+msgstr "panjang label lebih panjang dari 1024"
+
+#: config/tc-score.c:233
+msgid "S+core register expected"
+msgstr "S+core register diduga"
+
+#: config/tc-score.c:234
+msgid "S+core special-register expected"
+msgstr "S+core spesial-register diduga"
+
+#: config/tc-score.c:235
+msgid "S+core co-processor register expected"
+msgstr "S+core co-prosesor register diduga"
+
+#: config/tc-score.c:853 config/tc-score.c:1753
+msgid "Using temp register(r1)"
+msgstr "Menggunakan temp register (r1)"
+
+#: config/tc-score.c:872
+#, c-format
+msgid "register expected, not '%.100s'"
+msgstr "register diduga, bukan '%.100s'"
+
+#: config/tc-score.c:1258 config/tc-score.c:1265 config/tc-score.c:2640
+#: config/tc-score.c:2645 config/tc-score.c:2923 config/tc-score.c:2928
+#, c-format
+msgid "invalid constant: %d bit expression not in range %d..%d"
+msgstr "konstanta tidak valid: %d bit ekspresi tidak dalam jangkauan %d..%d"
+
+#: config/tc-score.c:1305
+msgid "invalid constant: bit expression not defined"
+msgstr "konstanta tidak valid: bit ekspresi tidak terdefinisi"
+
+#: config/tc-score.c:1767
+#, c-format
+msgid "low register(r0-r15)expected, not '%.100s'"
+msgstr "low register (r0-r15) diduga, bukan '%.100s'"
+
+#: config/tc-score.c:1862
+#, c-format
+msgid "high register(r16-r31)expected, not '%.100s'"
+msgstr "high register(r16-r31) diduga, bukan '%.100s'"
+
+#: config/tc-score.c:2094
+#, c-format
+msgid "Fix data dependency: %s %s -- %s %s  (insert %d nop!/%d)"
+msgstr "membetulkan ketergantungan data: %s %s -- %s %s (memasukan %d nop!/%d)"
+
+#: config/tc-score.c:2113
+#, c-format
+msgid "Fix data dependency: %s %s -- %s %s  (insert 1 pflush/%d)"
+msgstr "Membetulkan ketergantungan data: %s %s -- %s %s (masukan 1 pflush/%d)"
+
+#: config/tc-score.c:2129 config/tc-score.c:2136
+#, c-format
+msgid "data dependency: %s %s -- %s %s  (%d/%d bubble)"
+msgstr "ketergantungan data: %s %s -- %s %s (%d/%d bubble)"
+
+#: config/tc-score.c:2426 config/tc-score.c:5592
+#, c-format
+msgid "%s -- `%s'"
+msgstr "%s -- '%s'"
+
+#: config/tc-score.c:2583
+msgid "address offset must be half word alignment"
+msgstr "alamat ofset harus setengah dari alignmen kata"
+
+#: config/tc-score.c:2591
+msgid "address offset must be word alignment"
+msgstr "alamat ofset harus word alignmen"
+
+#: config/tc-score.c:2733 config/tc-score.c:2880
+msgid "register same as write-back base"
+msgstr "register sama seperti write-back base"
+
+#: config/tc-score.c:2850
+msgid "pre-indexed expression expected"
+msgstr "pre-indeks ekspresi diduga"
+
+#: config/tc-score.c:2860 config/tc-score.c:3218 config/tc-score.c:3234
+#: config/tc-score.c:3305 config/tc-score.c:3348 config/tc-score.c:3470
+#: config/tc-score.c:3544 config/tc-score.c:3598 config/tc-score.c:3644
+msgid "missing ]"
+msgstr "hilang ]"
+
+#: config/tc-score.c:3461
+msgid "base register nums are over 3 bit"
+msgstr "nomor register dasar lebih dari 3 bit"
+
+#: config/tc-score.c:3538 config/tc-score.c:3589
+msgid "missing +"
+msgstr "hilang +"
+
+#: config/tc-score.c:3582
+#, c-format
+msgid "%s register same as write-back base"
+msgstr "%s register sama seperti dasar write-back"
+
+#: config/tc-score.c:3584
+msgid "destination"
+msgstr "tujuan"
+
+#: config/tc-score.c:3584
+msgid "source"
+msgstr "asal"
+
+#: config/tc-score.c:3988
+msgid "li rd label isn't correct instruction form"
+msgstr "li rd label tidak dalam bentuk instruksi yang benar"
+
+#: config/tc-score.c:4501 config/tc-score.c:4530 config/tc-score.c:4556
+msgid "lacking label  "
+msgstr "kurang label  "
+
+#: config/tc-score.c:4508
+msgid "invalid constant: 25 bit expression not in range -2^24..2^24"
+msgstr "konstanta tidak valid: ekspresi 25 bit tidak dalam jangkauan -2^24..2^24"
+
+#: config/tc-score.c:4536
+msgid "invalid constant: 12 bit expression not in range -2^11..2^11"
+msgstr "konstanta tidak valid: ekspresi 12 bit tidak dalam jangkauan -2^11..2^11"
+
+#: config/tc-score.c:4562
+msgid "invalid constant: 20 bit expression not in range -2^19..2^19"
+msgstr "konstanta tidak valid: 20 ekspresi tidak dalam jangkauan -2^19..2^19"
+
+#: config/tc-score.c:4595
+msgid "lacking label"
+msgstr "kurang label"
+
+#: config/tc-score.c:4600
+msgid "invalid constant: 9 bit expression not in range -2^8..2^8"
+msgstr "konstanta tidak valid: 9 bit ekspresi tidak dalam jangkauan -2^8..2^8"
+
+#: config/tc-score.c:5274
+#, c-format
+msgid " branch relocation truncate (0x%x) [-2^8 ~ 2^8]"
+msgstr " relokasi cabang terpotong (0x%x) [-2^8 ~ 2^8]"
+
+#: config/tc-score.c:5291 config/tc-score.c:5321
+#, c-format
+msgid " branch relocation truncate (0x%x) [-2^19 ~ 2^19]"
+msgstr " relokasi cabang terpotong (0x%x) [-2^19 ~ 2^19]"
+
+#: config/tc-score.c:5345
+#, c-format
+msgid " branch relocation truncate (0x%x)  [-2^8 ~ 2^8]"
+msgstr " relokasi cabang terpotong (0x%x)  [-2^8 ~ 2^8]"
+
+#: config/tc-score.c:5511
+#, c-format
+msgid "cannot represent %s relocation in this object file format1"
+msgstr "tidak dapat merepresentasikan relokasi %s dalam format1 berkas objek ini"
+
+#: config/tc-score.c:5570
+msgid "pce instruction error (16 bit || 16 bit)'"
+msgstr "instruksi pce erro (16 bit || 16 bit)'"
+
+#: config/tc-score.c:5700
+#, c-format
+msgid "Sunplus-v2-0-0-20060510\n"
+msgstr "Sunplus-v2-0-0-20060510\n"
+
+#: config/tc-score.c:5716
+#, c-format
+msgid " Score-specific assembler options:\n"
+msgstr " Opsi Score-specific perakit:\n"
+
+#: config/tc-score.c:5718
+#, c-format
+msgid "        -EB\t\tassemble code for a big-endian cpu\n"
+msgstr "        -EB\t\trakit kode untuk sebuah cpu big endian\n"
+
+#: config/tc-score.c:5723
+#, c-format
+msgid "        -EL\t\tassemble code for a little-endian cpu\n"
+msgstr "        -EL\t\trakit kode untuk sebuah cpu little endian\n"
+
+#: config/tc-score.c:5727
+#, c-format
+msgid "        -FIXDD\t\tassemble code for fix data dependency\n"
+msgstr "        -FIXDD\t\trakit kode untuk membetulkan ketergantungan data\n"
+
+#: config/tc-score.c:5729
+#, c-format
+msgid "        -NWARN\t\tassemble code for no warning message for fix data dependency\n"
+msgstr "        -NWARN\t\trakit kode untuk tidak ada pesan peringatan untuk membetulkan ketergantungan data\n"
+
+#: config/tc-score.c:5731
+#, c-format
+msgid "        -SCORE5\t\tassemble code for target is SCORE5\n"
+msgstr "        -SCORE5\t\trakit kode untuk target adalah SCORE5\n"
+
+#: config/tc-score.c:5733
+#, c-format
+msgid "        -SCORE5U\tassemble code for target is SCORE5U\n"
+msgstr "        -SCORE5U\trakit kode untuk target adalah SCORE5U\n"
+
+#: config/tc-score.c:5735
+#, c-format
+msgid "        -SCORE7\t\tassemble code for target is SCORE7, this is default setting\n"
+msgstr "        -SCORE7\t\trakit kode untuk target adalah SCORE7, ini konfigurasi baku\n"
+
+#: config/tc-score.c:5737
+#, c-format
+msgid "        -USE_R1\t\tassemble code for no warning message when using temp register r1\n"
+msgstr "        -USE_R1\t\trakit kode untuk tidak ada pesan peringatan ketika menggunakan register sementara r1\n"
+
+#: config/tc-score.c:5739
+#, c-format
+msgid "        -KPIC\t\tassemble code for PIC\n"
+msgstr "        -KPIC\t\trakit kode untuk PIC\n"
+
+#: config/tc-score.c:5741
+#, c-format
+msgid "        -O0\t\tassembler will not perform any optimizations\n"
+msgstr "        -O0\t\tperakit tidak akan melakukan optimisasi apapun\n"
+
+#: config/tc-score.c:5743
+#, c-format
+msgid "        -G gpnum\tassemble code for setting gpsize and default is 8 byte\n"
+msgstr "        -G gpnum\trakit kode untuk konfigurasi gpsize dan baku adalah 8 byte\n"
+
+#: config/tc-score.c:5745
+#, c-format
+msgid "        -V \t\tSunplus release version \n"
+msgstr "        -V \t\tversi release Sunplus \n"
+
+#: config/tc-score.c:6345 read.c:1464
+msgid "missing size expression"
+msgstr "hilang ukuran pernyataan"
+
+#: config/tc-score.c:6351
+#, c-format
+msgid "BSS length (%d) < 0 ignored"
+msgstr "panjang BSS (%d) < 0 diabaikan"
+
+#: config/tc-score.c:6366 read.c:2282
+#, c-format
+msgid "error setting flags for \".sbss\": %s"
+msgstr "error menset tanda untuk \".sbss\": %s"
+
+#: config/tc-score.c:6380 config/tc-sparc.c:3691
+msgid "missing alignment"
+msgstr "hilang alignmen"
+
+#: config/tc-score.c:6417
+#, c-format
+msgid "alignment too large; %d assumed"
+msgstr "alignmen terlalu besar; %d diasumsikan"
+
+#: config/tc-score.c:6422 read.c:2343
+msgid "alignment negative; 0 assumed"
+msgstr "alignmen negatif; 0 diasumsikan"
+
+#: config/tc-score.c:6489 config/tc-z80.c:289 ecoff.c:3355 read.c:1483
+#: read.c:1596 read.c:2460 read.c:3012 read.c:3397 symbols.c:326 symbols.c:432
+#, c-format
+msgid "symbol `%s' is already defined"
+msgstr "simbol `%s' telah terdefinisi"
+
+#: config/tc-sh.c:63
+msgid "directive .big encountered when option -big required"
+msgstr "direktif .big ditemui ketika opsi -big dibutuhkan"
+
+#: config/tc-sh.c:73
+msgid "directive .little encountered when option -little required"
+msgstr "direktif .little ditemui ketika opsi -little dibutuhkan"
+
+#: config/tc-sh.c:1364
+msgid "misplaced PIC operand"
+msgstr "operan PIC salah tempat"
+
+#: config/tc-sh.c:1402
+msgid "illegal double indirection"
+msgstr "tidak legal double indirection"
+
+#: config/tc-sh.c:1411
+msgid "illegal register after @-"
+msgstr "register tidak legal setelah @-"
+
+#: config/tc-sh.c:1427
+msgid "must be @(r0,...)"
+msgstr "harus @(r0,...)"
+
+#: config/tc-sh.c:1451
+msgid "syntax error in @(r0,...)"
+msgstr "sintaks error dalam @(r0,...)"
+
+#: config/tc-sh.c:1456
+msgid "syntax error in @(r0...)"
+msgstr "sintaks error dalam @(r0...)"
+
+#: config/tc-sh.c:1501
+msgid "Deprecated syntax."
+msgstr "Sintaks kadaluarsa."
+
+#: config/tc-sh.c:1513 config/tc-sh.c:1518
+msgid "syntax error in @(disp,[Rn, gbr, pc])"
+msgstr "sintaks error dalam @(disp,[Rn, gbr, pc])"
+
+#: config/tc-sh.c:1523
+msgid "expecting )"
+msgstr "menduga )"
+
+#: config/tc-sh.c:1531
+msgid "illegal register after @"
+msgstr "register tidak legal setelah @"
+
+#: config/tc-sh.c:2202
+#, c-format
+msgid "unhandled %d\n"
+msgstr "tidak tertangani %d\n"
+
+#: config/tc-sh.c:2368
+#, c-format
+msgid "Invalid register: 'r%d'"
+msgstr "Register tidak valid: 'r%d'"
+
+#: config/tc-sh.c:2472
+#, c-format
+msgid "failed for %d\n"
+msgstr "gagal untuk %d\n"
+
+#: config/tc-sh.c:2585 config/tc-sh.c:2984
+msgid "invalid operands for opcode"
+msgstr "operan tidak valid untuk opkode"
+
+#: config/tc-sh.c:2590
+msgid "insn can't be combined with parallel processing insn"
+msgstr "instruksi tidak dapat dikombinasikan dengan pemrosesan paralel instruksi"
+
+#: config/tc-sh.c:2597 config/tc-sh.c:2608 config/tc-sh.c:2640
+msgid "multiple movx specifications"
+msgstr "multiple spesifikasi movx"
+
+#: config/tc-sh.c:2602 config/tc-sh.c:2624 config/tc-sh.c:2663
+msgid "multiple movy specifications"
+msgstr "multiple movy spesifikasi"
+
+#: config/tc-sh.c:2611 config/tc-sh.c:2644
+msgid "invalid movx address register"
+msgstr "alamat register movx tidak valid"
+
+#: config/tc-sh.c:2613
+msgid "insn cannot be combined with non-nopy"
+msgstr "instruksi tidak dapat dikombinasikan dengan bukan-nopy"
+
+#: config/tc-sh.c:2627 config/tc-sh.c:2683
+msgid "invalid movy address register"
+msgstr "alamat register movy tidak valid"
+
+#: config/tc-sh.c:2629
+msgid "insn cannot be combined with non-nopx"
+msgstr "instruksi tidak dapat dikombinasikan dengan bukan-nopx"
+
+#: config/tc-sh.c:2642
+msgid "previous movy requires nopx"
+msgstr "movy sebelumnya dibutuhkan nopx"
+
+#: config/tc-sh.c:2650 config/tc-sh.c:2655
+msgid "invalid movx dsp register"
+msgstr "register dsp movx tidak valid"
+
+#: config/tc-sh.c:2665
+msgid "previous movx requires nopy"
+msgstr "movx sebelumnya membutuhkan nopy"
+
+#: config/tc-sh.c:2674 config/tc-sh.c:2679
+msgid "invalid movy dsp register"
+msgstr "movy dsp register tidak valid"
+
+#: config/tc-sh.c:2689
+msgid "dsp immediate shift value not constant"
+msgstr "nilai pergeseran dsp immediate tidak konstan"
+
+#: config/tc-sh.c:2703 config/tc-sh.c:2729
+msgid "multiple parallel processing specifications"
+msgstr "multiple paralel spesifikasi pemrosesan"
+
+#: config/tc-sh.c:2722
+msgid "multiple condition specifications"
+msgstr "multiple spesifikasi kondisional"
+
+#: config/tc-sh.c:2760
+msgid "insn cannot be combined with pmuls"
+msgstr "instruksi tidak dapat dikombinasikan dengan pmuls"
+
+#: config/tc-sh.c:2776
+msgid "bad combined pmuls output operand"
+msgstr "kombinasi buruk keluaran operan pmuls"
+
+#: config/tc-sh.c:2786
+msgid "destination register is same for parallel insns"
+msgstr "register tujuan sama untuk paralel insns"
+
+#: config/tc-sh.c:2795
+msgid "condition not followed by conditionalizable insn"
+msgstr "kodisi tidak diikuti dengan kondisionalisasi insn"
+
+#: config/tc-sh.c:2805
+msgid "unrecognized characters at end of parallel processing insn"
+msgstr "karakter tidak dikenal diakhir dari pemrosesan paralel insn"
+
+#: config/tc-sh.c:2921
+msgid "opcode not valid for this cpu variant"
+msgstr "opkode tidak valid untuk variasi cpu ini"
+
+#: config/tc-sh.c:2954
+msgid "Delayed branches not available on SH1"
+msgstr "Percabangan tertundah tidak tersedia di SH1"
+
+#: config/tc-sh.c:2989
+#, c-format
+msgid "excess operands: '%s'"
+msgstr "kelebihan operan: '%s'"
+
+#: config/tc-sh.c:3066
+msgid ".uses pseudo-op seen when not relaxing"
+msgstr ".uses pseudo-op terlihat ketika tidak relaxing"
+
+#: config/tc-sh.c:3072
+msgid "bad .uses format"
+msgstr "bad .uses format"
+
+#: config/tc-sh.c:3176
+msgid "Invalid combination: --isa=SHcompact with --isa=SHmedia"
+msgstr "Kombinasi tidak valid: --ise=SHcompact dengan --ise=SHmedia"
+
+#: config/tc-sh.c:3182
+msgid "Invalid combination: --isa=SHmedia with --isa=SHcompact"
+msgstr "Kombinasi tidak valid: --isa=SHmedia dengan --isa=SHcompact"
+
+#: config/tc-sh.c:3184
+msgid "Invalid combination: --abi=64 with --isa=SHcompact"
+msgstr "Kombinasi tidak valid: --abi=64 dengan --isa=SHcompact"
+
+#: config/tc-sh.c:3225
+msgid "Invalid combination: --abi=32 with --abi=64"
+msgstr "Kombinasi tidak valid: --abi=32 dengan --abi=64"
+
+#: config/tc-sh.c:3231
+msgid "Invalid combination: --abi=64 with --abi=32"
+msgstr "Kombinasi tidak valid: --abi=64 dengan --abi=32"
+
+#: config/tc-sh.c:3233
+msgid "Invalid combination: --isa=SHcompact with --abi=64"
+msgstr "Kombinasi tidak valid: --isa=SHcompact dengan --abi=64"
+
+#: config/tc-sh.c:3271
+#, c-format
+msgid ""
+"SH options:\n"
+"--little\t\tgenerate little endian code\n"
+"--big\t\t\tgenerate big endian code\n"
+"--relax\t\t\talter jump instructions for long displacements\n"
+"--renesas\t\tdisable optimization with section symbol for\n"
+"\t\t\tcompatibility with Renesas assembler.\n"
+"--small\t\t\talign sections to 4 byte boundaries, not 16\n"
+"--dsp\t\t\tenable sh-dsp insns, and disable floating-point ISAs.\n"
+"--allow-reg-prefix\tallow '$' as a register name prefix.\n"
+"--isa=[any\t\tuse most appropriate isa\n"
+"    | dsp               same as '-dsp'\n"
+"    | fp"
+msgstr ""
+"Opsi SH:\n"
+"--little\t\tmenghasilkan kode little endian\n"
+"--big\t\tmenghasilkan kode big endian\n"
+"--relax\t\t\tubah instruksi lompat ke long displacement\n"
+"--renesas\t\t\tnon-aktifkan optimisasi dengan simbol daerah untuk\n"
+"\t\t\tkompabilitas dengan perakit Renesas.\n"
+"--small\t\t\talign daerah ke 4 byte boundaries, bukan 16\n"
+"--dsp\t\t\taktifkan sh-dsp insns, dan non-aktifkan floating-point ISA.\n"
+"--allow-reg-prefix\tijinkan '$' sebaga awalan nama register.\n"
+"--isa=[any\t\tgunakan isa yang paling sesuai\n"
+"   | dsp                sama seperti '-dsp'\n"
+"   | fp"
+
+#: config/tc-sh.c:3297
+#, c-format
+msgid ""
+"--isa=[shmedia\t\tset as the default instruction set for SH64\n"
+"    | SHmedia\n"
+"    | shcompact\n"
+"    | SHcompact]\n"
+msgstr ""
+"--isa=[shmedia\t\tset sebagai set instruksi baku untuk SH64\n"
+"    | SHmedia\n"
+"    | shcompact\n"
+"    | SHcompact]\n"
+
+#: config/tc-sh.c:3302
+#, c-format
+msgid ""
+"--abi=[32|64]\t\tset size of expanded SHmedia operands and object\n"
+"\t\t\tfile type\n"
+"--shcompact-const-crange  emit code-range descriptors for constants in\n"
+"\t\t\tSHcompact code sections\n"
+"--no-mix\t\tdisallow SHmedia code in the same section as\n"
+"\t\t\tconstants and SHcompact code\n"
+"--no-expand\t\tdo not expand MOVI, PT, PTA or PTB instructions\n"
+"--expand-pt32\t\twith -abi=64, expand PT, PTA and PTB instructions\n"
+"\t\t\tto 32 bits only\n"
+msgstr ""
+"--abi=[32|64]\t\tset ukuran dari operan SHmedia yang terekspan dan tipe\n"
+"\t\t\tberkas objek\n"
+"--shcompact-const-crange  keluarkan deskripsi jangkauan-kode untuk konstanta dalam\n"
+"\t\t\tSHcompact bagian kode\n"
+"--no-mix\t\tlarang kode SHmedia berada dalam daerah yang sama dengan\n"
+"\t\t\tkonstanta dan kode SHcompact\n"
+"--no-expand\t\tjangan expand MOVI, PT, PTA atau PTB instruksi\n"
+"--expand-pt32\t\tdengan -abi=64, expand PT, PTA dan PTB instruksi\n"
+"\t\t\tke 32 bit saja\n"
+
+#: config/tc-sh.c:3401
+msgid ".uses does not refer to a local symbol in the same section"
+msgstr ".uses tidak mereferensi ke sebuah simbol lokal dalam bagian yang sama"
+
+#: config/tc-sh.c:3420
+msgid "can't find fixup pointed to by .uses"
+msgstr "tidak dapat menemukan fixup yang ditunjuk oleh .uses"
+
+#: config/tc-sh.c:3440
+msgid ".uses target does not refer to a local symbol in the same section"
+msgstr ".uses target tidak mereferensikan ke sebuah simbol lokal dalam daerah yang sama"
+
+#: config/tc-sh.c:3517
+msgid "displacement overflows 12-bit field"
+msgstr "displacement overflow 12 bit field"
+
+#: config/tc-sh.c:3520
+#, c-format
+msgid "displacement to defined symbol %s overflows 12-bit field"
+msgstr "displacement untuk mendefinisikan simbol %s overflow 12 bit field"
+
+#: config/tc-sh.c:3524
+#, c-format
+msgid "displacement to undefined symbol %s overflows 12-bit field"
+msgstr "displacement untuk simbol %s tidak terdefinisi overflow 12 bit field"
+
+#: config/tc-sh.c:3597
+msgid "displacement overflows 8-bit field"
+msgstr "displacement overflow 8 bit field"
+
+#: config/tc-sh.c:3600
+#, c-format
+msgid "displacement to defined symbol %s overflows 8-bit field"
+msgstr "displacement ke simbol %s terdefinisi overflow 8 bit field"
+
+#: config/tc-sh.c:3604
+#, c-format
+msgid "displacement to undefined symbol %s overflows 8-bit field "
+msgstr "displacement ke simbole %s tidak terdefinisi overflow 8 bit field"
+
+#: config/tc-sh.c:3621
+#, c-format
+msgid "overflow in branch to %s; converted into longer instruction sequence"
+msgstr "overflow dalam percabangan ke %s; diubah ke urutans instruksi yang lebih panjang"
+
+#: config/tc-sh.c:3687 config/tc-sh.c:3734 config/tc-sparc.c:4200
+#: config/tc-sparc.c:4224
+msgid "misaligned data"
+msgstr "misaligned data"
+
+#: config/tc-sh.c:4036
+msgid "offset to unaligned destination"
+msgstr "ofset ke unaligned tujuan"
+
+#: config/tc-sh.c:4041
+msgid "negative offset"
+msgstr "ofset negatif"
+
+#: config/tc-sh.c:4179
+msgid "misaligned offset"
+msgstr "ofset tidak teralign"
+
+#: config/tc-sh64.c:568
+msgid "This operand must be constant at assembly time"
+msgstr "Operan ini harus berupa konstanta pada waktu perakitan"
+
+#: config/tc-sh64.c:681
+msgid "Invalid operand expression"
+msgstr "Ekspresi operan tidak valid"
+
+#: config/tc-sh64.c:773 config/tc-sh64.c:877
+msgid "PTB operand is a SHmedia symbol"
+msgstr "PTB operan adalah sebuah simbol SHmedia"
+
+#: config/tc-sh64.c:776 config/tc-sh64.c:874
+msgid "PTA operand is a SHcompact symbol"
+msgstr "PTA operan adalah sebuah simbol SHcompact"
+
+#: config/tc-sh64.c:792
+msgid "invalid expression in operand"
+msgstr "ekspresi dalam operan tidak valid"
+
+#: config/tc-sh64.c:1483
+#, c-format
+msgid "invalid operand, not a 5-bit unsigned value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 5 bit unsigned: %d"
+
+#: config/tc-sh64.c:1488
+#, c-format
+msgid "invalid operand, not a 6-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 6-bit signed: %d"
+
+#: config/tc-sh64.c:1493
+#, c-format
+msgid "invalid operand, not a 6-bit unsigned value: %d"
+msgstr "operan tidak valid, bukan sebuan nilai 6 bit unsigned: %d"
+
+#: config/tc-sh64.c:1498 config/tc-sh64.c:1510
+#, c-format
+msgid "invalid operand, not a 11-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 11 bit signed: %d"
+
+#: config/tc-sh64.c:1500
+#, c-format
+msgid "invalid operand, not a multiple of 32: %d"
+msgstr "operan tidak valid, bukan kelipatan dari 32: %d"
+
+#: config/tc-sh64.c:1505
+#, c-format
+msgid "invalid operand, not a 10-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 10 bit signed: %d"
+
+#: config/tc-sh64.c:1512
+#, c-format
+msgid "invalid operand, not an even value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai: %d"
+
+#: config/tc-sh64.c:1517
+#, c-format
+msgid "invalid operand, not a 12-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 12 bit signed: %d"
+
+#: config/tc-sh64.c:1519
+#, c-format
+msgid "invalid operand, not a multiple of 4: %d"
+msgstr "operan tidak valid, bukan kelipatan dari 4: %d"
+
+#: config/tc-sh64.c:1524
+#, c-format
+msgid "invalid operand, not a 13-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 13 bit signed: %d"
+
+#: config/tc-sh64.c:1526
+#, c-format
+msgid "invalid operand, not a multiple of 8: %d"
+msgstr "operan tidak valid, bukan kelipatan dari 8: %d"
+
+#: config/tc-sh64.c:1531
+#, c-format
+msgid "invalid operand, not a 16-bit signed value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 16 signed: %d"
+
+#: config/tc-sh64.c:1536
+#, c-format
+msgid "invalid operand, not a 16-bit unsigned value: %d"
+msgstr "operan tidak valid, bukan sebuah nilai 16-bit unsigned: %d"
+
+#: config/tc-sh64.c:1542
+msgid "operand out of range for PT, PTA and PTB"
+msgstr "operan diluar dari jangkauan untuk PT, PTA dan PTB"
+
+#: config/tc-sh64.c:1544
+#, c-format
+msgid "operand not a multiple of 4 for PT, PTA or PTB: %d"
+msgstr "operan bukan kelipatan dari 4 untuk PT, PTA atau PTB: %d"
+
+#: config/tc-sh64.c:2064
+#, c-format
+msgid "MOVI operand is not a 32-bit signed value: 0x%8x%08x"
+msgstr "MOVI operan bukan sebuah nilai 32 bit signed: 0x%8xx%08x"
+
+#: config/tc-sh64.c:2421 config/tc-sh64.c:2584 config/tc-sh64.c:2599
+msgid "invalid PIC reference"
+msgstr "referensi PIC tidak valid"
+
+#: config/tc-sh64.c:2478
+msgid "can't find opcode"
+msgstr "tidak dapat menemukan opkode"
+
+#: config/tc-sh64.c:2681 config/tc-sh64.c:2721
+msgid "invalid operand: expression in PT target"
+msgstr "operan tidak valid: ekspresi dalam PT target"
+
+#: config/tc-sh64.c:2812
+#, c-format
+msgid "invalid operands to %s"
+msgstr "operan ke %s tidak valid"
+
+#: config/tc-sh64.c:2818
+#, c-format
+msgid "excess operands to %s"
+msgstr "kelebihan operak ke %s"
+
+#: config/tc-sh64.c:2863
+#, c-format
+msgid "The `.mode %s' directive is not valid with this architecture"
+msgstr "Direktif `.mode %s' tidak valid untuk arsitektur ini"
+
+#: config/tc-sh64.c:2871
+#, c-format
+msgid "Invalid argument to .mode: %s"
+msgstr "Argumen ke .mode: %s tidak valid"
+
+#: config/tc-sh64.c:2901
+#, c-format
+msgid "The `.abi %s' directive is not valid with this architecture"
+msgstr "Direktif `.abi %s' tidak valid untuk arsitektur ini"
+
+#: config/tc-sh64.c:2907
+msgid "`.abi 64' but command-line options do not specify 64-bit ABI"
+msgstr "`.abi 64' tetapi opsi baris-perintah tidak menspesifikasikan 64-bit ABI"
+
+#: config/tc-sh64.c:2912
+msgid "`.abi 32' but command-line options do not specify 32-bit ABI"
+msgstr "`.abi 32' tetapi opsi baris-perintah tidak menspesifikasikan 32-bit ABI"
+
+#: config/tc-sh64.c:2915
+#, c-format
+msgid "Invalid argument to .abi: %s"
+msgstr "argumen ke .abit: %s tidak valid"
+
+#: config/tc-sh64.c:2970
+msgid "-no-mix is invalid without specifying SHcompact or SHmedia"
+msgstr "-no-mix tidak valid tanpa menspesifikasikan SHcompact atau SHmedia"
+
+#: config/tc-sh64.c:2975
+msgid "-shcompact-const-crange is invalid without SHcompact"
+msgstr "-shcompact-const-crange tidak valid tanpa SHcompact"
+
+#: config/tc-sh64.c:2978
+msgid "-expand-pt32 only valid with -abi=64"
+msgstr "-expand-pt32 hanya valid dengan -abi=64"
+
+#: config/tc-sh64.c:2981
+msgid "-no-expand only valid with SHcompact or SHmedia"
+msgstr "-no-expand hanya valid dengan SHcompact atau SHmedia"
+
+#: config/tc-sh64.c:2984
+msgid "-expand-pt32 invalid together with -no-expand"
+msgstr "-expand-pt32 tidak valid bersama dengan -no-expand"
+
+#: config/tc-sh64.c:3198
+msgid "SHmedia code not allowed in same section as constants and SHcompact code"
+msgstr "kode SHmedia tidak diperbolehkan dalam daerah yang sama sebagai konstanta dan kode SHcompact"
+
+#: config/tc-sh64.c:3216
+msgid "No segment info for current section"
+msgstr "Tidak ada informasi segmen untuk daerah ini"
+
+#: config/tc-sh64.c:3255
+msgid "duplicate datalabel operator ignored"
+msgstr "duplikasi operator datalabel diabaikan"
+
+#: config/tc-sh64.c:3325
+msgid "Invalid DataLabel expression"
+msgstr "ekspresi DataLabel tidak valid"
+
+#: config/tc-sparc.c:272
+msgid "Invalid default architecture, broken assembler."
+msgstr "Default architectur tidak valid, perakit rusak."
+
+#: config/tc-sparc.c:276 config/tc-sparc.c:481
+msgid "Bad opcode table, broken assembler."
+msgstr "Tabel opkode buruk, perakit rusak."
+
+#: config/tc-sparc.c:473
+#, c-format
+msgid "invalid architecture -xarch=%s"
+msgstr "arsitektur -xarch=%s tidak valid"
+
+#: config/tc-sparc.c:475
+#, c-format
+msgid "invalid architecture -A%s"
+msgstr "arsitektur -A%s tidak valid"
+
+#: config/tc-sparc.c:542
+#, c-format
+msgid "No compiled in support for %d bit object file format"
+msgstr "Tidak dikompile untuk mendukung %d bit format berkas objek"
+
+#: config/tc-sparc.c:619
+#, c-format
+msgid "SPARC options:\n"
+msgstr "Opsi SPARC:\n"
+
+#: config/tc-sparc.c:648
+#, c-format
+msgid ""
+"\n"
+"\t\t\tspecify variant of SPARC architecture\n"
+"-bump\t\t\twarn when assembler switches architectures\n"
+"-sparc\t\t\tignored\n"
+"--enforce-aligned-data\tforce .long, etc., to be aligned correctly\n"
+"-relax\t\t\trelax jumps and branches (default)\n"
+"-no-relax\t\tavoid changing any jumps and branches\n"
+msgstr ""
+"\n"
+"\t\t\tspesifikasikan variasi dari arsitektur SPARC\n"
+"-bump\t\t\tperingatkan ketika perakit berubah arsitektur\n"
+"-sparc\t\t\tdiabaikan\n"
+"--enforce-aligned-data\tforce .long, etc., untuk dialign secara benar\n"
+"-relax\t\t\trelax jump dan bercabang (baku)\n"
+"-no-relax\t\thindari mengubah lompat dan cabang apapun\n"
+
+#: config/tc-sparc.c:656
+#, c-format
+msgid "-k\t\t\tgenerate PIC\n"
+msgstr "-k\t\t\tmenghasilkan PIC\n"
+
+#: config/tc-sparc.c:660
+#, c-format
+msgid ""
+"-32\t\t\tcreate 32 bit object file\n"
+"-64\t\t\tcreate 64 bit object file\n"
+msgstr ""
+"-32\t\t\tmembuat 32 bit berkas objek\n"
+"-64\t\t\tmembuat 64 bit berkas objek\n"
+
+#: config/tc-sparc.c:663
+#, c-format
+msgid "\t\t\t[default is %d]\n"
+msgstr "\t\t\t[baku adalah %d]\n"
+
+#: config/tc-sparc.c:665
+#, c-format
+msgid ""
+"-TSO\t\t\tuse Total Store Ordering\n"
+"-PSO\t\t\tuse Partial Store Ordering\n"
+"-RMO\t\t\tuse Relaxed Memory Ordering\n"
+msgstr ""
+"-TSO\t\t\tgunakan Total Store Ordering\n"
+"-PSO\t\t\tgunakan Partial Store Ordering\n"
+"-RMO\t\t\tgunakan Relaxed Memory Ordering\n"
+
+#: config/tc-sparc.c:669
+#, c-format
+msgid "\t\t\t[default is %s]\n"
+msgstr "\t\t\t[default adalah %s]\n"
+
+#: config/tc-sparc.c:671
+#, c-format
+msgid ""
+"-KPIC\t\t\tgenerate PIC\n"
+"-V\t\t\tprint assembler version number\n"
+"-undeclared-regs\tignore application global register usage without\n"
+"\t\t\tappropriate .register directive (default)\n"
+"-no-undeclared-regs\tforce error on application global register usage\n"
+"\t\t\twithout appropriate .register directive\n"
+"-q\t\t\tignored\n"
+"-Qy, -Qn\t\tignored\n"
+"-s\t\t\tignored\n"
+msgstr ""
+"-KPIC\t\t\tmenghasilkan PIC\n"
+"-V\t\t\tmenampilkan nomor versi perakit\n"
+"-undeclared-regs\tmengabaikan penggunaan aplikasi global register tanpa\n"
+"\t\t\tdirektif .register yang sesuai (baku)\n"
+"-no-undeclared-regs\tpaksa error di penggunaan aplikasi global register\n"
+"\t\t\ttanpa direktif .register yang sesuai\n"
+"-q\t\t\tdiabaikan\n"
+"-Qy, -Qn\t\tdiabaikan\n"
+"-s\t\t\tdiabaikan\n"
+
+#: config/tc-sparc.c:683
+#, c-format
+msgid ""
+"-EL\t\t\tgenerate code for a little endian machine\n"
+"-EB\t\t\tgenerate code for a big endian machine\n"
+"--little-endian-data\tgenerate code for a machine having big endian\n"
+"                        instructions and little endian data.\n"
+msgstr ""
+"-EL\t\t\tmenghasilkan kode untuk sebuah mesin little endian\n"
+"-EB\t\t\tmenghasilkan kode untuk sebuah mesin big endian\n"
+"--little-endian-data\tmenghasilan kode untuk sebuah mesing memiliki instruksi\n"
+"                         big endian dan data little endian.\n"
+
+#: config/tc-sparc.c:819
+#, c-format
+msgid "Internal error: losing opcode: `%s' \"%s\"\n"
+msgstr "Internal error: opkode hilang: `%s' \"%s\"\n"
+
+#: config/tc-sparc.c:838
+#, c-format
+msgid "Internal error: can't find opcode `%s' for `%s'\n"
+msgstr "Internal error: tidak dapat menemukan opkode `%s' untuk `%s'\n"
+
+#: config/tc-sparc.c:979
+msgid "Support for 64-bit arithmetic not compiled in."
+msgstr "Dukungan untuk aritmetik 64 bit tidak dikompile."
+
+#: config/tc-sparc.c:1025
+msgid "set: number not in 0..4294967295 range"
+msgstr "set: nomor tidak dalam jangkauan 0..4294967295"
+
+#: config/tc-sparc.c:1032
+msgid "set: number not in -2147483648..4294967295 range"
+msgstr "set: nomor tidak dalam jangkauan -2147483648..4294967295"
+
+#: config/tc-sparc.c:1091
+msgid "setsw: number not in -2147483648..4294967295 range"
+msgstr "setsw: nomor tidak dalam jangkauan -2147483648..4294967295"
+
+#: config/tc-sparc.c:1139
+msgid "setx: temporary register same as destination register"
+msgstr "setx: nama register sementara sama dengan register tujuan"
+
+#: config/tc-sparc.c:1210
+msgid "setx: illegal temporary register g0"
+msgstr "setx: register sementara g0 tidak legal"
+
+#: config/tc-sparc.c:1307
+msgid "FP branch in delay slot"
+msgstr "FP branch dalam delay slot"
+
+#: config/tc-sparc.c:1322
+msgid "FP branch preceded by FP instruction; NOP inserted"
+msgstr "FP branch diawali oleh instruksi FP; NOP dimasukan"
+
+#: config/tc-sparc.c:1362
+msgid "failed special case insn sanity check"
+msgstr "gagal kasus spesial pemeriksaan sanity insn"
+
+#: config/tc-sparc.c:1450
+msgid ": invalid membar mask name"
+msgstr ": nama mask member tidak valid"
+
+#: config/tc-sparc.c:1466
+msgid ": invalid membar mask expression"
+msgstr ": ekpresi mask membar tidak valid"
+
+#: config/tc-sparc.c:1471
+msgid ": invalid membar mask number"
+msgstr ": nomor mask membar tidak valid"
+
+#: config/tc-sparc.c:1486
+msgid ": invalid siam mode expression"
+msgstr ": ekspresi mode siam tidak valid"
+
+#: config/tc-sparc.c:1491
+msgid ": invalid siam mode number"
+msgstr ": nomor mode siam tidak valid"
+
+#: config/tc-sparc.c:1507
+msgid ": invalid prefetch function name"
+msgstr ": nama fungsi prefetch tidak valid"
+
+#: config/tc-sparc.c:1515
+msgid ": invalid prefetch function expression"
+msgstr ": ekspresi fungsi prefetch tidak valid"
+
+#: config/tc-sparc.c:1520
+msgid ": invalid prefetch function number"
+msgstr ": nomor fungsi prefetch tidak valid"
+
+#: config/tc-sparc.c:1548 config/tc-sparc.c:1560
+msgid ": unrecognizable privileged register"
+msgstr ": register privileged tidak dikenal"
+
+#: config/tc-sparc.c:1584 config/tc-sparc.c:1596
+msgid ": unrecognizable hyperprivileged register"
+msgstr ": register hyperprivileged tidak dikenal"
+
+#: config/tc-sparc.c:1620 config/tc-sparc.c:1645
+msgid ": unrecognizable v9a or v9b ancillary state register"
+msgstr ": tidak dikenal v9a atau v9b ancillary state register"
+
+#: config/tc-sparc.c:1625
+msgid ": rd on write only ancillary state register"
+msgstr ": rd di write hanya ancillary state register"
+
+#. %sys_tick and %sys_tick_cmpr are v9bnotv9a
+#: config/tc-sparc.c:1633
+msgid ": unrecognizable v9a ancillary state register"
+msgstr ": tidak dikenal v9a register keadaan tambahan"
+
+#: config/tc-sparc.c:1669
+msgid ": asr number must be between 16 and 31"
+msgstr ": asr nomor harus berada diantara 16 dan 31"
+
+#: config/tc-sparc.c:1677
+msgid ": asr number must be between 0 and 31"
+msgstr ": nomor asr harus berada diantara 0 dan 31"
+
+#: config/tc-sparc.c:1687
+#, c-format
+msgid ": expecting %asrN"
+msgstr ": menduga %asrN"
+
+#: config/tc-sparc.c:1874 config/tc-sparc.c:1912 config/tc-sparc.c:2325
+#: config/tc-sparc.c:2361
+#, c-format
+msgid "Illegal operands: %%%s requires arguments in ()"
+msgstr "Operan tidak lega: %%%s membutuhkan argumen dalam ()"
+
+#: config/tc-sparc.c:1880
+#, c-format
+msgid "Illegal operands: %%%s cannot be used together with other relocs in the insn ()"
+msgstr "Operan tidak legal: %%%s tidak dapat digunakan bersama dengan relokasi lain dalam insn ()"
+
+#: config/tc-sparc.c:1891
+#, c-format
+msgid "Illegal operands: %%%s can be only used with call __tls_get_addr"
+msgstr "Operan tidak legal: %%%s hanya dapat digunakan dengan call __tls_get_addr"
+
+#: config/tc-sparc.c:2098
+msgid "detected global register use not covered by .register pseudo-op"
+msgstr "terdeteksi penggunaan global register tidak dilingkupi oleh .register pseudo-op"
+
+#: config/tc-sparc.c:2169
+msgid ": There are only 64 f registers; [0-63]"
+msgstr ": Disana hanya ada 64 f register; [0-63]"
+
+#: config/tc-sparc.c:2171 config/tc-sparc.c:2189
+msgid ": There are only 32 f registers; [0-31]"
+msgstr ": Disana hanya ada 32 f register; [0-31]"
+
+#: config/tc-sparc.c:2181
+msgid ": There are only 32 single precision f registers; [0-31]"
+msgstr ": Disana hanya ada 32 presisi tunggal f register; [0-31]"
+
+#: config/tc-sparc.c:2373
+#, c-format
+msgid "Illegal operands: Can't do arithmetics other than + and - involving %%%s()"
+msgstr "Operan tidak lega: Tidak dapat melakukan aritmetik selain + dan - melibatkan %%%s()"
+
+#: config/tc-sparc.c:2483
+#, c-format
+msgid "Illegal operands: Can't add non-constant expression to %%%s()"
+msgstr "Operan tidak legal: Tidak dapat menambahkan ekpresi tidak konstan ke %%%s()"
+
+#: config/tc-sparc.c:2493
+#, c-format
+msgid "Illegal operands: Can't do arithmetics involving %%%s() of a relocatable symbol"
+msgstr "Operan tidak legal: Tidak dapat melakukan aritmetik melibatkan %%%s() dari relokasi simbol"
+
+#: config/tc-sparc.c:2511
+msgid ": PC-relative operand can't be a constant"
+msgstr ": PC-relatif operan tidak dapat berupa sebuah konstanta"
+
+#: config/tc-sparc.c:2518
+msgid ": TLS operand can't be a constant"
+msgstr ": TLS operan tidak dapat berupa sebuah konstanta"
+
+#: config/tc-sparc.c:2551
+msgid ": invalid ASI name"
+msgstr ": nama ASI tidak valid"
+
+#: config/tc-sparc.c:2559
+msgid ": invalid ASI expression"
+msgstr ": ekspresi ASI tidak valid"
+
+#: config/tc-sparc.c:2564
+msgid ": invalid ASI number"
+msgstr ": nomor ASI tidak valid"
+
+#: config/tc-sparc.c:2661
+msgid "OPF immediate operand out of range (0-0x1ff)"
+msgstr "OPF operan langsung diluar dari jangkauan (0-0x1ff)"
+
+#: config/tc-sparc.c:2666
+msgid "non-immediate OPF operand, ignored"
+msgstr "bukan-langsung OPF operan, diabaikan"
+
+#: config/tc-sparc.c:2685
+msgid ": invalid cpreg name"
+msgstr ": nama cpreg tidak valid"
+
+#: config/tc-sparc.c:2714
+#, c-format
+msgid "Illegal operands%s"
+msgstr "operans%s tidal legal"
+
+#: config/tc-sparc.c:2748
+#, c-format
+msgid "architecture bumped from \"%s\" to \"%s\" on \"%s\""
+msgstr "arsitektur bumped dari \"%s\" ke \"%s\" di \"%s\""
+
+#: config/tc-sparc.c:2784
+#, c-format
+msgid "Architecture mismatch on \"%s\"."
+msgstr "Arsitektur tidak cocok di \"%s\"."
+
+#: config/tc-sparc.c:2785
+#, c-format
+msgid " (Requires %s; requested architecture is %s.)"
+msgstr " (Membutuhkan %s; arsitektur yang diinginkan adalah %s.)"
+
+#: config/tc-sparc.c:3320
+#, c-format
+msgid "bad or unhandled relocation type: 0x%02x"
+msgstr "buruk atau tidak tertangani tipe relokasi: 0x%02x"
+
+#: config/tc-sparc.c:3653
+msgid "Expected comma after name"
+msgstr "Diduga koma setelah nama"
+
+#: config/tc-sparc.c:3662
+#, c-format
+msgid "BSS length (%d.) <0! Ignored."
+msgstr "panjang BSS (%d.) <0! Diabaikan."
+
+#: config/tc-sparc.c:3674
+msgid "bad .reserve segment -- expected BSS segment"
+msgstr "segmen .reserve buruk -- diduga segmen BSS"
+
+#: config/tc-sparc.c:3702
+#, c-format
+msgid "alignment too large; assuming %d"
+msgstr "algnmen terlalu besar; diasumsikan %d"
+
+#: config/tc-sparc.c:3708 config/tc-sparc.c:3858
+msgid "negative alignment"
+msgstr "alignmen negatif"
+
+#: config/tc-sparc.c:3718 config/tc-sparc.c:3881 read.c:1320 read.c:2355
+msgid "alignment not a power of 2"
+msgstr "alignmen bukan kelipatan dari 2"
+
+#: config/tc-sparc.c:3795 config/tc-v850.c:222
+msgid "Expected comma after symbol-name"
+msgstr "Diduga koma setelah nama-simbol"
+
+#: config/tc-sparc.c:3805
+#, c-format
+msgid ".COMMon length (%lu) out of range ignored"
+msgstr "panjang .COMMon (%lu) diluar dari jangkauan diabaikan"
+
+#: config/tc-sparc.c:3838
+msgid "Expected comma after common length"
+msgstr "Diduga koma setelah panjang umum"
+
+#: config/tc-sparc.c:3852
+#, c-format
+msgid "alignment too large; assuming %ld"
+msgstr "alignmen terlalu besar; diasumsikan %ld"
+
+#: config/tc-sparc.c:3996
+msgid "Unknown segment type"
+msgstr "Tipe segmen tidak diketahui"
+
+#: config/tc-sparc.c:4071 config/tc-sparc.c:4081
+#, c-format
+msgid "register syntax is .register %%g[2367],{#scratch|symbolname|#ignore}"
+msgstr "sintaks register adalah .register %%g[2367],{#scratch|namasimbol|#ignore}"
+
+#: config/tc-sparc.c:4099
+msgid "redefinition of global register"
+msgstr "redefinisi dari register global"
+
+#: config/tc-sparc.c:4110
+#, c-format
+msgid "Register symbol %s already defined."
+msgstr "Simbol register %s telah terdefinisi."
+
+#: config/tc-sparc.c:4315
+#, c-format
+msgid "Illegal operands: %%r_plt in %d-byte data field"
+msgstr "Operan tidak legal: %%r_plt dalam %d-byte data field"
+
+#: config/tc-sparc.c:4325
+#, c-format
+msgid "Illegal operands: %%r_tls_dtpoff in %d-byte data field"
+msgstr "Operan tidak legal: %%r_tls_dtpoff dalam %d-byte data field"
+
+#: config/tc-sparc.c:4362 config/tc-vax.c:3312
+#, c-format
+msgid "Illegal operands: Only %%r_%s%d allowed in %d-byte data fields"
+msgstr "Operan tidak legal: Hanya %%r_%s%d diijinkan dalam %d-byte data fields"
+
+#: config/tc-sparc.c:4370 config/tc-sparc.c:4401 config/tc-sparc.c:4410
+#: config/tc-vax.c:3320 config/tc-vax.c:3351 config/tc-vax.c:3360
+#, c-format
+msgid "Illegal operands: %%r_%s%d requires arguments in ()"
+msgstr "Operan tidak legal: %%r_%s%d membutuhkan argumen dalam ()"
+
+#: config/tc-sparc.c:4419 config/tc-vax.c:3369
+#, c-format
+msgid "Illegal operands: garbage after %%r_%s%d()"
+msgstr "Operan tidak legal: sampah sesudah %%r_%s%d()"
+
+#: config/tc-sparc.h:60
+msgid "sparc convert_frag\n"
+msgstr "sparc convert_frag\n"
+
+#: config/tc-sparc.h:62 config/tc-z80.h:53
+msgid "estimate_size_before_relax called"
+msgstr "estimate_size_before_relax dipanggil"
+
+#: config/tc-spu.c:127
+#, c-format
+msgid "Can't hash instruction '%s':%s"
+msgstr "Tidak dapat menghash instruksi '%s':%s"
+
+#: config/tc-spu.c:181
+msgid ""
+"SPU options:\n"
+"  --apuasm\t\t  emulate behaviour of apuasm\n"
+msgstr ""
+"opsi SPU:\n"
+"  --apuasm\t\t  emulasikan perilaku dari apuasm\n"
+
+#: config/tc-spu.c:287
+#, c-format
+msgid "Invalid mnemonic '%s'"
+msgstr "mnemonic '%s' tidak valid"
+
+#: config/tc-spu.c:293
+#, c-format
+msgid "'%s' is only available in DD2.0 or higher."
+msgstr "'%s' hanya tersedia dalam DD2.0 atau lebih tinggi."
+
+#: config/tc-spu.c:325
+#, c-format
+msgid "Error in argument %d.  Expecting:  \"%s\""
+msgstr "Error dalam argumen %d. Diduga: \"%s\""
+
+#: config/tc-spu.c:336
+msgid "Mixing register syntax, with and without '$'."
+msgstr "Mencampurkan sintaks register, dengan dan tanpa '$'."
+
+#: config/tc-spu.c:342
+#, c-format
+msgid "Treating '%-*s' as a symbol."
+msgstr "Memperlakukan '%-*s' sebagai sebuah simbol."
+
+#: config/tc-spu.c:548
+msgid "'SPU_RdEventMask' (channel 11) is only available in DD2.0 or higher."
+msgstr "'SPU_RdEventMask' (channel 11) hanya tersedia dalam DD2.0 atau lebih tinggi."
+
+#: config/tc-spu.c:550
+msgid "'MFC_RdTagMask' (channel 12) is only available in DD2.0 or higher."
+msgstr "'MFC_RdTagMask' (channel 12) hanya tersedia dalam DD2.0 atau lebih tinggi."
+
+#: config/tc-spu.c:593
+#, c-format
+msgid "Using old style, %%lo(expr), please change to PPC style, expr@l."
+msgstr "Menggunakan gaya lama, %%lo(expr), tolong ubah ke gaya PPC, expr@l."
+
+#: config/tc-spu.c:599
+#, c-format
+msgid "Using old style, %%hi(expr), please change to PPC style, expr@h."
+msgstr "Menggunakan gaya lama, %%hi(expr), tolong ubah ke gaya PPC, expr@h"
+
+#: config/tc-spu.c:669 config/tc-spu.c:672
+#, c-format
+msgid "Constant expression %d out of range, [%d, %d]."
+msgstr "Konstan ekpresi %d diluar dari jangkauan, [%d, %d]."
+
+#: config/tc-spu.c:806
+msgid "Relaxation should never occur"
+msgstr "Relaksasi seharusnya tidak pernah terjadi"
+
+#: config/tc-spu.h:83
+msgid "spu convert_frag\n"
+msgstr "spu convert_frag\n"
+
+#: config/tc-tic4x.c:2779
+#, c-format
+msgid ""
+"\n"
+"TIC4X options:\n"
+"  -mcpu=CPU  -mCPU        select architecture variant. CPU can be:\n"
+"                            30 - TMS320C30\n"
+"                            31 - TMS320C31, TMS320LC31\n"
+"                            32 - TMS320C32\n"
+"                            33 - TMS320VC33\n"
+"                            40 - TMS320C40\n"
+"                            44 - TMS320C44\n"
+"  -mrev=REV               set cpu hardware revision (integer numbers).\n"
+"                          Combinations of -mcpu and -mrev will enable/disable\n"
+"                          the appropriate options (-midle2, -mlowpower and\n"
+"                          -menhanced) according to the selected type\n"
+"  -mbig                   select big memory model\n"
+"  -msmall                 select small memory model (default)\n"
+"  -mregparm               select register parameters (default)\n"
+"  -mmemparm               select memory parameters\n"
+"  -midle2                 enable IDLE2 support\n"
+"  -mlowpower              enable LOPOWER and MAXSPEED support\n"
+"  -menhanced              enable enhanced opcode support\n"
+msgstr ""
+"\n"
+"Opsi TIC4X:\n"
+"  -mcpu=CPU  -mCPU          pilih variasi arsitektur. CPU dapat berupa:\n"
+"                              30 - TMS320C30\n"
+"                              31 - TMS320C31, TMS320LC31\n"
+"                              32 - TMS320C32\n"
+"                              33 - TMS320VC33\n"
+"                              40 - TMS320C40\n"
+"                              44 - TMS320C44\n"
+"  -mrev=REV                 set revisi perangkat cpu (bilangan bulat).\n"
+"                            Kombinasi dari -mcpu dan -mrev akan menaktifkan/menon-aktifkan\n"
+"                            opsi yang sesuai (-midle2, -mlowpower dan\n"
+"                            -menhanced) menurut tipe yang dipilih\n"
+"  -mbig                     pilih model memori besar\n"
+"  -msmall                   pilih model memori kecil (baku)\n"
+"  -mregparm                 pilih parameter register (baku)\n"
+"  -mmemparm                 pilih parameter memori\n"
+"  -midle2                   aktifkan dukungan IDLE2\n"
+"  -mlowpower                aktifkan dukungan LOPOWER dan MAXSPEED\n"
+"  -menhanced                aktifkan dukungan enhanced opkode\n"
+
+#. Only word (et al.), align, or conditionals are allowed within
+#. .struct/.union.
+#: config/tc-tic54x.c:220
+msgid "pseudo-op illegal within .struct/.union"
+msgstr "pseudo-op tidak legal dalam .struct/.union"
+
+#: config/tc-tic54x.c:234
+#, c-format
+msgid "C54x-specific command line  options:\n"
+msgstr "opsi baris perintah C54x spesifik:\n"
+
+#: config/tc-tic54x.c:235
+#, c-format
+msgid "-mfar-mode | -mf          Use extended addressing\n"
+msgstr "-mfar-mode | -mf          Menggunakan pengalamatan ekstended\n"
+
+#: config/tc-tic54x.c:236
+#, c-format
+msgid "-mcpu=<CPU version>       Specify the CPU version\n"
+msgstr "-mcpu=<Versi CPU>         Spesifikasikan versi CPU\n"
+
+#: config/tc-tic54x.c:237
+#, c-format
+msgid "-merrors-to-file <filename>\n"
+msgstr "-merrors-to-file <nama berkas>\n"
+
+#: config/tc-tic54x.c:238
+#, c-format
+msgid "-me <filename>            Redirect errors to a file\n"
+msgstr "-me <nama berkas>         Redirek error ke sebuah berkas\n"
+
+#: config/tc-tic54x.c:350
+msgid "Comma and symbol expected for '.asg STRING, SYMBOL'"
+msgstr "Koma dan simbol diduga untuk '.asg STRING, SIMBOL'"
+
+#: config/tc-tic54x.c:403
+msgid "Unterminated string after absolute expression"
+msgstr "String tidak diselesaikan setelah ekspresi absolut"
+
+#: config/tc-tic54x.c:411
+msgid "Comma and symbol expected for '.eval EXPR, SYMBOL'"
+msgstr "Koma dan simbol diduga untuk '.eval EXPR, SIMBOL'"
+
+#: config/tc-tic54x.c:423
+msgid "symbols assigned with .eval must begin with a letter"
+msgstr "simbol diassign dengan .eval harus diawali dengan sebuah kata"
+
+#: config/tc-tic54x.c:677
+msgid "Offset on nested structures is ignored"
+msgstr "Ofset di struktur nested diabaikan"
+
+#: config/tc-tic54x.c:727
+#, c-format
+msgid ".end%s without preceding .%s"
+msgstr ".end%s tanpa diawali .%s"
+
+#: config/tc-tic54x.c:793
+#, c-format
+msgid "Unrecognized struct/union tag '%s'"
+msgstr "Tanda struct/union tidak dikenal '%s'"
+
+#: config/tc-tic54x.c:795
+msgid ".tag requires a structure tag"
+msgstr ".tag membutuhkan tanda struktur"
+
+#: config/tc-tic54x.c:801
+msgid "Label required for .tag"
+msgstr "Label dibutuhkan untuk .tag"
+
+#: config/tc-tic54x.c:820
+#, c-format
+msgid ".tag target '%s' undefined"
+msgstr ".tag target '%s' tidak terdefinisi"
+
+#: config/tc-tic54x.c:882
+#, c-format
+msgid ".field count '%d' out of range (1 <= X <= 32)"
+msgstr "jumlah .field '%d' diluar dari jangkauan (1 <= X <= 32)"
+
+#: config/tc-tic54x.c:910
+#, c-format
+msgid "Unrecognized field type '%c'"
+msgstr "Tipe field '%c' tidak dikenal"
+
+#. Disallow .byte with a non constant expression that will
+#. require relocation.
+#: config/tc-tic54x.c:1046
+msgid "Relocatable values require at least WORD storage"
+msgstr "Nilai relokasi membutuhkan paling tidak penyimpanan WORD"
+
+#: config/tc-tic54x.c:1107
+msgid "Use of .def/.ref is deprecated.  Use .global instead"
+msgstr "Penggunaan dari .def/.ref adalah kadaluarsa. Lebih baik gunakan .global"
+
+#: config/tc-tic54x.c:1301
+msgid ".space/.bes repeat count is negative, ignored"
+msgstr "jumlah pengulangan .space/.besss adalah negatif, diabaikan"
+
+#: config/tc-tic54x.c:1306
+msgid ".space/.bes repeat count is zero, ignored"
+msgstr "jumlah pengulangan .space/.bes adalah nol, diabaikan"
+
+#: config/tc-tic54x.c:1383
+msgid "Missing size argument"
+msgstr "Hilang argumen ukuran"
+
+#: config/tc-tic54x.c:1517
+msgid "CPU version has already been set"
+msgstr "Versi CPU telah diset"
+
+#: config/tc-tic54x.c:1521
+#, c-format
+msgid "Unrecognized version '%s'"
+msgstr "Versi '%s' tidak dikenal"
+
+#: config/tc-tic54x.c:1527
+msgid "Changing of CPU version on the fly not supported"
+msgstr "Mengubah versi CPU waktu berjalan tidak didukung"
+
+#: config/tc-tic54x.c:1660
+msgid "p2align not supported on this target"
+msgstr "p2align tidak didukung di target ini"
+
+#: config/tc-tic54x.c:1672
+msgid "Argument to .even ignored"
+msgstr "Argmen ke .even diabaikan"
+
+#: config/tc-tic54x.c:1718
+msgid "Invalid field size, must be from 1 to 32"
+msgstr "Ukuran field tidak valid, harus dari 1 ke 32"
+
+#: config/tc-tic54x.c:1731
+msgid "field size must be 16 when value is relocatable"
+msgstr "Ukuran field harus 16 ketika nilai direlokasi"
+
+#: config/tc-tic54x.c:1746
+msgid "field value truncated"
+msgstr "nilai field dipotong"
+
+#: config/tc-tic54x.c:1853 config/tc-tic54x.c:2159
+#, c-format
+msgid "Unrecognized section '%s'"
+msgstr "Daerah '%s' tidak dikenal"
+
+#: config/tc-tic54x.c:1862
+msgid "Current section is unitialized, section name required for .clink"
+msgstr "Daerah sekarang tidak terinisiallisasi, nama daerah dibutuhkan untuk .clink"
+
+#: config/tc-tic54x.c:2069
+msgid "ENDLOOP without corresponding LOOP"
+msgstr "ENDLOOP tanpa pasangan LOOP"
+
+#: config/tc-tic54x.c:2110
+msgid "Mixing of normal and extended addressing not supported"
+msgstr "Mencampurkan pengalamatan normal dan ekstensi tidak didukung"
+
+#: config/tc-tic54x.c:2116
+msgid "Extended addressing not supported on the specified CPU"
+msgstr "Pengalamatan ekstensi tidak didukung di CPU yang dispesifikasikan"
+
+#: config/tc-tic54x.c:2165
+msgid ".sblock may be used for initialized sections only"
+msgstr ".sblock mungkin digunakan untuk daerah yang diinisialisasi saja"
+
+#: config/tc-tic54x.c:2195
+msgid "Symbol missing for .set/.equ"
+msgstr "Simbol untuk .set/.equ hilang"
+
+#: config/tc-tic54x.c:2251
+msgid ".var may only be used within a macro definition"
+msgstr ".var hanya boleh digunakan dalam sebuah definisi makro"
+
+#: config/tc-tic54x.c:2259
+msgid "Substitution symbols must begin with a letter"
+msgstr "Penggantian simbol harus diawali dengan sebuah kata"
+
+#: config/tc-tic54x.c:2352
+#, c-format
+msgid "can't open macro library file '%s' for reading: %s"
+msgstr "tidak dapat membuka berkas perpustakaan makro '%s' untuk pembacaan: %s"
+
+#: config/tc-tic54x.c:2359
+#, c-format
+msgid "File '%s' not in macro archive format"
+msgstr "Berkas '%s' tidak dalam format archive makro"
+
+#: config/tc-tic54x.c:2489
+#, c-format
+msgid "Bad COFF version '%s'"
+msgstr "Versi COFF '%s' buruk"
+
+#: config/tc-tic54x.c:2498
+#, c-format
+msgid "Bad CPU version '%s'"
+msgstr "Versi CPU '%s' buruk"
+
+#: config/tc-tic54x.c:2511 config/tc-tic54x.c:2514
+#, c-format
+msgid "Can't redirect stderr to the file '%s'"
+msgstr "Tidak dapat meredireksi stderr ke berkas '%s'"
+
+#: config/tc-tic54x.c:2629
+#, c-format
+msgid "Undefined substitution symbol '%s'"
+msgstr "Penggantian simbol '%s' tidak terdefinisi"
+
+#: config/tc-tic54x.c:3218
+msgid "Badly formed address expression"
+msgstr "Pernyataan alamat memiliki bentuk buruk"
+
+#: config/tc-tic54x.c:3471
+#, c-format
+msgid "Invalid dmad syntax '%s'"
+msgstr "sintaks dmad '%s' tidak valid"
+
+#: config/tc-tic54x.c:3535
+#, c-format
+msgid "Use the .mmregs directive to use memory-mapped register names such as '%s'"
+msgstr "Penggunaan direktif .mmregs untuk menggunakan nama register memori-mapped seperti '%s'"
+
+#: config/tc-tic54x.c:3586
+msgid "Address mode *+ARx is write-only. Results of reading are undefined."
+msgstr "Mode alamat *+ARx adalah tulis-saja. Hasil dari pembacaan tidak terdefinisi."
+
+#: config/tc-tic54x.c:3606
+#, c-format
+msgid "Unrecognized indirect address format \"%s\""
+msgstr "Format alamat \"%s\" tidak langsung tidak dikenal"
+
+#: config/tc-tic54x.c:3644
+#, c-format
+msgid "Operand '%s' out of range (%d <= x <= %d)"
+msgstr "Operan '%s' diluar dari jangkauan (%d <= x <= %d)"
+
+#: config/tc-tic54x.c:3664
+msgid "Error in relocation handling"
+msgstr "Error dalam penanganan relokasi"
+
+#: config/tc-tic54x.c:3683 config/tc-tic54x.c:3745 config/tc-tic54x.c:3773
+#, c-format
+msgid "Unrecognized condition code \"%s\""
+msgstr "Kondisi kode \"%s\" tidak dikenal"
+
+#: config/tc-tic54x.c:3700
+#, c-format
+msgid "Condition \"%s\" does not match preceding group"
+msgstr "Kondisi \"%s\" tidak cocok dengan grup sebelumnya"
+
+#: config/tc-tic54x.c:3708
+#, c-format
+msgid "Condition \"%s\" uses a different accumulator from a preceding condition"
+msgstr "Kondisi \"%s\" menggunakan akumulator berbeda dari kondisi sebelumnya"
+
+#: config/tc-tic54x.c:3715
+msgid "Only one comparison conditional allowed"
+msgstr "Hanya satu perbandingan kondisional yang diperbolehkan"
+
+#: config/tc-tic54x.c:3720
+msgid "Only one overflow conditional allowed"
+msgstr "Hanya satu kondisional overflow yang diperbolehkan"
+
+#: config/tc-tic54x.c:3728
+#, c-format
+msgid "Duplicate %s conditional"
+msgstr "Duplikasi %s kondisional"
+
+#: config/tc-tic54x.c:3759
+msgid "Invalid auxiliary register (use AR0-AR7)"
+msgstr "register tambahan tidak valid (gunakan AR0-AR7)"
+
+#: config/tc-tic54x.c:3790
+msgid "lk addressing modes are invalid for memory-mapped register addressing"
+msgstr "mode pengalamatan lk tidak valid untuk pengalamatan register memori-terpeta"
+
+#: config/tc-tic54x.c:3798
+msgid "Address mode *+ARx is not allowed in memory-mapped register addressing.  Resulting behavior is undefined."
+msgstr "Mode alamat *+ARx tida diperbolehkan dalam pengalamatan register memori-terpeta. Menghasilkan perilaku yang tidak terdefinisi."
+
+#: config/tc-tic54x.c:3824
+msgid "Destination accumulator for each part of this parallel instruction must be different"
+msgstr "Akumulator tujuan untuk setiap bagian dari instruksi paralel ini harus berbeda"
+
+#: config/tc-tic54x.c:3873
+#, c-format
+msgid "Memory mapped register \"%s\" out of range"
+msgstr "Register memori terpeta \"%s\" diluar dari jangkauan"
+
+#: config/tc-tic54x.c:3912
+msgid "Invalid operand (use 1, 2, or 3)"
+msgstr "Operan tidak valid (gunakan 1, 2, atau 3)"
+
+#: config/tc-tic54x.c:3937
+msgid "A status register or status bit name is required"
+msgstr "Sebuah register status atau nama bit status dibutuhkan"
+
+#: config/tc-tic54x.c:3947
+#, c-format
+msgid "Unrecognized status bit \"%s\""
+msgstr "Status bit \"%s\" tidak dikenal"
+
+#: config/tc-tic54x.c:3970
+#, c-format
+msgid "Invalid status register \"%s\""
+msgstr "Register status \"%s\" tidak valid"
+
+#: config/tc-tic54x.c:3982
+#, c-format
+msgid "Operand \"%s\" out of range (use 1 or 2)"
+msgstr "Operan \"%s\" diluar dari jangkauan (gunakan 1 atau 2)"
+
+#: config/tc-tic54x.c:4185
+#, c-format
+msgid "Unrecognized instruction \"%s\""
+msgstr "Instruksi \"%s\" tidak dikenal"
+
+#: config/tc-tic54x.c:4214
+#, c-format
+msgid "Unrecognized operand list '%s' for instruction '%s'"
+msgstr "Daftar operan '%s' tidak dikenal untuk instruksi '%s'"
+
+#: config/tc-tic54x.c:4243
+#, c-format
+msgid "Unrecognized parallel instruction \"%s\""
+msgstr "Instruksi paralel \"%s\" tidak dikenal"
+
+#: config/tc-tic54x.c:4292
+#, c-format
+msgid "Invalid operand (s) for parallel instruction \"%s\""
+msgstr "operan tidak valid untuk instruksi paralel \"%s\""
+
+#: config/tc-tic54x.c:4295
+#, c-format
+msgid "Unrecognized parallel instruction combination \"%s || %s\""
+msgstr "Kombinasi instruksi paralel \" %s || %s\" tidak dikenal"
+
+#: config/tc-tic54x.c:4522
+#, c-format
+msgid "%s symbol recursion stopped at second appearance of '%s'"
+msgstr "simbol rekursif %s berhenti di detik penampilan dari '%s'"
+
+#: config/tc-tic54x.c:4562
+msgid "Unrecognized substitution symbol function"
+msgstr "fungsi penggantian simbol tidak dikenal"
+
+#: config/tc-tic54x.c:4567
+msgid "Missing '(' after substitution symbol function"
+msgstr "Hilang '(' setelah penggantian fungsi simbol"
+
+#: config/tc-tic54x.c:4581
+msgid "Expecting second argument"
+msgstr "Menduga argumen kedua"
+
+#: config/tc-tic54x.c:4594 config/tc-tic54x.c:4644
+msgid "Extra junk in function call, expecting ')'"
+msgstr "Kelebihan junk dalam pemanggilan fungsi, menduga ')'"
+
+#: config/tc-tic54x.c:4620
+msgid "Function expects two arguments"
+msgstr "Fungsi menduga dua argumen"
+
+#: config/tc-tic54x.c:4633
+msgid "Expecting character constant argument"
+msgstr "Menduga karakter konstan argumen"
+
+#: config/tc-tic54x.c:4639
+msgid "Both arguments must be substitution symbols"
+msgstr "Kedua argumen harus berupa penggantian simbol"
+
+#: config/tc-tic54x.c:4692
+#, c-format
+msgid "Invalid subscript (use 1 to %d)"
+msgstr "subscript tidak valid (gunakan 1 ke %d)"
+
+#: config/tc-tic54x.c:4702
+#, c-format
+msgid "Invalid length (use 0 to %d"
+msgstr "Panjang tidak valid (gunakan 0 ke %d)"
+
+#: config/tc-tic54x.c:4712
+msgid "Missing ')' in subscripted substitution symbol expression"
+msgstr "Hilang ')' dalma pernyataan penggatian simbol tersubscripttt"
+
+#: config/tc-tic54x.c:4732
+msgid "Missing forced substitution terminator ':'"
+msgstr "Hilang pemaksa pengakhir penggantian ':'"
+
+#: config/tc-tic54x.c:4886
+#, c-format
+msgid "Instruction does not fit in available delay slots (%d-word insn, %d slots left)"
+msgstr "Instruksi tidak cukup dalam delay slot yang tersedia (%d-word insn, %d slots tersisa)"
+
+#: config/tc-tic54x.c:4927
+#, c-format
+msgid "Unrecognized parallel instruction '%s'"
+msgstr "Instruksi paralel '%s' tidak dikenal"
+
+#: config/tc-tic54x.c:4939
+#, c-format
+msgid "Instruction '%s' requires an LP cpu version"
+msgstr "Instruksi '%s' membutuhkan sebuah versi cpu LP"
+
+#: config/tc-tic54x.c:4946
+#, c-format
+msgid "Instruction '%s' requires far mode addressing"
+msgstr "Instruksi '%s' membutuhkan mode pengalamatan jauh"
+
+#: config/tc-tic54x.c:4958
+#, c-format
+msgid "Instruction does not fit in available delay slots (%d-word insn, %d slots left). Resulting behavior is undefined."
+msgstr "Instruksi tidak cukup dalam delay slot yang tersedia (%d-word insn, %d slots tersedia). Menghasilkan perilaku yang tidak terdefinisi."
+
+#: config/tc-tic54x.c:4968
+msgid "Instructions which cause PC discontinuity are not allowed in a delay slot. Resulting behavior is undefined."
+msgstr "Instruksi yang menyebabkan PC tidak kontinue tidak diperbolehkan dalam sebuah delay slot. Menghasilkan perilaku yang tidak terdefinisi."
+
+#: config/tc-tic54x.c:4979
+#, c-format
+msgid "'%s' is not repeatable. Resulting behavior is undefined."
+msgstr "'%s' tidak terulang. Menghasilkan perilaku yang tidak terdefinisi."
+
+#: config/tc-tic54x.c:4983
+msgid "Instructions using long offset modifiers or absolute addresses are not repeatable. Resulting behavior is undefined."
+msgstr "Instruksi menggunakan long ofset modifieeer atau alamat absolut adalah tidak terulang. Menghasilkan perilaku yang tidak terdefinisi."
+
+#: config/tc-tic54x.c:5135
+#, c-format
+msgid "Unsupported relocation size %d"
+msgstr "Ukuran relokasi %d tidak didukung"
+
+#: config/tc-tic54x.c:5266
+msgid "non-absolute value used with .space/.bes"
+msgstr "nilai tidak-absolut digunakan dengan .space/.bes"
+
+#: config/tc-tic54x.c:5270
+#, c-format
+msgid "negative value ignored in %s"
+msgstr "nilai negatif diabaikan dalam %s"
+
+#: config/tc-tic54x.c:5358
+#, c-format
+msgid "attempt to .space/.bes backwards? (%ld)"
+msgstr "mencoba untuk .space/.bes backwards? (%ld)"
+
+#: config/tc-tic54x.c:5390
+#, c-format
+msgid "Invalid label '%s'"
+msgstr "Label tidak valid '%s'"
+
+#: config/tc-v850.c:233
+#, c-format
+msgid ".COMMon length (%d.) < 0! Ignored."
+msgstr "panjang .COMMon (%d.) <0!! Diabaikan."
+
+#: config/tc-v850.c:254
+#, c-format
+msgid "Length of .comm \"%s\" is already %ld. Not changed to %d."
+msgstr "Panjang dari .comm \"%s\" telah %ld. Tidak mengubah ke %d."
+
+#: config/tc-v850.c:280
+msgid "Common alignment negative; 0 assumed"
+msgstr "Alignmen umum negatif; 0 diasumsikan"
+
+#: config/tc-v850.c:938
+#, c-format
+msgid "unknown operand shift: %x\n"
+msgstr "pergesearan operan tidak dikenal: %x\n"
+
+#: config/tc-v850.c:939
+msgid "internal failure in parse_register_list"
+msgstr "internal failure dalam parse_register_list"
+
+#: config/tc-v850.c:955
+msgid "constant expression or register list expected"
+msgstr "ekspresi konstan atau daftar register diduga"
+
+#: config/tc-v850.c:960 config/tc-v850.c:973 config/tc-v850.c:992
+msgid "high bits set in register list expression"
+msgstr "high bit set dalam ekspresi daftar register"
+
+#: config/tc-v850.c:1031 config/tc-v850.c:1094
+msgid "illegal register included in list"
+msgstr "register tidak legal dimasukan dalam daftar"
+
+#: config/tc-v850.c:1037
+msgid "system registers cannot be included in list"
+msgstr "sistem register tidak dapat dimasukan dalam daftar"
+
+#: config/tc-v850.c:1042
+msgid "PSW cannot be included in list"
+msgstr "PSWWW tidak dapat dimasukan dalam daftar"
+
+#: config/tc-v850.c:1049
+msgid "High value system registers cannot be included in list"
+msgstr "Nilai tinggi sistem register tidak dapat dimasukan dalam daftar"
+
+#: config/tc-v850.c:1073
+msgid "second register should follow dash in register list"
+msgstr "register kedua seharusnya mengikuti dash dalam daftar register"
+
+#: config/tc-v850.c:1118
+#, c-format
+msgid " V850 options:\n"
+msgstr " opsi V850:\n"
+
+#: config/tc-v850.c:1119
+#, c-format
+msgid "  -mwarn-signed-overflow    Warn if signed immediate values overflow\n"
+msgstr "  -mwarn-signed-overflow    Peringatkan ketika nilai langsung signed overflow\n"
+
+#: config/tc-v850.c:1120
+#, c-format
+msgid "  -mwarn-unsigned-overflow  Warn if unsigned immediate values overflow\n"
+msgstr "  -mwarn-unsigned-overflow  Peringatkan ketika nilai langsung unsigned overflow\n"
+
+#: config/tc-v850.c:1121
+#, c-format
+msgid "  -mv850                    The code is targeted at the v850\n"
+msgstr "  -mv850                    Kode ditargetkan di v850\n"
+
+#: config/tc-v850.c:1122
+#, c-format
+msgid "  -mv850e                   The code is targeted at the v850e\n"
+msgstr "  -mv850e                   Kode ditargetkan di v850e\n"
+
+#: config/tc-v850.c:1123
+#, c-format
+msgid "  -mv850e1                  The code is targeted at the v850e1\n"
+msgstr "  -mv850e1                  Kode ditargetkan di v850e1\n"
+
+#: config/tc-v850.c:1124
+#, c-format
+msgid "  -mv850any                 The code is generic, despite any processor specific instructions\n"
+msgstr "  -mv850any                 Kode adalah umum, daripada instruksi spesifik prosesor apapun\n"
+
+#: config/tc-v850.c:1125
+#, c-format
+msgid "  -mrelax                   Enable relaxation\n"
+msgstr "  -mrelax                   Aktifkan relaksasi\n"
+
+#: config/tc-v850.c:1291
+#, c-format
+msgid "Unable to determine default target processor from string: %s"
+msgstr "Tidak dapat menentukan target default prosesor dari string: %s"
+
+#: config/tc-v850.c:1326
+msgid "lo() relocation used on an instruction which does not support it"
+msgstr "lo() relokasi digunakan di sebuah instruksi yang tidak memiliki dukungan disitu"
+
+#: config/tc-v850.c:1343
+msgid "ctoff() relocation used on an instruction which does not support it"
+msgstr "ctoff() relokasi digunakan disebuah instruksi yang tidak didukungnya"
+
+#: config/tc-v850.c:1365
+msgid "sdaoff() relocation used on an instruction which does not support it"
+msgstr "sdaoff() relokasi digunakan di sebuah instruksi yang tidak mendukungnya"
+
+#: config/tc-v850.c:1387
+msgid "zdaoff() relocation used on an instruction which does not support it"
+msgstr "zdaoff() relokasi digunakan di sebuah instruksi yang tidak mendukungnya"
+
+#: config/tc-v850.c:1420
+msgid "tdaoff() relocation used on an instruction which does not support it"
+msgstr "tdaoff() relokasi digunakan di sebuah instruksi yang tidak mendukungnya"
+
+#: config/tc-v850.c:1625
+msgid "Target processor does not support this instruction."
+msgstr "Prosesor target tidak mendukung instruksi ini."
+
+#: config/tc-v850.c:1714 config/tc-v850.c:1743 config/tc-v850.c:1923
+msgid "immediate operand is too large"
+msgstr "operan langsung terlalu besar"
+
+#: config/tc-v850.c:1725
+msgid "AAARG -> unhandled constant reloc"
+msgstr "AAARG -> tidak tertangani konstanta relokasi"
+
+#: config/tc-v850.c:1768
+msgid "invalid register name"
+msgstr "nama register tidak valid"
+
+#: config/tc-v850.c:1772
+msgid "register r0 cannot be used here"
+msgstr "register r0 tidak dapat digunakan disini"
+
+#: config/tc-v850.c:1783
+msgid "invalid system register name"
+msgstr "nama sistem register tidak valid"
+
+#: config/tc-v850.c:1795
+msgid "expected EP register"
+msgstr "diduga EP register"
+
+#: config/tc-v850.c:1811
+msgid "invalid condition code name"
+msgstr "kondisi nama kode tidak valid"
+
+#: config/tc-v850.c:1831 config/tc-v850.c:1835
+msgid "constant too big to fit into instruction"
+msgstr "konstanta terlalu besar untuk masuk kedalam instruksi"
+
+#: config/tc-v850.c:1888
+msgid "syntax error: value is missing before the register name"
+msgstr "sintaks error: nilai hilang sebelum nama register"
+
+#: config/tc-v850.c:1890
+msgid "syntax error: register not expected"
+msgstr "sintaks error: register tidak diduga"
+
+#: config/tc-v850.c:1903
+msgid "syntax error: system register not expected"
+msgstr "sintaks error: sistem register tidak terduga"
+
+#: config/tc-v850.c:1907
+msgid "syntax error: condition code not expected"
+msgstr "sintaks error: kondisi kode tidak diduga"
+
+#: config/tc-v850.c:1941 config/tc-xtensa.c:11683
+msgid "invalid operand"
+msgstr "operan tidak valid"
+
+#: config/tc-vax.c:1343
+msgid "no '[' to match ']'"
+msgstr "tidak ada '[' yang cocok dengan ']'"
+
+#: config/tc-vax.c:1359
+msgid "bad register in []"
+msgstr "register buruk dalam []"
+
+#: config/tc-vax.c:1361
+msgid "[PC] index banned"
+msgstr "[PC] indeks diban"
+
+#: config/tc-vax.c:1397
+msgid "no '(' to match ')'"
+msgstr "tidak ada ')' yang cocok dengan ')'"
+
+#: config/tc-vax.c:1513
+msgid "invalid branch operand"
+msgstr "operan percabangan tidak valid"
+
+#: config/tc-vax.c:1540
+msgid "address prohibits @"
+msgstr "alamat melarang @"
+
+#: config/tc-vax.c:1542
+msgid "address prohibits #"
+msgstr "alamat melarang #"
+
+#: config/tc-vax.c:1546
+msgid "address prohibits -()"
+msgstr "alamat melarang -()"
+
+#: config/tc-vax.c:1548
+msgid "address prohibits ()+"
+msgstr "alamat melarang ()+"
+
+#: config/tc-vax.c:1551
+msgid "address prohibits ()"
+msgstr "alamat melarang ()"
+
+#: config/tc-vax.c:1553
+msgid "address prohibits []"
+msgstr "alamat melarang []"
+
+#: config/tc-vax.c:1555
+msgid "address prohibits register"
+msgstr "alamat melarang register"
+
+#: config/tc-vax.c:1557
+msgid "address prohibits displacement length specifier"
+msgstr "alamat melarang displacement panjang specifier"
+
+#: config/tc-vax.c:1585
+msgid "invalid operand of S^#"
+msgstr "operan dari S^# tidak valid"
+
+#: config/tc-vax.c:1598
+msgid "S^# needs expression"
+msgstr "S^# membutuhkaan ekspresi"
+
+#: config/tc-vax.c:1605
+msgid "S^# may only read-access"
+msgstr "S^# mungkin hanya baca-akses"
+
+#: config/tc-vax.c:1628
+msgid "invalid operand of -()"
+msgstr "operan dari -() tidak valid"
+
+#: config/tc-vax.c:1634
+msgid "-(PC) unpredictable"
+msgstr "-(PC) tidak terprediksi"
+
+#: config/tc-vax.c:1636
+msgid "[]index same as -()register: unpredictable"
+msgstr "[]indeks sama seperti -()register: tidak terprediksi"
+
+#: config/tc-vax.c:1668
+msgid "invalid operand of ()+"
+msgstr "operan tidak valid dari ()+"
+
+#: config/tc-vax.c:1674
+msgid "(PC)+ unpredictable"
+msgstr "(PC)+ tidak terprediksi"
+
+#: config/tc-vax.c:1676
+msgid "[]index same as ()+register: unpredictable"
+msgstr "[indeks sama seperti ()+register: tidak terprediksi"
+
+#: config/tc-vax.c:1699
+msgid "# conflicts length"
+msgstr "# konflik panjang"
+
+#: config/tc-vax.c:1701
+msgid "# bars register"
+msgstr "# bars register"
+
+#: config/tc-vax.c:1721
+msgid "writing or modifying # is unpredictable"
+msgstr "menulis atau memodifikasi # tidak terprediksi"
+
+#: config/tc-vax.c:1747
+msgid "length not needed"
+msgstr "panjang tidak dibutuhkan"
+
+#: config/tc-vax.c:1754
+msgid "can't []index a register, because it has no address"
+msgstr "tidak dapat []indeks sebuah register, karena ini tidak memiliki alamat"
+
+#: config/tc-vax.c:1756
+msgid "a register has no address"
+msgstr "sebuah register tidak memiliki alamat"
+
+#: config/tc-vax.c:1765
+msgid "PC part of operand unpredictable"
+msgstr "PC part dari operan tidak terprediksi"
+
+#: config/tc-vax.c:1921
+msgid "odd number of bytes in operand description"
+msgstr "nomor ganjil dari bytes dalam deskripsi operan"
+
+#: config/tc-vax.c:1935
+msgid "Bad operand"
+msgstr "Operan buruk"
+
+#: config/tc-vax.c:1940
+msgid "Not enough operands"
+msgstr "Operan kurang"
+
+#: config/tc-vax.c:1947
+msgid "Too many operands"
+msgstr "Terlalu banyak operan"
+
+#: config/tc-vax.c:2217
+msgid "SYMBOL TABLE not implemented"
+msgstr "TABEL SIMBOL tidak terimplementasi"
+
+#: config/tc-vax.c:2221
+msgid "TOKEN TRACE not implemented"
+msgstr "TOKEN TRACE tidak terimplementasi"
+
+#: config/tc-vax.c:2225
+#, c-format
+msgid "Displacement length %s ignored!"
+msgstr "Panjang %s displacement diabaikan!"
+
+#: config/tc-vax.c:2229
+#, c-format
+msgid "I don't need or use temp. file \"%s\"."
+msgstr "Saya tidak membutuhkan atau menggunakan berkas sementara \"%s\"."
+
+#: config/tc-vax.c:2233
+msgid "I don't use an interpass file! -V ignored"
+msgstr "Saya tidak menggunakan sebuah berkas interpass! -V diabaikan"
+
+#: config/tc-vax.c:2290
+#, c-format
+msgid ""
+"VAX options:\n"
+"-d LENGTH\t\tignored\n"
+"-J\t\t\tignored\n"
+"-S\t\t\tignored\n"
+"-t FILE\t\t\tignored\n"
+"-T\t\t\tignored\n"
+"-V\t\t\tignored\n"
+msgstr ""
+"opsi VAX:\n"
+"-d LENGTH\t\tdiabaikan\n"
+"-J\t\t\tdiabaikan\n"
+"-S\t\t\tdiabaikan\n"
+"-S\t\t\tdiabaikan\n"
+"-t BERKAS\t\t\tdiabaikan\n"
+"-T\t\t\tdiabaikan\n"
+"-V\t\t\tdiabaikan\n"
+
+#: config/tc-vax.c:2299
+#, c-format
+msgid ""
+"VMS options:\n"
+"-+\t\t\thash encode names longer than 31 characters\n"
+"-1\t\t\t`const' handling compatible with gcc 1.x\n"
+"-H\t\t\tshow new symbol after hash truncation\n"
+"-h NUM\t\t\tdon't hash mixed-case names, and adjust case:\n"
+"\t\t\t0 = upper, 2 = lower, 3 = preserve case\n"
+"-v\"VERSION\"\t\tcode being assembled was produced by compiler \"VERSION\"\n"
+msgstr ""
+"opsi VMS:\n"
+"-+\t\t\thash enkode nama lebih panjang dari 31 karakter\n"
+"-1\t\t\tpenanganan `const' kompatibel dengan gcc 1.x\n"
+"-H\t\t\ttampilkan simbol baru sesudah pemotongan hash\n"
+"-h NUM\t\t\tjangan hash nama mixed-case, dan benarkas case:\n"
+"\t\t\t0 = huruf besar, 2 = huruf kecil, 3 = jaga case\n"
+"-v\"VERSION\"\t\tkode yang sedang dirakit dihasilkan oleh kompiler \"VERSION\"\n"
+
+#: config/tc-vax.c:2464
+#, c-format
+msgid "Ignoring statement due to \"%s\""
+msgstr "Mengabaikan pernyataan karena \"%s\""
+
+#: config/tc-vax.c:2481
+#, c-format
+msgid "Aborting because statement has \"%s\""
+msgstr "Membatalkan karena pernyataan memiliki \"%s\""
+
+#: config/tc-vax.c:2526
+msgid "Can't relocate expression"
+msgstr "Tidak dapat merelokasi ekspresi"
+
+#: config/tc-vax.c:2629
+msgid "Bignum not permitted in short literal. Immediate mode assumed."
+msgstr "Bignum tidak diijinkan dalam short literal. Mode langsung diasumsikan."
+
+#: config/tc-vax.c:2638
+msgid "Can't do flonum short literal: immediate mode used."
+msgstr "Tidak dapat melakukan flonum short literal: mode langsung digunakan."
+
+#: config/tc-vax.c:2685
+#, c-format
+msgid "A bignum/flonum may not be a displacement: 0x%lx used"
+msgstr "Sebuah bignum/flonum mungkin bukan sebuah displacement: 0x%lx digunakan"
+
+#: config/tc-vax.c:2996
+#, c-format
+msgid "Short literal overflow(%ld.), immediate mode assumed."
+msgstr "Literal pendek overflow(%ld.), mode langsung diasumsikan."
+
+#: config/tc-vax.c:3005
+#, c-format
+msgid "Forced short literal to immediate mode. now_seg=%s to_seg=%s"
+msgstr "Literal pendek terpaksa ke mode langsung. now_seg=%s to_seg=%s"
+
+#: config/tc-vax.c:3070
+msgid "Length specification ignored. Address mode 9F used"
+msgstr "Spesifikasi panjang diabaikan. Mode alamat 9F digunakan"
+
+#: config/tc-vax.c:3128
+msgid "Invalid operand:  immediate value used as base address."
+msgstr "Operan tidak valid: nilai langsung digunakan sebagai alamat dasar."
+
+#: config/tc-vax.c:3130
+msgid "Invalid operand:  immediate value used as address."
+msgstr "Operan tidak valid: nilai langsung digunakan sebagai alamat."
+
+#: config/tc-vax.c:3155
+msgid "Symbol used as immediate operand in PIC mode."
+msgstr "Simbol digunakan sebagai operan langsung dalam mode PIC."
+
+#: config/tc-vax.c:3258
+#, c-format
+msgid "VIP_BEGIN error:%s"
+msgstr "VIP_BEGIN error:%s"
+
+#: config/tc-xc16x.c:211
+#, c-format
+msgid " XC16X specific command line options:\n"
+msgstr " XC16X spesifik opsi baris perintah:\n"
+
+#: config/tc-xstormy16.c:78
+#, c-format
+msgid " XSTORMY16 specific command line options:\n"
+msgstr " XSTORMY16 spesifik opsi baris perintah:\n"
+
+#: config/tc-xtensa.c:617
+msgid "illegal range of target hardware versions"
+msgstr "jangkauan tidak legal dari versi target perangkat"
+
+#: config/tc-xtensa.c:766
+msgid "--density option is ignored"
+msgstr "opsi --density diabaikan"
+
+#: config/tc-xtensa.c:769
+msgid "--no-density option is ignored"
+msgstr "opsi --no-density diabaikan"
+
+#: config/tc-xtensa.c:778
+msgid "--generics is deprecated; use --transform instead"
+msgstr "--generics kadaluarsa; lebih baik gunakan --transform"
+
+#: config/tc-xtensa.c:781
+msgid "--no-generics is deprecated; use --no-transform instead"
+msgstr "--no-generics kadaluarsa; lebih baik gunakan --no-transform"
+
+#: config/tc-xtensa.c:784
+msgid "--relax is deprecated; use --transform instead"
+msgstr "--relax kadaluarsa; lebih baik gunakan --transform"
+
+#: config/tc-xtensa.c:787
+msgid "--no-relax is deprecated; use --no-transform instead"
+msgstr "--no-relax kadaluarsa; lebih baik gunakan --no-transform"
+
+#: config/tc-xtensa.c:804
+msgid "--absolute-literals option not supported in this Xtensa configuration"
+msgstr "opsi --absolute-literals tidak didukung di konfigurasi Xtensa ini"
+
+#: config/tc-xtensa.c:877
+msgid "prefer-l32r conflicts with prefer-const16"
+msgstr "prefer-l32r konflik dengan prefer-const16"
+
+#: config/tc-xtensa.c:883
+msgid "prefer-const16 conflicts with prefer-l32r"
+msgstr "prefer-const16 konflik dengan prefer-l32r"
+
+#: config/tc-xtensa.c:891 config/tc-xtensa.c:900 config/tc-xtensa.c:904
+msgid "invalid target hardware version"
+msgstr "versi target perangkat tidak valid"
+
+#: config/tc-xtensa.c:1083
+msgid "unmatched end directive"
+msgstr "direktif end tidak cocok"
+
+#: config/tc-xtensa.c:1112
+msgid ".begin directive with no matching .end directive"
+msgstr "direktif .begin tanpa pasangan .end direktif"
+
+#: config/tc-xtensa.c:1153
+msgid "[no-]generics is deprecated; use [no-]transform instead"
+msgstr "[no-]generics kadaluarsa; lebih baik gunakan [no-]transform"
+
+#: config/tc-xtensa.c:1158
+msgid "[no-]relax is deprecated; use [no-]transform instead"
+msgstr "[no-]relax kadaluarsa; lebih baik gunakan [no-]transform"
+
+#: config/tc-xtensa.c:1171
+#, c-format
+msgid "directive %s cannot be negated"
+msgstr "direktif %s tidak dapat dinegasikan"
+
+#: config/tc-xtensa.c:1177
+msgid "unknown directive"
+msgstr "direktif tidak dikenal"
+
+#: config/tc-xtensa.c:1198 config/tc-xtensa.c:1294 config/tc-xtensa.c:1536
+#: config/tc-xtensa.c:5689
+msgid "directives are not valid inside bundles"
+msgstr "direktif tidak valid didalam bundles"
+
+#: config/tc-xtensa.c:1210
+msgid ".begin literal is deprecated; use .literal instead"
+msgstr ".begin literal kadaluarsa; lebih baik gunakan .literal"
+
+#: config/tc-xtensa.c:1224
+msgid "cannot set literal_prefix inside literal fragment"
+msgstr "tidak dapat menset literal_prefix didalam literal fragmen"
+
+#: config/tc-xtensa.c:1257
+msgid ".begin [no-]density is ignored"
+msgstr ".begin [no-]density diabaikan"
+
+#: config/tc-xtensa.c:1264 config/tc-xtensa.c:1314
+msgid "Xtensa absolute literals option not supported; ignored"
+msgstr "Xtensa absolut litera opsi tidak didukung; diabaikan"
+
+#: config/tc-xtensa.c:1307
+msgid ".end [no-]density is ignored"
+msgstr ".end [no-]density diabaikan"
+
+#: config/tc-xtensa.c:1332
+#, c-format
+msgid "does not match begin %s%s at %s:%d"
+msgstr "tidak cocok begin %s%s di %s:%d"
+
+#: config/tc-xtensa.c:1387
+msgid ".literal_position inside literal directive; ignoring"
+msgstr ".literal_position didalam literal direktif; diabaikan"
+
+#: config/tc-xtensa.c:1407
+msgid ".literal not allowed inside .begin literal region"
+msgstr ".literal tidak diperbolehkan didalam daerah .begin literal"
+
+#: config/tc-xtensa.c:1443
+msgid "expected comma or colon after symbol name; rest of line ignored"
+msgstr "diduga koma atau kolon setelah nama simbol; sisa dari baris diabaikan"
+
+#: config/tc-xtensa.c:1505
+msgid "fall through frequency must be greater than 0"
+msgstr "jatuh melewati frekuensi harus lebih besar dari 0"
+
+#: config/tc-xtensa.c:1513
+msgid "branch target frequency must be greater than 0"
+msgstr "target percabangan frekuensi harus lebih besar dari 0"
+
+#: config/tc-xtensa.c:1561
+#, c-format
+msgid "opcode-specific %s relocation used outside an instruction"
+msgstr "opcode-specific %s relokasi digunakan diluar dari sebuah instruksi"
+
+#: config/tc-xtensa.c:1569
+#, c-format
+msgid "invalid use of %s relocation"
+msgstr "penggunaan dari relokasi %s tidak valid"
+
+#: config/tc-xtensa.c:1765 config/tc-xtensa.c:1782
+#, c-format
+msgid "bad register name: %s"
+msgstr "nama register: %s buruk"
+
+#: config/tc-xtensa.c:1771
+#, c-format
+msgid "bad register number: %s"
+msgstr "nomor register: %s buruk"
+
+#: config/tc-xtensa.c:1834
+msgid "pcrel relocation not allowed in an instruction"
+msgstr "pcrel relokasi tidak diperbolehkan dalam sebuah instruksi"
+
+#: config/tc-xtensa.c:1851
+msgid "register number out of range"
+msgstr "nomor register diluar dari jangkauan"
+
+#: config/tc-xtensa.c:1935
+msgid "extra comma"
+msgstr "kelebihan koma"
+
+#: config/tc-xtensa.c:1937
+msgid "extra colon"
+msgstr "kelebihan kolon"
+
+#: config/tc-xtensa.c:1939
+msgid "missing argument"
+msgstr "hilang argumen"
+
+#: config/tc-xtensa.c:1941
+msgid "missing comma or colon"
+msgstr "hilang koma atau kolon"
+
+#: config/tc-xtensa.c:1998
+msgid "incorrect register number, ignoring"
+msgstr "nomor register tidak benar, mengabaikan"
+
+#: config/tc-xtensa.c:2005
+msgid "too many arguments"
+msgstr "terlalu banyak argumen"
+
+#: config/tc-xtensa.c:2078
+#, c-format
+msgid "cannot encode opcode \"%s\""
+msgstr "tidak dapat menenkode opkode \"%s\""
+
+#: config/tc-xtensa.c:2172
+#, c-format
+msgid "not enough operands (%d) for '%s'; expected %d"
+msgstr "tidak cukup operan (%d) untuk '%s'; diduga %d"
+
+#: config/tc-xtensa.c:2179
+#, c-format
+msgid "too many operands (%d) for '%s'; expected %d"
+msgstr "terlalu banyak operan (%d) untuk '%s'; diduga %d"
+
+#: config/tc-xtensa.c:2230
+#, c-format
+msgid "invalid register '%s' for '%s' instruction"
+msgstr "register '%s' tidak valid untuk instruksi '%s'"
+
+#: config/tc-xtensa.c:2237
+#, c-format
+msgid "invalid register number (%ld) for '%s' instruction"
+msgstr "nomor register (%ld) tidak valid untuk instruksi '%s'"
+
+#: config/tc-xtensa.c:2305
+#, c-format
+msgid "invalid register number (%ld) for '%s'"
+msgstr "nomor register (%ld) tidak valid untuk '%s'"
+
+#: config/tc-xtensa.c:2696
+#, c-format
+msgid "operand %d of '%s' has out of range value '%u'"
+msgstr "operan %d dari '%s' memiliki nilai diluar dari jangkauan '%u'"
+
+#: config/tc-xtensa.c:2702
+#, c-format
+msgid "operand %d of '%s' has invalid value '%u'"
+msgstr "operan %d dari '%s' memiliki nilai '%u' tidak valid"
+
+#: config/tc-xtensa.c:2750
+#, c-format
+msgid "internal error: unknown option name '%s'"
+msgstr "internal error: nama opsi '%s' tidak dikenal"
+
+#: config/tc-xtensa.c:3852
+msgid "can't handle generation of literal/labels yet"
+msgstr "belum dapat menangani pembuatan dari literal/label"
+
+#: config/tc-xtensa.c:3856
+msgid "can't handle undefined OP TYPE"
+msgstr "tidak dapat menangani undefined OP TYPE"
+
+#: config/tc-xtensa.c:3917
+#, c-format
+msgid "found %d operands for '%s':  Expected %d"
+msgstr "ditemukan operan %d untuk '%s': DIduga %d"
+
+#: config/tc-xtensa.c:3924
+#, c-format
+msgid "found too many (%d) operands for '%s':  Expected %d"
+msgstr "ditemukan terlalu banyak operan (%d) untuk '%s': Diduga %d"
+
+#: config/tc-xtensa.c:3945
+msgid "immediate operands sum to greater than 32"
+msgstr "operan langsung sum to lebih besar dari 32"
+
+#: config/tc-xtensa.c:4076
+msgid "invalid immediate"
+msgstr "immediate tidak valid"
+
+#: config/tc-xtensa.c:4197
+#, c-format
+msgid "invalid relocation for operand %i of '%s'"
+msgstr "relokasi untuk operan tidak valid %i dari '%s'"
+
+#: config/tc-xtensa.c:4207
+#, c-format
+msgid "invalid expression for operand %i of '%s'"
+msgstr "ekspresi tidak valid untuk operan %i dari '%s'"
+
+#: config/tc-xtensa.c:4217
+#, c-format
+msgid "invalid relocation in instruction slot %i"
+msgstr "relokasi tidak valid dalam instruksi slot %i"
+
+#: config/tc-xtensa.c:4224
+#, c-format
+msgid "undefined symbol for opcode \"%s\""
+msgstr "simbol tidak terdefinisi untuk opcode \"%s\""
+
+#: config/tc-xtensa.c:4698
+msgid "opcode 'NOP.N' unavailable in this configuration"
+msgstr "opkode 'NOP.N' tidak tersedia dalam konfigurasi ini"
+
+#: config/tc-xtensa.c:4758
+msgid "get_expanded_loop_offset: invalid opcode"
+msgstr "get_expanded_loop_offset: opkode tidak valid"
+
+#: config/tc-xtensa.c:4891
+#, c-format
+msgid "assembly state not set for first frag in section %s"
+msgstr "keadaan perakitan tidak diset untuk frag pertama dalam daerah %s"
+
+#: config/tc-xtensa.c:4944
+#, c-format
+msgid "unaligned branch target: %d bytes at 0x%lx"
+msgstr "unaligned target percabangan: %d bytes di 0x%lx"
+
+#: config/tc-xtensa.c:4983
+#, c-format
+msgid "unaligned loop: %d bytes at 0x%lx"
+msgstr "unaligned loop: %d bytes di 0x%lx"
+
+#: config/tc-xtensa.c:5007
+msgid "unexpected fix"
+msgstr "tidak terduga fix"
+
+#: config/tc-xtensa.c:5018 config/tc-xtensa.c:5022
+msgid "undecodable fix"
+msgstr "tidak terdekodekan fix"
+
+#: config/tc-xtensa.c:5151
+msgid "labels are not valid inside bundles"
+msgstr "label tidak valid didalam bundles"
+
+#: config/tc-xtensa.c:5171
+msgid "invalid last instruction for a zero-overhead loop"
+msgstr "instruksi terakhir tidak valid untuk loop zero-overhead"
+
+#: config/tc-xtensa.c:5236
+msgid "extra opening brace"
+msgstr "kelebihan kurung pembuka"
+
+#: config/tc-xtensa.c:5246
+msgid "extra closing brace"
+msgstr "kelebihan kurung penutup"
+
+#: config/tc-xtensa.c:5273
+msgid "missing closing brace"
+msgstr "hilang kurung penutup"
+
+#: config/tc-xtensa.c:5373
+#, c-format
+msgid "wrong number of operands for '%s'"
+msgstr "jumlah dari operan salah untuk '%s'"
+
+#: config/tc-xtensa.c:5390
+#, c-format
+msgid "bad relocation expression for '%s'"
+msgstr "ekpresi relokasi buruk untuk '%s'"
+
+#: config/tc-xtensa.c:5403
+#, c-format
+msgid "unknown opcode or format name '%s'"
+msgstr "opkode tidak diketahui atau nama format '%s'"
+
+#: config/tc-xtensa.c:5409
+msgid "format names only valid inside bundles"
+msgstr "nama format hanya valid didalam bundles"
+
+#: config/tc-xtensa.c:5414
+#, c-format
+msgid "multiple formats specified for one bundle; using '%s'"
+msgstr "multiple format dispesifikasikan untuk satu bundles; menggunakan '%s'"
+
+#: config/tc-xtensa.c:5464
+msgid "entry instruction with stack decrement < 16"
+msgstr "masukan instruksi dengan stack decrement < 16"
+
+#: config/tc-xtensa.c:5517
+msgid "unaligned entry instruction"
+msgstr "masukan instruksi tidak teralign"
+
+#: config/tc-xtensa.c:5582
+msgid "bad instruction format"
+msgstr "format instruksi buruk"
+
+#: config/tc-xtensa.c:5585
+msgid "invalid relocation"
+msgstr "relokasi tidak valid"
+
+#: config/tc-xtensa.c:5596
+#, c-format
+msgid "invalid relocation for '%s' instruction"
+msgstr "relokasi untuk instruksi '%s' tidak valid"
+
+#: config/tc-xtensa.c:5608
+#, c-format
+msgid "invalid relocation for operand %d of '%s'"
+msgstr "relokasi untuk operan %d dari '%s' tidak valid"
+
+#: config/tc-xtensa.c:5788
+msgid "cannot represent subtraction with an offset"
+msgstr "tidak dapat merepresentasikan pengurangan dengan sebuah ofset"
+
+#: config/tc-xtensa.c:5888
+#, c-format
+msgid "unhandled local relocation fix %s"
+msgstr "unhandled lokal relokasi fix %s"
+
+#: config/tc-xtensa.c:5939
+#, c-format
+msgid "internal error; cannot generate `%s' relocation"
+msgstr "internal error; tidak dapat menghasilkan relokasi `%s'"
+
+#: config/tc-xtensa.c:6159
+msgid "couldn't find a valid instruction format"
+msgstr "tidak dapat menemukan sebuah format instruksi valid"
+
+#: config/tc-xtensa.c:6160
+#, c-format
+msgid "    ops were: "
+msgstr "    ops adalah: "
+
+#: config/tc-xtensa.c:6162
+#, c-format
+msgid " %s;"
+msgstr " %s;"
+
+#: config/tc-xtensa.c:6173
+#, c-format
+msgid "format '%s' allows %d slots, but there are %d opcodes"
+msgstr "format '%s' mengijinkan %d slots, tetapi disana adalah %d opkode"
+
+#: config/tc-xtensa.c:6184 config/tc-xtensa.c:6282
+msgid "illegal resource usage in bundle"
+msgstr "penggunaan resource tidak legal dalam bundle"
+
+#: config/tc-xtensa.c:6369
+#, c-format
+msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same register"
+msgstr "opkode '%s' (slot %d) dan '%s' (slot %d) tulis di register yang sama"
+
+#: config/tc-xtensa.c:6374
+#, c-format
+msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same state"
+msgstr "opkode '%s' (slot %d) dan '%s' (slot %d) tulis status sama"
+
+#: config/tc-xtensa.c:6379
+#, c-format
+msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same port"
+msgstr "opkode '%s' (slot %d) dan '%s' (slot %d) tulis port sama"
+
+#: config/tc-xtensa.c:6384
+#, c-format
+msgid "opcodes '%s' (slot %d) and '%s' (slot %d) both have volatile port accesses"
+msgstr "opkode '%s' (slot %d) dan '%s' (slot %d) keduanya memiliki akses port volatile"
+
+#: config/tc-xtensa.c:6400
+msgid "multiple branches or jumps in the same bundle"
+msgstr "multiple percabangan atau lompat dalam bundle sama"
+
+#: config/tc-xtensa.c:6852
+msgid "cannot assemble into a literal fragment"
+msgstr "tidak dapat merakit kedalam sebuah literal fragmen"
+
+#: config/tc-xtensa.c:6854
+msgid "..."
+msgstr "..."
+
+#: config/tc-xtensa.c:7453
+msgid "instruction sequence (write a0, branch, retw) may trigger hardware errata"
+msgstr "urutan instruksi (tulis a0, branch, retw) mungkin mentriger kesalahan perangkat"
+
+#: config/tc-xtensa.c:7565
+msgid "branching or jumping to a loop end may trigger hardware errata"
+msgstr "percabangan atau perlompatan ke sebuah loop end mungkin mentriger kesalahan perangkat"
+
+#: config/tc-xtensa.c:7647
+msgid "loop end too close to another loop end may trigger hardware errata"
+msgstr "loop end terlalu dekat dengan loop end lain mungkin mentrigger kesalahan perangkat"
+
+#: config/tc-xtensa.c:7656
+#, c-format
+msgid "fr_var %lu < length %d"
+msgstr "fre_var %lu < panjang %d"
+
+#: config/tc-xtensa.c:7815
+msgid "loop containing less than three instructions may trigger hardware errata"
+msgstr "loop berisi kurang dari tiga instruksi mungkin mentriger kesalahan perangkat"
+
+#: config/tc-xtensa.c:7887
+msgid "undecodable instruction in instruction frag"
+msgstr "instruksi tidak terdekode dalam instruksi frag"
+
+#: config/tc-xtensa.c:7997
+msgid "invalid empty loop"
+msgstr "loop kosong tidak valid"
+
+#: config/tc-xtensa.c:8002
+msgid "loop target does not follow loop instruction in section"
+msgstr "target loop tidak mengikuti instruksi loop dalam daerah"
+
+#: config/tc-xtensa.c:8580
+msgid "bad relaxation state"
+msgstr "keadaan relaksasi buruk"
+
+#: config/tc-xtensa.c:8638
+#, c-format
+msgid "fr_var (%ld) < length (%d)"
+msgstr "fra_var (%ld) < panjang (%d)"
+
+#: config/tc-xtensa.c:9339
+msgid "invalid relaxation fragment result"
+msgstr "hasil fragmen relaksasi tidak valid"
+
+#: config/tc-xtensa.c:9418
+msgid "unable to widen instruction"
+msgstr "tidak dapat melebarkan instruksi"
+
+#: config/tc-xtensa.c:9558
+msgid "multiple literals in expansion"
+msgstr "multiple literal dalam pernyataan"
+
+#: config/tc-xtensa.c:9562
+msgid "no registered fragment for literal"
+msgstr "tidak ada fragmen terdaftar untuk literal"
+
+#: config/tc-xtensa.c:9564
+msgid "number of literal tokens != 1"
+msgstr "jumlah dari literal tokens != 1"
+
+#: config/tc-xtensa.c:9694 config/tc-xtensa.c:9700
+#, c-format
+msgid "unresolved loop target symbol: %s"
+msgstr "simbol loop target tidak terselesaikan: %s"
+
+#: config/tc-xtensa.c:9806
+#, c-format
+msgid "invalid expression evaluation type %d"
+msgstr "tipe evaluasi ekspresi tidak valid %d"
+
+#: config/tc-xtensa.c:9823
+msgid "loop too long for LOOP instruction"
+msgstr "loop terlalu panjang untuk instruksi LOOP"
+
+#: config/tc-xtensa.c:10093
+#, c-format
+msgid "fixes not all moved from %s"
+msgstr "fixes tidak seluruhnya dipindahkan dari %s"
+
+#: config/tc-xtensa.c:10224
+msgid "literal pool location required for text-section-literals; specify with .literal_position"
+msgstr "lokasi literal pool dibutuhkan untuk text-section-literals; spesifikasikan dengan .literal_position"
+
+#: config/tc-xtensa.c:11062
+msgid "too many operands in instruction"
+msgstr "terlalu banyak operan dalam instruksi"
+
+#: config/tc-xtensa.c:11273
+msgid "invalid symbolic operand"
+msgstr "operan simbolik tidak valid"
+
+#: config/tc-xtensa.c:11334
+msgid "operand number mismatch"
+msgstr "nomor operan tidak cocok"
+
+#: config/tc-xtensa.c:11338
+#, c-format
+msgid "cannot encode opcode \"%s\" in the given format \"%s\""
+msgstr "tidak dapat mengenkode opkode \"%s\" yang diberikan dengan format \"%s\""
+
+#: config/tc-xtensa.c:11363
+#, c-format
+msgid "xtensa-isa failure: %s"
+msgstr "xtensa-isa gagal: %s"
+
+#: config/tc-xtensa.c:11434
+msgid "invalid opcode"
+msgstr "opkode tidak valid"
+
+#: config/tc-xtensa.c:11440
+msgid "too few operands"
+msgstr "terlalu sedikit operan"
+
+#: config/tc-xtensa.c:11555 config/tc-xtensa.c:11561
+msgid "out of memory"
+msgstr "kehabisan memori"
+
+#: config/tc-xtensa.c:11639
+msgid "TLS relocation not allowed in FLIX bundle"
+msgstr "relokasi TLS tidak diijinkan dalam bundle FLIX"
+
+#. Instructions that generate TLS relocations should always be
+#. relaxed in the front-end.  If "record_fixup" is set, then this
+#. function is being called during back-end relaxation, so flag
+#. the unexpected behavior as an error.
+#: config/tc-xtensa.c:11645
+msgid "unexpected TLS relocation"
+msgstr "relokasi TLS tidak terduga"
+
+#: config/tc-xtensa.c:11689
+msgid "symbolic operand not allowed"
+msgstr "operan simbolik tidak diijinkan"
+
+#: config/tc-xtensa.c:11726
+msgid "cannot decode instruction format"
+msgstr "tidak dapat mendekode format instruksi"
+
+#: config/tc-xtensa.c:11870
+msgid "ignoring extra '-rename-section' delimiter ':'"
+msgstr "mengabaikan kelebihan '-rename-section' pembatas ':'"
+
+#: config/tc-xtensa.c:11875
+#, c-format
+msgid "ignoring invalid '-rename-section' specification: '%s'"
+msgstr "mengabaikan tidak valid '-rename-section' spesifikasi: '%s'"
+
+#: config/tc-xtensa.c:11886
+#, c-format
+msgid "section %s renamed multiple times"
+msgstr "daerah %s diganti nama beberapa kali"
+
+#: config/tc-xtensa.c:11888
+#, c-format
+msgid "multiple sections remapped to output section %s"
+msgstr "beberapa daerah diremap ke daerah keluaran %s"
+
+#: config/tc-z80.c:244
+msgid "-- unterminated string"
+msgstr "-- string tidak terselesaikan"
+
+#: config/tc-z80.c:314
+msgid "floating point numbers are not implemented"
+msgstr "floating point number tidak terimplementasi"
+
+#: config/tc-z80.c:493 config/tc-z80.c:499
+msgid "mismatched parentheses"
+msgstr "tidak cocok parentheses"
+
+#: config/tc-z80.c:553
+msgid "bad offset expression syntax"
+msgstr "ekspresi sintaks ofset buruk"
+
+#: config/tc-z80.c:577
+msgid "bad expression syntax"
+msgstr "ekspresi sintaks buruk"
+
+#: config/tc-z80.c:690
+msgid "cannot make a relative jump to an absolute location"
+msgstr "tidak dapat membuat sebuah lompat relatif ke sebuah lokasi absolut"
+
+#: config/tc-z80.c:702 config/tc-z80.c:1960
+msgid "overflow"
+msgstr "overflow"
+
+#: config/tc-z80.c:1070 config/tc-z80.c:1113 config/tc-z80.c:1157
+#: config/tc-z80.c:1277 config/tc-z80.c:1331 config/tc-z80.c:1600
+msgid "bad intruction syntax"
+msgstr "sintaks instruksi buruk"
+
+#: config/tc-z80.c:1203
+msgid "condition code invalid for jr"
+msgstr "kode kondisi tidak valid untuk jr"
+
+#: config/tc-z80.c:1225
+msgid "bad instruction syntax"
+msgstr "sintaks instruksi buruk"
+
+#: config/tc-z80.c:1704
+msgid "parentheses ignored"
+msgstr "parentheses diabaikan"
+
+#: config/tc-z80.c:1909 read.c:3512
+#, c-format
+msgid "junk at end of line, first unrecognized character is `%c'"
+msgstr "sampah diakhir dari baris, karakter tidak dikenal pertama adalah `%c'"
+
+#: config/tc-z80.c:1935 config/tc-z8k.c:1461 config/tc-z8k.c:1524
+msgid "relative jump out of range"
+msgstr "lompat relatif diluar dari jangkauan"
+
+#: config/tc-z80.c:1952
+msgid "index offset  out of range"
+msgstr "ofset indeks diluar dari jangkauan"
+
+#: config/tc-z80.c:1994 config/tc-z8k.c:1532
+#, c-format
+msgid "md_apply_fix: unknown r_type 0x%x\n"
+msgstr "md_apply_fix: tidak diketahui r_type 0x%x\n"
+
+#: config/tc-z8k.c:282
+#, c-format
+msgid "register rr%d out of range"
+msgstr "register rr%d diluar dari jangkauan"
+
+#: config/tc-z8k.c:284
+#, c-format
+msgid "register rr%d does not exist"
+msgstr "register rr%d tidak ada"
+
+#: config/tc-z8k.c:296
+#, c-format
+msgid "register rh%d out of range"
+msgstr "register rh%d diluar dari jangkauan"
+
+#: config/tc-z8k.c:308
+#, c-format
+msgid "register rl%d out of range"
+msgstr "register rl%d diluar dari jangkauan"
+
+#: config/tc-z8k.c:321
+#, c-format
+msgid "register rq%d out of range"
+msgstr "register rq%d diluar dari jangkauan"
+
+#: config/tc-z8k.c:323
+#, c-format
+msgid "register rq%d does not exist"
+msgstr "register rq%d tidak ada"
+
+#: config/tc-z8k.c:335
+#, c-format
+msgid "register r%d out of range"
+msgstr "register r%d diluar dari jangkauan"
+
+#: config/tc-z8k.c:376
+#, c-format
+msgid "expected %c"
+msgstr "diduga %c"
+
+#: config/tc-z8k.c:391
+#, c-format
+msgid "register is wrong size for a word %s"
+msgstr "register memiliki ukuran salah untuk sebuah kata %s"
+
+#: config/tc-z8k.c:405
+#, c-format
+msgid "register is wrong size for address %s"
+msgstr "register memiliki ukuran salah untuk alama %s"
+
+#: config/tc-z8k.c:539
+#, c-format
+msgid "unknown interrupt %s"
+msgstr "interupsi %s tidak diketahui"
+
+#. No interrupt type specified, opcode won't do anything.
+#: config/tc-z8k.c:562
+msgid "opcode has no effect"
+msgstr "opkode tidak memiliki efek"
+
+#: config/tc-z8k.c:673
+msgid "Missing ) in ra(rb)"
+msgstr "Hilang ) dalam ra(rb)"
+
+#: config/tc-z8k.c:753 config/tc-z8k.c:792
+#, c-format
+msgid "invalid condition code '%s'"
+msgstr "kondisi kode '%s' tidak valid"
+
+#: config/tc-z8k.c:765
+#, c-format
+msgid "invalid flag '%s'"
+msgstr "tanda '%s' tidak valid"
+
+#: config/tc-z8k.c:919 config/tc-z8k.c:925
+msgid "invalid indirect register size"
+msgstr "ukuran register tidak langsung tidak valid"
+
+#: config/tc-z8k.c:942 config/tc-z8k.c:1090 config/tc-z8k.c:1095
+msgid "invalid control register name"
+msgstr "nama register kontrol tidak valid"
+
+#: config/tc-z8k.c:1079
+msgid "immediate must be 1 or 2"
+msgstr "immediate harus 1 atau 2"
+
+#: config/tc-z8k.c:1082
+msgid "immediate 1 or 2 expected"
+msgstr "immediate diduga 1 atau 2"
+
+#: config/tc-z8k.c:1113
+msgid "can't use R0 here"
+msgstr "tidak dapat menggunakan R0 disini"
+
+#: config/tc-z8k.c:1271
+msgid "Can't find opcode to match operands"
+msgstr "Tidak dapat menemukan opkode yang cocok dengan operan"
+
+#: config/tc-z8k.c:1318
+#, c-format
+msgid "invalid architecture -z%s"
+msgstr "arsitektur -z%s tidak cocok"
+
+#: config/tc-z8k.c:1338
+#, c-format
+msgid ""
+" Z8K options:\n"
+"  -z8001                  generate segmented code\n"
+"  -z8002                  generate unsegmented code\n"
+"  -linkrelax              create linker relaxable code\n"
+msgstr ""
+" opsi Z8K:\n"
+"  -z8001                  menghasilkan kode tersegmen\n"
+"  -z8002                  menghasilkan kode tidak tersegmen\n"
+"  -linkrelax              membuat linker relaxable kode\n"
+
+#: config/tc-z8k.c:1350
+#, c-format
+msgid "call to md_convert_frag\n"
+msgstr "panggilan ke md_convert_frag\n"
+
+#: config/tc-z8k.c:1457 config/tc-z8k.c:1497 config/tc-z8k.c:1520
+msgid "cannot branch to odd address"
+msgstr "tidak dapat bercabang ke alamat ganjil"
+
+#: config/tc-z8k.c:1479
+msgid "relative address out of range"
+msgstr "alamat relatif diluar dari jangkauan"
+
+#: config/tc-z8k.c:1500
+msgid "relative call out of range"
+msgstr "panggilan relatif diluar dari jangkauan"
+
+#: config/tc-z8k.c:1544
+#, c-format
+msgid "call to md_estimate_size_before_relax\n"
+msgstr "panggilan ke md_estimate_size_before_relax\n"
+
+#: config/xtensa-relax.c:1545
+#, c-format
+msgid "invalid configuration option '%s' in transition rule '%s'"
+msgstr "opsi konfigurasi '%s' tidak valid dalam aturan transisi '%s'"
+
+#: config/xtensa-relax.c:1670
+#, c-format
+msgid "opcode '%s': no bound opname '%s' for precondition in '%s'"
+msgstr "opkode '%s': tidak ada ikatan nama-op '%s' untuk awal kondisi dalam '%s'"
+
+#: config/xtensa-relax.c:1680
+#, c-format
+msgid "opcode '%s': no bound opname '%s' for precondition in %s"
+msgstr "opkode '%s': tidak ada ikatan nama-op '%s' untuk awal kondisi dalam %s"
+
+#: config/xtensa-relax.c:1687
+#, c-format
+msgid "opcode '%s': precondition only contains constants in '%s'"
+msgstr "opkode '%s': hanya awal kondisi saja yang berisi konstanta dalam '%s'"
+
+#: config/xtensa-relax.c:1734
+msgid "expected one operand for generated literal"
+msgstr "diduga sebuah operan untuk literal umum"
+
+#: config/xtensa-relax.c:1741
+msgid "expected 0 operands for generated label"
+msgstr "diduga 0 operan untuk label yang dihasilkan"
+
+#: config/xtensa-relax.c:1754
+#, c-format
+msgid "invalid opcode '%s' in transition rule '%s'"
+msgstr "opkode '%s' tidak valid dalam aturan transisi '%s'"
+
+#: config/xtensa-relax.c:1762
+#, c-format
+msgid "opcode '%s': replacement does not have %d ops"
+msgstr "opkode '%s': replacement tidak memiliki %d ops"
+
+#: config/xtensa-relax.c:1776
+#, c-format
+msgid "opcode '%s': cannot find literal definition"
+msgstr "opkode '%s': tidak dapat menemukan definisi literal"
+
+#: config/xtensa-relax.c:1792 config/xtensa-relax.c:1818
+#, c-format
+msgid "opcode %s: unidentified operand '%s' in '%s'"
+msgstr "opkode %s: operan tidak teridentifikasi '%s' dalam '%s'"
+
+#: config/xtensa-relax.c:1813
+#, c-format
+msgid "unknown user-defined function %s"
+msgstr "fungsi %s definisi-pengguna tidak dikenal"
+
+#: config/xtensa-relax.c:1824
+#, c-format
+msgid "opcode %s: could not parse operand '%s' in '%s'"
+msgstr "opkode %s: tidak dapat parse operan '%s' dalam '%s'"
+
+#: config/xtensa-relax.c:1865
+#, c-format
+msgid "could not parse INSN_PATTERN '%s'"
+msgstr "tidak dapat parse INSN_PATTERN '%s'"
+
+#: config/xtensa-relax.c:1869
+#, c-format
+msgid "could not parse INSN_REPL '%s'"
+msgstr "tidak dapat parse INSN_REPL '%s'"
+
+#: config/xtensa-relax.c:1880
+#, c-format
+msgid "could not build transition for %s => %s"
+msgstr "tidak dapat membuat transisi untuk %s => %s"
+
+#: depend.c:193
+#, c-format
+msgid "can't open `%s' for writing"
+msgstr "tidak dapat membuka `%s' untuk menulis"
+
+#: depend.c:205
+#, c-format
+msgid "can't close `%s'"
+msgstr "tidak dapat menutup `%s'"
+
+#: dw2gencfi.c:284
+#, c-format
+msgid "register save offset not a multiple of %u"
+msgstr "ofset register save bukan kelipatan dari %u"
+
+#: dw2gencfi.c:367
+msgid "CFI state restore without previous remember"
+msgstr "CFI state restor tanpa anggota sebelumnya"
+
+#: dw2gencfi.c:419
+msgid "missing separator"
+msgstr "hilang pemisah"
+
+#: dw2gencfi.c:469
+msgid "bad register expression"
+msgstr "ekspresi register buruk"
+
+#: dw2gencfi.c:490 dw2gencfi.c:613 dw2gencfi.c:651 dw2gencfi.c:721
+msgid "CFI instruction used without previous .cfi_startproc"
+msgstr "CFI instruksi digunakan tanpa .cfi_startproc sebelumnya"
+
+#: dw2gencfi.c:675
+msgid "invalid or unsupported encoding in .cfi_personality"
+msgstr "tidak valid atau tidak didukung pengkodean dalam .cfi_personality"
+
+#: dw2gencfi.c:682
+msgid ".cfi_personality requires encoding and symbol arguments"
+msgstr ".cfi_personality membutuhkan pengkodean dan argumen simbol"
+
+#: dw2gencfi.c:705
+msgid "wrong second argument to .cfi_personality"
+msgstr "argumen kedua salah ke .cfi_personality"
+
+#: dw2gencfi.c:745
+msgid "invalid or unsupported encoding in .cfi_lsda"
+msgstr "tidak valid atau tidak didukung pengkodean dalam .cfi_lsda"
+
+#: dw2gencfi.c:752
+msgid ".cfi_lsda requires encoding and symbol arguments"
+msgstr ".cfi_lsda membutuhkan pengkodean dan simbol argumen"
+
+#: dw2gencfi.c:777
+msgid "wrong second argument to .cfi_lsda"
+msgstr "argumen kedua salah ke .cfi_lsda"
+
+#: dw2gencfi.c:792
+msgid "previous CFI entry not closed (missing .cfi_endproc)"
+msgstr "masukan CFI sebelumnya tidak ditutup (hilang .cfi_endproc)"
+
+#: dw2gencfi.c:827
+msgid ".cfi_endproc without corresponding .cfi_startproc"
+msgstr ".cfi_endproc tanpa pasangan .cfi_startproc"
+
+#: dw2gencfi.c:1372
+msgid "open CFI at the end of file; missing .cfi_endproc directive"
+msgstr "buka CFI di akhir dari berkas; hilang .cfi_endproc direktif"
+
+#: dwarf2dbg.c:524 dwarf2dbg.c:559
+msgid "file number less than one"
+msgstr "nomor berkas kurang dari satu"
+
+#: dwarf2dbg.c:534
+#, c-format
+msgid "file number %ld already allocated"
+msgstr "nomor berkas %ld telah dialokasikan"
+
+#: dwarf2dbg.c:564 dwarf2dbg.c:1286
+#, c-format
+msgid "unassigned file number %ld"
+msgstr "nomor berkas %ld tidak diassigned"
+
+#: dwarf2dbg.c:632
+msgid "is_stmt value not 0 or 1"
+msgstr "nilai is_stmt tidak 0 atau 1"
+
+#: dwarf2dbg.c:644
+msgid "isa number less than zero"
+msgstr "nomor isa kurang dari nol"
+
+#: dwarf2dbg.c:650
+#, c-format
+msgid "unknown .loc sub-directive `%s'"
+msgstr "sub-direktif .loc `%s' tidak diketahui"
+
+#: dwarf2dbg.c:1343
+msgid "internal error: unknown dwarf2 format"
+msgstr "internal error: format dwarf2 tidak dikenal"
+
+#: ecoff.c:1552
+#, c-format
+msgid "string too big (%lu bytes)"
+msgstr "string terlalu besar (%lu bytes)"
+
+#: ecoff.c:1578
+#, c-format
+msgid "inserting \"%s\" into string hash table: %s"
+msgstr "memasukan \"%s\" kedalam tabel hash string: %s"
+
+#: ecoff.c:1609 ecoff.c:1802 ecoff.c:1825 ecoff.c:1856 ecoff.c:2009
+#: ecoff.c:2120
+msgid "no current file pointer"
+msgstr "tidak ada berkas penunjuk sekarang"
+
+#: ecoff.c:1696
+msgid "too many st_End's"
+msgstr "terlalu banyak st_end"
+
+#: ecoff.c:2034
+#, c-format
+msgid "inserting \"%s\" into tag hash table: %s"
+msgstr "memasukan \"%s\" kedalam tabeh tanda hash: %s"
+
+#: ecoff.c:2195
+msgid "fake .file after real one"
+msgstr "palsu .file setelah yang asli"
+
+#: ecoff.c:2285
+msgid "filename goes over one page boundary"
+msgstr "nama berkas pergi lebih dari batas satu halaman"
+
+#: ecoff.c:2418
+msgid ".begin directive without a preceding .file directive"
+msgstr "direktif .begin tanpa diawali direktif .file"
+
+#: ecoff.c:2425
+msgid ".begin directive without a preceding .ent directive"
+msgstr "direktif .begin tanpa diawali direktif .ent"
+
+#: ecoff.c:2456
+msgid ".bend directive without a preceding .file directive"
+msgstr "direktif .bend tanpa diawali direktif .file"
+
+#: ecoff.c:2463
+msgid ".bend directive without a preceding .ent directive"
+msgstr "direktif .bend tanpa diawali direktif .ent"
+
+#: ecoff.c:2476
+msgid ".bend directive names unknown symbol"
+msgstr "nama direktif .bend simbol tidak dikenal"
+
+#: ecoff.c:2519
+msgid ".def pseudo-op used inside of .def/.endef; ignored"
+msgstr "pseudo-op .def digunakan didalam dari .def/.endef; diabaikan"
+
+#: ecoff.c:2521
+msgid "empty symbol name in .def; ignored"
+msgstr "nama simbol kosong dalam .def; diabaikan"
+
+#: ecoff.c:2558
+msgid ".dim pseudo-op used outside of .def/.endef; ignored"
+msgstr "pseudo-op .dim digunakan diluar dari .def/.endef; diabaikan"
+
+#: ecoff.c:2573
+msgid "badly formed .dim directive"
+msgstr "direktif .dim memiliki bentuk buruk"
+
+#: ecoff.c:2586
+msgid "too many .dim entries"
+msgstr "terlalu banyak direktif .dim"
+
+#: ecoff.c:2606
+msgid ".scl pseudo-op used outside of .def/.endef; ignored"
+msgstr "pseudo-op .scl digunakan diluar dari .def/.endef; diabaikan"
+
+#: ecoff.c:2631
+msgid ".size pseudo-op used outside of .def/.endef; ignored"
+msgstr ".size pseudo-op digunakan diluar dari .def/.endef; diabaikan"
+
+#: ecoff.c:2646
+msgid "badly formed .size directive"
+msgstr "direktif .size memiliki bentuk buruk"
+
+#: ecoff.c:2659
+msgid "too many .size entries"
+msgstr "terlalu banyak masukan .size"
+
+#: ecoff.c:2681
+msgid ".type pseudo-op used outside of .def/.endef; ignored"
+msgstr "pseudo-op .type digunakan diluar dari .def/.endef; diabaikan"
+
+#. FIXME: We could handle this by setting the continued bit.
+#. There would still be a limit: the .type argument can not
+#. be infinite.
+#: ecoff.c:2699
+#, c-format
+msgid "the type of %s is too complex; it will be simplified"
+msgstr "tipe dari %s terlalu komples; ini akan disederhanakan"
+
+#: ecoff.c:2710
+msgid "Unrecognized .type argument"
+msgstr "Argumen .type tidak dikenal"
+
+#: ecoff.c:2748
+msgid ".tag pseudo-op used outside of .def/.endef; ignored"
+msgstr "pseudo-op .tag digunakan diluar dari .def/.endef; diabaikan"
+
+#: ecoff.c:2773
+msgid ".val pseudo-op used outside of .def/.endef; ignored"
+msgstr "pseudo-op .val digunakan diluar dari .def/.endef; diabaikan"
+
+#: ecoff.c:2781
+msgid ".val expression is too complex"
+msgstr "ekspresi .val terlalu kompleks"
+
+#: ecoff.c:2811
+msgid ".endef pseudo-op used before .def; ignored"
+msgstr "pseudo-op .endef digunakan sebelum .def; diabaikan"
+
+#: ecoff.c:2837 ecoff.c:2918
+msgid "bad COFF debugging information"
+msgstr "informasi debug COFF buruk"
+
+#: ecoff.c:2886
+#, c-format
+msgid "no tag specified for %s"
+msgstr "tidak ada tag yang dispesifikasikan untuk %s"
+
+#: ecoff.c:2988
+msgid ".end directive without a preceding .file directive"
+msgstr "direktif .end tanpa diawali direktif .file"
+
+#: ecoff.c:2995
+msgid ".end directive without a preceding .ent directive"
+msgstr "direktif .end tanpa diawali direktif .ent"
+
+#: ecoff.c:3017
+msgid ".end directive names unknown symbol"
+msgstr "nama direktif .end simbol tidak diketahui"
+
+#: ecoff.c:3044
+msgid "second .ent directive found before .end directive"
+msgstr "direktif .end kedua ditemukan sebelum direkti .end"
+
+#: ecoff.c:3116
+msgid "no way to handle .file within .ent/.end section"
+msgstr "tidak ada cara untuk menangani .file didalam daerah .ent/.end"
+
+#: ecoff.c:3233
+msgid ".loc before .file"
+msgstr ".loc sebelum .file"
+
+#: ecoff.c:3368
+msgid "bad .weakext directive"
+msgstr "direktif .weakext buruk"
+
+#: ecoff.c:3436
+#, c-format
+msgid ".stab%c is not supported"
+msgstr ".stab%c tidak didukung"
+
+#: ecoff.c:3446
+#, c-format
+msgid ".stab%c: ignoring non-zero other field"
+msgstr ".stab%c: diabaikan bukan-nol difield lain"
+
+#: ecoff.c:3480
+#, c-format
+msgid "line number (%d) for .stab%c directive cannot fit in index field (20 bits)"
+msgstr "nomor baris (%d) untuk .stab%c direktif tidak dapat masuk dalam indeks field (20 bit)"
+
+#: ecoff.c:3516
+#, c-format
+msgid "illegal .stab%c directive, bad character"
+msgstr "direktif .stab%c tidak legal, karakter buruk"
+
+#: ecoff.c:3975 ecoff.c:4164 ecoff.c:4189
+msgid ".begin/.bend in different segments"
+msgstr ".begin/.bend dalam segmen berbeda"
+
+#: ecoff.c:4685
+msgid "missing .end or .bend at end of file"
+msgstr "hilang .end atau .bend diakhir dari berkas"
+
+#: ecoff.c:5170
+msgid "GP prologue size exceeds field size, using 0 instead"
+msgstr "GP prologue ukuran melebihi ukuran field, menggunakan 0"
+
+#: expr.c:81 read.c:3577
+msgid "bignum invalid"
+msgstr "bignum tidak valid"
+
+#: expr.c:83 read.c:3579 read.c:4042 read.c:4904
+msgid "floating point number invalid"
+msgstr "bilangan pecahan tidak valid"
+
+#: expr.c:204
+msgid "bad floating-point constant: exponent overflow"
+msgstr "konstanta bilangan pecahan buruk: exponen overflow"
+
+#: expr.c:208
+#, c-format
+msgid "bad floating-point constant: unknown error code=%d"
+msgstr "konstanta bilangan pecahan buruk: kode error=%d tidak diketahui"
+
+#: expr.c:387
+msgid "a bignum with underscores may not have more than 8 hex digits in any word"
+msgstr "sebuah bignum dengan garis-bawah mungkin tidak memiliki lebih dari 8 hex digits dalam kata apapun"
+
+#: expr.c:410
+msgid "a bignum with underscores must have exactly 4 words"
+msgstr "sebuah bignum dengan garis-bawah harus memiliki tepat 4 kata"
+
+#. Either not seen or not defined.
+#. @@ Should print out the original string instead of
+#. the parsed number.
+#: expr.c:533
+#, c-format
+msgid "backward ref to unknown label \"%d:\""
+msgstr "backward ref ke label \"%d:\" tidak diketahui"
+
+#: expr.c:651
+msgid "character constant too large"
+msgstr "konstanta karakter terlalu besar"
+
+#: expr.c:897
+#, c-format
+msgid "expr.c(operand): bad atof_generic return val %d"
+msgstr "expr.c(operan): buruk atof_generic menghasilkan nilai %d"
+
+#: expr.c:958
+#, c-format
+msgid "missing '%c'"
+msgstr "hilang '%c'"
+
+#: expr.c:969 read.c:4388
+msgid "EBCDIC constants are not supported"
+msgstr "konstanta EBCDIC tidak didukung"
+
+#: expr.c:1081
+#, c-format
+msgid "Unary operator %c ignored because bad operand follows"
+msgstr "Operan unary %c diabaikan karena diikuti operan buruk"
+
+#: expr.c:1127 expr.c:1152
+msgid "syntax error in .startof. or .sizeof."
+msgstr "sintaks error dalam .startof. atau .sizeof."
+
+#: expr.c:1663
+msgid "missing operand; zero assumed"
+msgstr "hilang operan; nol diasumsikan"
+
+#: expr.c:1698
+msgid "left operand is a bignum; integer 0 assumed"
+msgstr "operan kiri adalah sebuah bignum; integer 0 diasumsikan"
+
+#: expr.c:1700
+msgid "left operand is a float; integer 0 assumed"
+msgstr "operan kiri adalah sebuah float; integer 0 diasumsikan"
+
+#: expr.c:1709
+msgid "right operand is a bignum; integer 0 assumed"
+msgstr "operan kanan adalah sebuah bignum; integer 0 diasumsikan"
+
+#: expr.c:1711
+msgid "right operand is a float; integer 0 assumed"
+msgstr "operan kanan adalah sebuah pecahan; bilangan bulat 0 diasumsikan"
+
+#: expr.c:1779 symbols.c:1356
+msgid "division by zero"
+msgstr "pembagian dengan nol"
+
+#: expr.c:1879
+msgid "operation combines symbols in different segments"
+msgstr "operasi menggabungkan simbol dalam segmen berbeda"
+
+#: frags.c:48
+msgid "attempt to allocate data in absolute section"
+msgstr "mencoba mengalokasikan data dalam daerah absolut"
+
+#: frags.c:54
+msgid "attempt to allocate data in common section"
+msgstr "mencoba mengalokasikan data dalam daerah umum"
+
+#: frags.c:112
+#, c-format
+msgid "can't extend frag %u chars"
+msgstr "tidak dapat meneksten frag %u chars"
+
+#. For error messages.
+#. Detect if we are reading from stdin by examining the file
+#. name returned by as_where().
+#.
+#. [FIXME: We rely upon the name in the strcmp below being the
+#. same as the one used by input_scrub_new_file(), if that is
+#. not true, then this code will fail].
+#.
+#. If we are reading from stdin, then we need to save each input
+#. line here (assuming of course that we actually have a line of
+#. input to read), so that it can be displayed in the listing
+#. that is produced at the end of the assembly.
+#: input-file.c:138 input-scrub.c:241 listing.c:335
+msgid "{standard input}"
+msgstr "{masukan baku}"
+
+#: input-file.c:143
+#, c-format
+msgid "can't open %s for reading: %s"
+msgstr "tidak dapat membuka %s untuk pembacaan: %s"
+
+#: input-file.c:152 input-file.c:215 input-file.c:241
+#, c-format
+msgid "can't read from %s: %s"
+msgstr "tidak dapat membaca dari %s: %s"
+
+#: input-file.c:249 listing.c:1188 output-file.c:69
+#, c-format
+msgid "can't close %s: %s"
+msgstr "tidak dapat menutup %s: %s"
+
+#: input-scrub.c:266
+msgid "macros nested too deeply"
+msgstr "makro nested terlalu dalam"
+
+#: input-scrub.c:369 input-scrub.c:393
+msgid "partial line at end of file ignored"
+msgstr "baris partial diakhir dari berkas diabaikan"
+
+#: itbl-ops.c:329
+#, c-format
+msgid "Unable to allocate memory for new instructions\n"
+msgstr "Tidak dapat mengalokasikan memori untuk instruksi baru\n"
+
+#: listing.c:241
+msgid "Warning:"
+msgstr "Peringatan:"
+
+#: listing.c:247
+msgid "Error:"
+msgstr "Error:"
+
+#: listing.c:1074
+#, c-format
+msgid ""
+"\n"
+" time stamp    \t: %s\n"
+"\n"
+msgstr ""
+"\n"
+" penanda waktu \t: %s\n"
+"\n"
+
+#: listing.c:1084
+#, c-format
+msgid "%s "
+msgstr "%s"
+
+#: listing.c:1089
+#, c-format
+msgid ""
+"\n"
+"\t%s "
+msgstr ""
+"\n"
+"\t%s "
+
+#: listing.c:1099
+msgid ""
+"\n"
+" options passed\t: "
+msgstr ""
+"\n"
+" opsi dilewati\t: "
+
+#: listing.c:1138
+#, c-format
+msgid ""
+" GNU assembler version %s (%s)\n"
+"\t using BFD version %s."
+msgstr ""
+" Versi GNU assembler %s (%s)\n"
+"\t menggunakan versi BFD %s."
+
+#: listing.c:1141
+#, c-format
+msgid ""
+"\n"
+" input file    \t: %s"
+msgstr ""
+"\n"
+" berkas masukan\t: %s"
+
+#: listing.c:1142
+#, c-format
+msgid ""
+"\n"
+" output file   \t: %s"
+msgstr ""
+"\n"
+" berkas keluaran\t: %s"
+
+#: listing.c:1143
+#, c-format
+msgid ""
+"\n"
+" target        \t: %s"
+msgstr ""
+"\n"
+" target        \t: %s"
+
+#: listing.c:1167
+#, c-format
+msgid "can't open %s: %s"
+msgstr "tidak dapat membuka %s: %s"
+
+#: listing.c:1260
+msgid "strange paper height, set to no form"
+msgstr "tinggi kertas aneh, set ke tidak ada bentuk"
+
+#: listing.c:1324
+msgid "new line in title"
+msgstr "baris barus dalam judul"
+
+#. Turns the next expression into a string.
+#: macro.c:371
+#, no-c-format
+msgid "% operator needs absolute expression"
+msgstr "% operator membutuhkan ekspresi absolut"
+
+#: macro.c:521
+#, c-format
+msgid "Missing parameter qualifier for `%s' in macro `%s'"
+msgstr "Hilang kualifikasi parameter untuk `%s' dalam makro `%s'"
+
+#: macro.c:531
+#, c-format
+msgid "`%s' is not a valid parameter qualifier for `%s' in macro `%s'"
+msgstr "`%s' bukan sebuah kualifikasi parameter yang valid untuk `%s' dalam makro `%s'"
+
+#: macro.c:548
+#, c-format
+msgid "Pointless default value for required parameter `%s' in macro `%s'"
+msgstr "Pointless nilai default yang dibutuhkan oleh parameter `%s' dalam makro `%s'"
+
+#: macro.c:560
+#, c-format
+msgid "A parameter named `%s' already exists for macro `%s'"
+msgstr "Sebuah parameter dinamai `%s' telah ada untuk makro `%s'"
+
+#: macro.c:597
+#, c-format
+msgid "Reserved word `%s' used as parameter in macro `%s'"
+msgstr "Kata yang direserve `%s' digunakan sebagai parameter dalam makro `%s'"
+
+#: macro.c:635
+#, c-format
+msgid "unexpected end of file in macro `%s' definition"
+msgstr "tidak terduga akhir dari berkas dalam definisi makro `%s'"
+
+#: macro.c:647
+#, c-format
+msgid "missing `)' after formals in macro definition `%s'"
+msgstr "hilang `)' sesudah formal dalam definisi makro `%s'"
+
+#: macro.c:662
+msgid "Missing macro name"
+msgstr "Hilang nama makro"
+
+#: macro.c:671
+#, c-format
+msgid "Bad parameter list for macro `%s'"
+msgstr "Daftar parameter buruk untuk makro `%s'"
+
+#: macro.c:677
+#, c-format
+msgid "Macro `%s' was already defined"
+msgstr "Makro `%s' telah terdefinisi"
+
+#: macro.c:800 macro.c:802
+msgid "missing `)'"
+msgstr "hilang `)'"
+
+#: macro.c:897
+#, c-format
+msgid "`%s' was already used as parameter (or another local) name"
+msgstr "`%s' telah digunakan sebagai nama parameter (atau lokal lain)"
+
+#: macro.c:1055
+msgid "confusion in formal parameters"
+msgstr "bingung dalam parameter formal"
+
+#: macro.c:1062
+#, c-format
+msgid "Parameter named `%s' does not exist for macro `%s'"
+msgstr "Parameter bernama `%s' tidak ada untuk makro `%s'"
+
+#: macro.c:1070
+#, c-format
+msgid "Value for parameter `%s' of macro `%s' was already specified"
+msgstr "Nilai untuk parameter `%s' dari makro `%s' telah dispesifikasikan"
+
+#: macro.c:1084
+msgid "can't mix positional and keyword arguments"
+msgstr "tidak dapat mencampurkan posisi dan argumen keyword"
+
+#: macro.c:1095
+msgid "too many positional arguments"
+msgstr "terlalu banyak argumen posisi"
+
+#: macro.c:1143
+#, c-format
+msgid "Missing value for required parameter `%s' of macro `%s'"
+msgstr "Hilang nilai untuk parameter yang dibutuhkan `%s' dari makro `%s'"
+
+#: macro.c:1282
+#, c-format
+msgid "Attempt to purge non-existant macro `%s'"
+msgstr "Mencoba untuk menghapus makro yang tidak ada `%s'"
+
+#: macro.c:1301
+msgid "unexpected end of file in irp or irpc"
+msgstr "tidak terduga akhir dari berkas dalam irp atau irpc"
+
+#: macro.c:1309
+msgid "missing model parameter"
+msgstr "hilang parameter model"
+
+#: messages.c:82
+#, c-format
+msgid "Assembler messages:\n"
+msgstr "Pesan perakit:\n"
+
+#: messages.c:166
+#, c-format
+msgid "Warning: "
+msgstr "Peringatan: "
+
+#: messages.c:267
+#, c-format
+msgid "Error: "
+msgstr "Error: "
+
+#: messages.c:362 messages.c:382
+#, c-format
+msgid "Fatal error: "
+msgstr "Fatal error: "
+
+#: messages.c:397
+#, c-format
+msgid "Internal error!\n"
+msgstr "Internal error!\n"
+
+#: messages.c:399
+#, c-format
+msgid "Assertion failure in %s at %s line %d.\n"
+msgstr "Assertion gagal dalam %s di %s baris %d.\n"
+
+#: messages.c:402
+#, c-format
+msgid "Assertion failure at %s line %d.\n"
+msgstr "Assertion gagal di %s baris %d.\n"
+
+#: messages.c:403 messages.c:420
+#, c-format
+msgid "Please report this bug.\n"
+msgstr "Tolong laporkan bug ini.\n"
+
+#: messages.c:415
+#, c-format
+msgid "Internal error, aborting at %s line %d in %s\n"
+msgstr "Internal error, membatalkan di %s baris %d dalam %s\n"
+
+#: messages.c:418
+#, c-format
+msgid "Internal error, aborting at %s line %d\n"
+msgstr "Internal error, membatalkan di %s baris %d\n"
+
+#: messages.c:467
+#, c-format
+msgid "%s out of domain (%d is not a multiple of %d)"
+msgstr "%s diluar dari domain (%d bukan kelipatan dari %d)"
+
+#: messages.c:485
+#, c-format
+msgid "%s out of range (%d is not between %d and %d)"
+msgstr "%s diluar dari jangkauan (%d tidak diantara %d dan %d)"
+
+#. xgettext:c-format.
+#: messages.c:508
+#, c-format
+msgid "%s out of range (0x%s is not between 0x%s and 0x%s)"
+msgstr "%s diluar dari jangkauan (0x%s tidak diantara 0x%s dan 0x%s)"
+
+#: output-file.c:35
+#, c-format
+msgid "can't open a bfd on stdout %s"
+msgstr "tidak dapat membuka sebuah bfd di stdout %s"
+
+#: output-file.c:42
+#, c-format
+msgid "selected target format '%s' unknown"
+msgstr "format target '%s' yang dipilih tidak diketahui"
+
+#: output-file.c:44
+#, c-format
+msgid "can't create %s: %s"
+msgstr "tidak dapat membuat %s: %s"
+
+#: read.c:462
+msgid "bad or irreducible absolute expression"
+msgstr "buruk atau tidak tereduksi ekspresi absolut"
+
+#: read.c:488
+#, c-format
+msgid "error constructing %s pseudo-op table: %s"
+msgstr "error membuat %s pseudo-op tabel: %s"
+
+#: read.c:898
+#, c-format
+msgid "unknown pseudo-op: `%s'"
+msgstr "tidak diketahui pseudo-op: `%s'"
+
+#: read.c:985
+#, c-format
+msgid "label \"%d$\" redefined"
+msgstr "label \"%d$\" teredefinisi"
+
+#: read.c:1220
+msgid ".abort detected.  Abandoning ship."
+msgstr ".abort terdeteksi. Membatalkan ship."
+
+#: read.c:1238 read.c:2615
+msgid "ignoring fill value in absolute section"
+msgstr "mengabaikan fill value dalam daerah absolut"
+
+#: read.c:1329
+#, c-format
+msgid "alignment too large: %u assumed"
+msgstr "alignmen terlalu besar: %u diasumsikan"
+
+#: read.c:1361
+msgid "expected fill pattern missing"
+msgstr "menduga fill pattern hilang"
+
+#: read.c:1470
+#, c-format
+msgid "size (%ld) out of range, ignored"
+msgstr "ukuran (%ld) diluar dari jangkauan, diabaikan"
+
+#: read.c:1499
+#, c-format
+msgid "size of \"%s\" is already %ld; not changing to %ld"
+msgstr "ukuran dari \"%s\" telah %ld; tidak mengubah ke %ld"
+
+#. Some of the back ends can't deal with non-positive line numbers.
+#. Besides, it's silly.  GCC however will generate a line number of
+#. zero when it is pre-processing builtins for assembler-with-cpp files:
+#.
+#. # 0 "<built-in>"
+#.
+#. We do not want to barf on this, especially since such files are used
+#. in the GCC and GDB testsuites.  So we check for negative line numbers
+#. rather than non-positive line numbers.
+#: read.c:1749
+#, c-format
+msgid "line numbers must be positive; line number %d rejected"
+msgstr "nomor baris harus positif; nomor baris %d ditolak"
+
+#: read.c:1786
+#, c-format
+msgid "incompatible flag %i in line directive"
+msgstr "tanda tidak kompatibel %i dalam direktif baris"
+
+#: read.c:1798
+#, c-format
+msgid "unsupported flag %i in line directive"
+msgstr "tanda %i tidak didukung dalam direktif baris"
+
+#: read.c:1837
+msgid "start address not supported"
+msgstr "awal alamat tidak didukung"
+
+#: read.c:1846
+msgid ".err encountered"
+msgstr ".err ditemui"
+
+#: read.c:1862
+msgid ".error directive invoked in source file"
+msgstr ".error direktif dijalankan dalam berkas sumber"
+
+#: read.c:1863
+msgid ".warning directive invoked in source file"
+msgstr ".warning direktif dipanggil dalam berkas sumber"
+
+#: read.c:1869
+#, c-format
+msgid "%s argument must be a string"
+msgstr "%s argumen harus berupa sebuah string"
+
+#: read.c:1901 read.c:1903
+#, c-format
+msgid ".fail %ld encountered"
+msgstr ".fail %ld ditemui"
+
+#: read.c:1939
+#, c-format
+msgid ".fill size clamped to %d"
+msgstr ".fill size clampe ke %d"
+
+#: read.c:1944
+msgid "size negative; .fill ignored"
+msgstr "ukuran negatif; .fill diabaikan"
+
+#: read.c:1950
+msgid "repeat < 0; .fill ignored"
+msgstr "diulang < 0; .fill diabaikan"
+
+#: read.c:2088
+msgid "expected numeric constant"
+msgstr "diduga konstanta numerik"
+
+#: read.c:2144
+msgid "bad string constant"
+msgstr "konstanta buruk string"
+
+#: read.c:2148
+msgid "expected <tag> , <value>"
+msgstr "diduga <tag> , <nilai>"
+
+#: read.c:2222
+#, c-format
+msgid "unrecognized .linkonce type `%s'"
+msgstr "tidak dikenal .linkonve tipe `%s'"
+
+#: read.c:2234
+msgid ".linkonce is not supported for this object file format"
+msgstr ".linkonve tidak didukung untuk format berkas objek ini"
+
+#: read.c:2256
+#, c-format
+msgid "bfd_set_section_flags: %s"
+msgstr "bfd_set_section_flags: %s"
+
+#: read.c:2329
+msgid "expected alignment after size"
+msgstr "diduga alignmen sesudah ukuran"
+
+#: read.c:2544
+#, c-format
+msgid "attempt to redefine pseudo-op `%s' ignored"
+msgstr "mencoba meredefinis pseudo-op `%s' diabaikan"
+
+#: read.c:2563
+msgid "ignoring macro exit outside a macro definition."
+msgstr "mengabaikan makro exit diluar definisi makro."
+
+#: read.c:2610
+#, c-format
+msgid "invalid segment \"%s\""
+msgstr "segmen \"%s\" tidak valid"
+
+#: read.c:2618
+msgid "only constant offsets supported in absolute section"
+msgstr "hanya konstanta ofset yang didukung dalam daerah absolut"
+
+#: read.c:2657
+msgid "MRI style ORG pseudo-op not supported"
+msgstr "gaya MRI ORG pseudo-op tidak didukung"
+
+#: read.c:2810
+#, c-format
+msgid "unrecognized section type `%s'"
+msgstr "tipe daerah `%s' tidak dikenal"
+
+#: read.c:2824
+msgid "absolute sections are not supported"
+msgstr "daerah absolut tidak didukung"
+
+#: read.c:2839
+#, c-format
+msgid "unrecognized section command `%s'"
+msgstr "daerah perintah `%s' tidak dikenal"
+
+#: read.c:2903
+#, c-format
+msgid ".end%c encountered without preceeding %s"
+msgstr ".end%c ditemui tanpa diawali %s"
+
+#: read.c:2933
+#, c-format
+msgid "%s without %s"
+msgstr "%s tanpa %s"
+
+#: read.c:3157
+msgid "unsupported variable size or fill value"
+msgstr "tidak didukun ukuran variabel atau nilai fill"
+
+#: read.c:3185
+msgid ".space repeat count is zero, ignored"
+msgstr ".space jumlah pengulangan adalah nol, diabaikan"
+
+#: read.c:3187
+msgid ".space repeat count is negative, ignored"
+msgstr ".space jumlah pengulangan adalah negatif, diabaikan"
+
+#: read.c:3216
+msgid "space allocation too complex in absolute section"
+msgstr "alokasi ruang terlalu kompleks dalam daerah absolut"
+
+#: read.c:3222
+msgid "space allocation too complex in common section"
+msgstr "alokasi ruang terlalu kompleks dalam daerah sama"
+
+#: read.c:3309 read.c:4630
+#, c-format
+msgid "bad floating literal: %s"
+msgstr "literal floating buruk: %s"
+
+#: read.c:3469
+#, c-format
+msgid "%s: would close weakref loop: %s"
+msgstr "%s:  akan menutup look weakref: %s"
+
+#: read.c:3515
+#, c-format
+msgid "junk at end of line, first unrecognized character valued 0x%x"
+msgstr "sampah diakhir dari baris, karakter pertama tidak dikenal memiliki nilai 0x%x"
+
+#: read.c:3573
+msgid "missing expression"
+msgstr "hilang ekspresi"
+
+#: read.c:3641
+#, c-format
+msgid "`%s' can't be equated to common symbol '%s'"
+msgstr "`%s' tidak dapat disamakan ke simbol umum '%s'"
+
+#: read.c:3769
+msgid "rva without symbol"
+msgstr "rva tanpa simbol"
+
+#: read.c:3826
+msgid "missing or bad offset expression"
+msgstr "hilang atau buruk ekspresi ofset"
+
+#: read.c:3847
+msgid "missing reloc type"
+msgstr "hilang tipe relokasi"
+
+#: read.c:3859
+msgid "unrecognized reloc type"
+msgstr "tipe relokasi tidak dikenal"
+
+#: read.c:3875
+msgid "bad reloc expression"
+msgstr "ekspresi relokasi buruk"
+
+#: read.c:3998
+msgid "attempt to store value in absolute section"
+msgstr "mencoba untuk menyimpan nilai dalam daerah absolut"
+
+#: read.c:4036 read.c:4898
+msgid "zero assumed for missing expression"
+msgstr "nol diasumsikan setelah hilang ekspresi"
+
+#: read.c:4048 read.c:4910 write.c:260
+msgid "register value used as expression"
+msgstr "nilai register yang digunakan sebagai ekspresi"
+
+#: read.c:4128
+#, c-format
+msgid "value 0x%llx truncated to 0x%llx"
+msgstr "nilai 0x%llx dipotong ke 0x%llx"
+
+#: read.c:4131
+msgid "value 0x%I64x truncated to 0x%I64x"
+msgstr "nilai 0x%I64x dipotong ke 0x%I64x"
+
+#: read.c:4135
+#, c-format
+msgid "value 0x%lx truncated to 0x%lx"
+msgstr "nilai 0x%lx dipotong ke 0x%lx"
+
+#: read.c:4152
+#, c-format
+msgid "bignum truncated to %d bytes"
+msgstr "bignum dipotong ke %d bytes"
+
+#: read.c:4461 read.c:4652
+msgid "unresolvable or nonpositive repeat count; using 1"
+msgstr "tidak terselesaikan atau tidak positif jumlah pengulangan; menggunakan 1"
+
+#: read.c:4510
+#, c-format
+msgid "unknown floating type type '%c'"
+msgstr "tipe '%c' tipe pecahan tidak diketahui"
+
+#: read.c:4532
+msgid "floating point constant too large"
+msgstr "konstanta pecahan terlalu besar"
+
+#: read.c:5060
+msgid "strings must be placed into a section"
+msgstr "string harus diletakan dalam sebuah daerah"
+
+#: read.c:5108
+msgid "expected <nn>"
+msgstr "diduga <nn>"
+
+#. To be compatible with BSD 4.2 as: give the luser a linefeed!!
+#: read.c:5141 read.c:5227
+msgid "unterminated string; newline inserted"
+msgstr "string tidak terselesaikan; baris baru dimasukan"
+
+#: read.c:5235
+msgid "bad escaped character in string"
+msgstr "karakter escaped dalam string buruk"
+
+#: read.c:5260
+msgid "expected address expression"
+msgstr "diduga ekspresi alamat"
+
+#: read.c:5279
+#, c-format
+msgid "symbol \"%s\" undefined; zero assumed"
+msgstr "simbol \"%s\" tidak terdefinisi; nol diasumsikan"
+
+#: read.c:5282
+msgid "some symbol undefined; zero assumed"
+msgstr "beberapa simbol tidak terdefinisi; nol diasumsikan"
+
+#: read.c:5318
+msgid "this string may not contain '\\0'"
+msgstr "string ini tidak boleh berisi '\\0'"
+
+#: read.c:5354
+msgid "missing string"
+msgstr "hilang string"
+
+#: read.c:5441
+#, c-format
+msgid ".incbin count zero, ignoring `%s'"
+msgstr "jumlah .incbin nol, mengabaikan `%s'"
+
+#: read.c:5467
+#, c-format
+msgid "file not found: %s"
+msgstr "berkas tidak ditemukan: %s"
+
+#: read.c:5481
+#, c-format
+msgid "seek to end of .incbin file failed `%s'"
+msgstr "mencari akhir dari berkas .incbin gagal `%s'"
+
+#: read.c:5492
+#, c-format
+msgid "skip (%ld) or count (%ld) invalid for file size (%ld)"
+msgstr "melewati (%ld) atau jumlah (%ld) tidak valid untuk ukuran berkas (%ld)"
+
+#: read.c:5499
+#, c-format
+msgid "could not skip to %ld in file `%s'"
+msgstr "tidak dapat melewati ke %ld dalam berkas `%s'"
+
+#: read.c:5508
+#, c-format
+msgid "truncated file `%s', %ld of %ld bytes read"
+msgstr "memotong berkas `%s', %ld dari %ld bytes dibaca"
+
+#: read.c:5666
+msgid "missing .func"
+msgstr "hilang .func"
+
+#: read.c:5683
+msgid ".endfunc missing for previous .func"
+msgstr ".endfunc hilang untuk .func sebelumnya"
+
+#: read.c:5812
+#, c-format
+msgid "missing closing `%c'"
+msgstr "hilang penutup `%c'"
+
+#: read.c:5814
+msgid "stray `\\'"
+msgstr "stray `\\'"
+
+#: remap.c:52
+#, c-format
+msgid "invalid argument '%s' to -fdebug-prefix-map"
+msgstr "argumen '%s' tidak valid ke -fdebug-prefix-map"
+
+#: stabs.c:214 stabs.c:222 stabs.c:230 stabs.c:249
+#, c-format
+msgid ".stab%c: missing comma"
+msgstr ".stab%c: hilang koma"
+
+#. This could happen for example with a source file with a huge
+#. number of lines.  The only cure is to use a different debug
+#. format, probably DWARF.
+#: stabs.c:242
+#, c-format
+msgid ".stab%c: description field '%x' too big, try a different debug format"
+msgstr ".stab%c: deskripsi daerah '%x' terlalu besar, coba format debug berbeda"
+
+#: stabs.c:423
+msgid "comma missing in .xstabs"
+msgstr "koma hilang dalam .xstabs"
+
+#: symbols.c:277
+#, c-format
+msgid "cannot define symbol `%s' in absolute section"
+msgstr "tidak dapat mendefinisikan simbol `%s' dalam daerah absolut"
+
+#: symbols.c:417
+#, c-format
+msgid "symbol `%s' is already defined as \"%s\"/%s%ld"
+msgstr "simbol `%s' telah didefinisikan sebagai \"%s\"/%s%ld"
+
+#: symbols.c:494 symbols.c:501
+#, c-format
+msgid "inserting \"%s\" into symbol table failed: %s"
+msgstr "memasukan \"%s\" kedalam tabel simbol gagal: %s"
+
+#: symbols.c:964 symbols.c:968
+#, c-format
+msgid "undefined symbol `%s' in operation"
+msgstr "simbol `%s' tidak terdefinisi dalam operasi"
+
+#: symbols.c:975
+#, c-format
+msgid "invalid sections for operation on `%s' and `%s'"
+msgstr "daerah tidak valid untuk operasi di `%s' dan `%s'"
+
+#: symbols.c:979
+#, c-format
+msgid "invalid section for operation on `%s'"
+msgstr "daerah tidak valid untuk operasi di `%s'"
+
+#: symbols.c:987 symbols.c:990
+#, c-format
+msgid "undefined symbol `%s' in operation setting `%s'"
+msgstr "simbol `%s' tidak terdefinisi dalam konfigurasi operasi `%s'"
+
+#: symbols.c:996
+#, c-format
+msgid "invalid sections for operation on `%s' and `%s' setting `%s'"
+msgstr "daerah tidak valid untuk operasi di `%s' dan `%s' konfigurasi `%s'"
+
+#: symbols.c:999
+#, c-format
+msgid "invalid section for operation on `%s' setting `%s'"
+msgstr "daerah tidak valid untuk operasi di `%s' konfigurasi `%s'"
+
+#: symbols.c:1049
+#, c-format
+msgid "symbol definition loop encountered at `%s'"
+msgstr "definisi simbol loop ditemui di `%s'"
+
+#: symbols.c:1076
+#, c-format
+msgid "cannot convert expression symbol %s to complex relocation"
+msgstr "tidak dapat mengubah ekspresi simbol %s relokasi terlalu kompleks"
+
+#: symbols.c:1358
+#, c-format
+msgid "division by zero when setting `%s'"
+msgstr "pembagian dengan nol ketika menset `%s'"
+
+#: symbols.c:1439 write.c:1825
+#, c-format
+msgid "can't resolve value for symbol `%s'"
+msgstr "tidak dapat menyelesaikan nilai untuk simbol `%s'"
+
+#: symbols.c:1889
+#, c-format
+msgid "\"%d\" (instance number %d of a %s label)"
+msgstr "\"%d\" (nomor instance %d dari sebuah label %s)"
+
+#: symbols.c:1918
+#, c-format
+msgid "attempt to get value of unresolved symbol `%s'"
+msgstr "mencoba untuk memperoleh nilai dari simbol `%s' yang tidak terselesaikan"
+
+#: symbols.c:2191
+msgid "section symbols are already global"
+msgstr "daerah simbol telah menjadi global"
+
+#: symbols.c:2302
+#, c-format
+msgid "Accessing function `%s' as thread-local object"
+msgstr "Mengakses fungsi `%s' sebagai thread-local objek"
+
+#: symbols.c:2306
+#, c-format
+msgid "Accessing `%s' as thread-local object"
+msgstr "Mengakses `%s' sebagai thread-lokal objek"
+
+#: write.c:159
+#, c-format
+msgid "field fx_size too small to hold %d"
+msgstr "daerah fx_size terlalu kecil untuk dipegang %d"
+
+#: write.c:436
+#, c-format
+msgid "attempt to .org/.space backwards? (%ld)"
+msgstr "mencoba untuk .org/.space backward? (%ld)"
+
+#: write.c:664
+msgid "invalid offset expression"
+msgstr "ekspresi ofset tidak valid"
+
+#: write.c:686
+msgid "invalid reloc expression"
+msgstr "ekspresi relokasi tidak valid"
+
+#: write.c:1039
+#, c-format
+msgid "value of %s too large for field of %d bytes at %s"
+msgstr "nilai dari %s terlalu besar untuk daerah dari %d bytes di %s"
+
+#: write.c:1051
+#, c-format
+msgid "signed .word overflow; switch may be too large; %ld at 0x%lx"
+msgstr "signed .word overflow; switch mungkin terlalu besar; %ld di 0x%lx"
+
+#: write.c:1095
+msgid "redefined symbol cannot be used on reloc"
+msgstr "redefinisi simbol tidak dapat digunakan dalam relokasi"
+
+#: write.c:1108
+msgid "relocation out of range"
+msgstr "relokasi diluar dari jangkauan"
+
+#: write.c:1111
+#, c-format
+msgid "%s:%u: bad return from bfd_install_relocation: %x"
+msgstr "%s:%u: buruk kembali dari bfd_install_relocation: %x"
+
+#: write.c:1175
+msgid "internal error: fixup not contained within frag"
+msgstr "internal error: fixup tidak berisi dalam frag"
+
+#: write.c:1228
+msgid "reloc not within (fixed part of) section"
+msgstr "relokasi tidak dalam (bagian tetap dari) daerah"
+
+#: write.c:1295 write.c:1316
+#, c-format
+msgid "can't write %s: %s"
+msgstr "tidak dapat menulis %s: %s"
+
+#: write.c:1346
+msgid "cannot write to output file"
+msgstr "tidak dapat menulis ke berkas keluaran"
+
+#: write.c:1500
+#, c-format
+msgid "%d error%s, %d warning%s, generating bad object file"
+msgstr "%d error%s, %d peringatan%s, menghasilkan berkas objek buruk"
+
+#: write.c:1507
+#, c-format
+msgid "%d error%s, %d warning%s, no object file generated"
+msgstr "%d error%s, %d peringatan%s, tidak ada berkas objek yang dihasilkan"
+
+#: write.c:1742
+#, c-format
+msgid "%s: global symbols not supported in common sections"
+msgstr "%s: simbol global tidak didukung dalam daerah umum"
+
+#: write.c:1756
+#, c-format
+msgid "local label `%s' is not defined"
+msgstr "lokal label `%s' tidak terdefinisi"
+
+#: write.c:1776
+#, c-format
+msgid "Local symbol `%s' can't be equated to common symbol `%s'"
+msgstr "Lokal simbol `%s' tidak dapat disamakan dengan simbol umum `%s'"
+
+#: write.c:1783
+#, c-format
+msgid "can't make global register symbol `%s'"
+msgstr "tidak dapat membuat simbol register global `%s'"
+
+#: write.c:2052
+#, c-format
+msgid "alignment padding (%lu bytes) not a multiple of %ld"
+msgstr "alignmen padding (%lu bytes) bukan kelipatan dari %ld"
+
+#: write.c:2210
+#, c-format
+msgid ".word %s-%s+%s didn't fit"
+msgstr ".word %s-%s+%s tidak masuk"
+
+#: write.c:2299
+msgid "padding added"
+msgstr "padding ditambahkan"
+
+#: write.c:2349
+msgid "attempt to move .org backwards"
+msgstr "mencoba memindahkan .org kebelakang"
+
+#: write.c:2373
+msgid ".space specifies non-absolute value"
+msgstr ".space menspesifikasikan nilai tidak-absolut"
+
+#: write.c:2388
+msgid ".space or .fill with negative value, ignored"
+msgstr ".space atau .fill dengan nilai negatif, diabaikan"
+
+#: write.c:2459
+#, c-format
+msgid "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"
+msgstr "Loop tidak terhingga ditemui ketika mencoba untuk menghitung alamat dari simbol dalam daerah %s"
diff --git a/gas/read.c b/gas/read.c
index ec69c4e..121c97a 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -220,9 +220,9 @@
 static int hex_float (int, char *);
 static segT get_known_segmented_expression (expressionS * expP);
 static void pobegin (void);
-static int get_line_sb (sb *);
+static int get_non_macro_line_sb (sb *);
 static void generate_file_debug (void);
-static char *_find_end_of_line (char *, int, int);
+static char *_find_end_of_line (char *, int, int, int);
 
 void
 read_begin (void)
@@ -530,7 +530,7 @@
 #define HANDLE_CONDITIONAL_ASSEMBLY()					\
   if (ignore_input ())							\
     {									\
-      char *eol = find_end_of_line (input_line_pointer, flag_m68k_mri);	\
+      char *eol = find_end_of_line (input_line_pointer, flag_m68k_mri); \
       input_line_pointer = (input_line_pointer <= buffer_limit		\
 			    && eol >= buffer_limit)			\
 			   ? buffer_limit				\
@@ -923,7 +923,7 @@
 		      /* WARNING: c has char, which may be end-of-line.  */
 		      /* Also: input_line_pointer->`\0` where c was.  */
 		      *input_line_pointer = c;
-		      input_line_pointer = _find_end_of_line (input_line_pointer, flag_m68k_mri, 1);
+		      input_line_pointer = _find_end_of_line (input_line_pointer, flag_m68k_mri, 1, 0);
 		      c = *input_line_pointer;
 		      *input_line_pointer = '\0';
 
@@ -2178,7 +2178,7 @@
 
   sb_new (&out);
 
-  err = expand_irp (irpc, 0, &s, &out, get_line_sb);
+  err = expand_irp (irpc, 0, &s, &out, get_non_macro_line_sb);
   if (err != NULL)
     as_bad_where (file, line, "%s", err);
 
@@ -2468,7 +2468,7 @@
    or zero if there are no more lines.  */
 
 static int
-get_line_sb (sb *line)
+get_line_sb (sb *line, int in_macro)
 {
   char *eol;
 
@@ -2482,7 +2482,7 @@
 	return 0;
     }
 
-  eol = find_end_of_line (input_line_pointer, flag_m68k_mri);
+  eol = _find_end_of_line (input_line_pointer, flag_m68k_mri, 0, in_macro);
   sb_add_buffer (line, input_line_pointer, eol - input_line_pointer);
   input_line_pointer = eol;
 
@@ -2494,6 +2494,18 @@
   return *input_line_pointer++;
 }
 
+static int
+get_non_macro_line_sb (sb *line)
+{
+  return get_line_sb (line, 0);
+}
+
+static int
+get_macro_line_sb (sb *line)
+{
+  return get_line_sb (line, 1);
+}
+
 /* Define a macro.  This is an interface to macro.c.  */
 
 void
@@ -2518,11 +2530,11 @@
 
       sb_new (&label);
       sb_add_string (&label, S_GET_NAME (line_label));
-      err = define_macro (0, &s, &label, get_line_sb, file, line, &name);
+      err = define_macro (0, &s, &label, get_macro_line_sb, file, line, &name);
       sb_kill (&label);
     }
   else
-    err = define_macro (0, &s, NULL, get_line_sb, file, line, &name);
+    err = define_macro (0, &s, NULL, get_macro_line_sb, file, line, &name);
   if (err != NULL)
     as_bad_where (file, line, err, name);
   else
@@ -2928,7 +2940,7 @@
   sb many;
 
   sb_new (&one);
-  if (!buffer_and_nest (start, end, &one, get_line_sb))
+  if (!buffer_and_nest (start, end, &one, get_non_macro_line_sb))
     {
       as_bad (_("%s without %s"), start, end);
       return;
@@ -3609,12 +3621,14 @@
       break;
 
     case O_register:
+#ifndef TC_GLOBAL_REGISTER_SYMBOL_OK
       if (S_IS_EXTERNAL (symbolP))
 	{
 	  as_bad ("can't equate global symbol `%s' with register name",
 		  S_GET_NAME (symbolP));
 	  return;
 	}
+#endif
       S_SET_SEGMENT (symbolP, reg_section);
       S_SET_VALUE (symbolP, (valueT) exp.X_add_number);
       set_zero_frag (symbolP);
@@ -5780,7 +5794,8 @@
 #endif
 
 static char *
-_find_end_of_line (char *s, int mri_string, int insn ATTRIBUTE_UNUSED)
+_find_end_of_line (char *s, int mri_string, int insn ATTRIBUTE_UNUSED,
+		   int in_macro)
 {
   char inquote = '\0';
   int inescape = 0;
@@ -5791,6 +5806,13 @@
 #ifdef TC_EOL_IN_INSN
 	 || (insn && TC_EOL_IN_INSN (s))
 #endif
+	 /* PR 6926:  When we are parsing the body of a macro the sequence
+	    \@ is special - it refers to the invocation count.  If the @
+	    character happens to be registered as a line-separator character
+	    by the target, then the is_end_of_line[] test above will have
+	    returned true, but we need to ignore the line separating
+	    semantics in this particular case.  */
+	 || (in_macro && inescape && *s == '@')
 	)
     {
       if (mri_string && *s == '\'')
@@ -5818,5 +5840,5 @@
 char *
 find_end_of_line (char *s, int mri_string)
 {
-  return _find_end_of_line (s, mri_string, 0);
+  return _find_end_of_line (s, mri_string, 0, 0);
 }
diff --git a/gas/symbols.c b/gas/symbols.c
index 84f394c..660b2a4 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -137,7 +137,7 @@
 
   preserved_copy_of_name = save_symbol_name (name);
 
-  symbolP = (symbolS *) obstack_alloc (&notes, sizeof (symbolS));
+  symbolP = obstack_alloc (&notes, sizeof (symbolS));
 
   /* symbol must be born in some fixed state.  This seems as good as any.  */
   memset (symbolP, 0, sizeof (symbolS));
@@ -197,7 +197,7 @@
 
   name_copy = save_symbol_name (name);
 
-  ret = (struct local_symbol *) obstack_alloc (&notes, sizeof *ret);
+  ret = obstack_alloc (&notes, sizeof *ret);
   ret->lsy_marker = NULL;
   ret->lsy_name = name_copy;
   ret->lsy_section = section;
@@ -2191,12 +2191,14 @@
 		     _("section symbols are already global"));
       return;
     }
+#ifndef TC_GLOBAL_REGISTER_SYMBOL_OK
   if (S_GET_SEGMENT (s) == reg_section)
     {
       as_bad ("can't make register symbol `%s' global",
 	      S_GET_NAME (s));
       return;
     }
+#endif
   s->bsym->flags |= BSF_GLOBAL;
   s->bsym->flags &= ~(BSF_LOCAL | BSF_WEAK);
 
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index ca84798..da3b928 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,80 @@
+2008-10-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* gas/i386/i386.exp: Run nops-5, nops-5-i686, x86-64-nops-5 and
+	x86-64-nops-5-k8.
+
+	* gas/i386/nops-5.d: New.
+	* gas/i386/nops-5.s: Likewise.
+	* gas/i386/nops-5-i686.d: Likewise.
+	* gas/i386/x86-64-nops-5.d: Likewise.
+	* gas/i386/x86-64-nops-5-k8.d: Likewise.
+
+2008-10-06  Tom Tromey  <tromey@redhat.com>
+
+	* gas/cfi/cfi-alpha-1.d, gas/cfi/cfi-alpha-3.d,
+	gas/cfi/cfi-arm-1.d, gas/cfi/cfi-common-1.d,
+	gas/cfi/cfi-common-2.d, gas/cfi/cfi-common-3.d,
+	gas/cfi/cfi-common-4.d, gas/cfi/cfi-common-5.d,
+	gas/cfi/cfi-common-6.d, gas/cfi/cfi-hppa-1.d,
+	gas/cfi/cfi-i386-2.d, gas/cfi/cfi-i386.d, gas/cfi/cfi-m68k.d,
+	gas/cfi/cfi-mips-1.d, gas/cfi/cfi-ppc-1.d, gas/cfi/cfi-s390-1.d,
+	gas/cfi/cfi-s390x-1.d, gas/cfi/cfi-sh-1.d, gas/cfi/cfi-sparc-1.d,
+	gas/cfi/cfi-sparc64-1.d, gas/cfi/cfi-x86_64.d: Update for readelf
+	change.
+
+2008-10-04  Hans-Peter Nilsson  <hp@axis.com>
+
+	* gas/cris/rd-tls-1.s, gas/cris/rd-tls-1.d, gas/cris/rd-tls-2.s,
+	gas/cris/rd-tls-2.d, gas/cris/tls-err-1.s, gas/cris/tls-err-2.s,
+	gas/cris/tls-err-3.s: New tests.
+
+2008-09-26  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+	* gas/s390/esa-g5.d: Adjust according to the s390-opc changes.
+	* gas/s390/esa-g5.s: Likewise.
+	* gas/s390/esa-z990.d: Likewise.
+	* gas/s390/esa-z990.s: Likewise.
+	* gas/s390/zarch-z900.d: Likewise.
+	* gas/s390/zarch-z900.s: Likewise.
+	* gas/s390/zarch-z990.d: Likewise.
+	* gas/s390/zarch-z990.s: Likewise.
+
+2008-09-15  Alan Modra  <amodra@bigpond.net.au>
+
+	* gas/all/gas.exp: Don't run redef tests on a bunch of targets.
+	* gas/elf/elf.exp: Likewise.
+
+2008-09-14  Arnold Metselaar  <arnold.metselaar@planet.nl>
+
+	* gas/z80/ld-group.s, gas/z80/ld-group.d: New test.
+	* gas/z80/block.s, gas/z80/block.d: New test
+	* gas/z80/arith.s, gas/z80/arith.d: New test
+	* gas/z80/rotate.s, gas/z80/rotate.d: New test
+	* gas/z80/bit.s, gas/z80/bit.d: New test
+	* gas/z80/branch.s, gas/z80/branch.d: New test
+	* gas/z80/inout.s, gas/z80/inout.d: New test
+	* gas/z80/misc.s, gas/z80/misc.d: New test
+	* gas/z80/z80.exp: Run them.
+
+2008-09-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* gas/i386/sse2avx.s: Remove pclmulXXX tests.  Add tests for
+	Intel syntax.
+	* gas/i386/x86-64-sse2avx.s: Likewise.
+
+	* gas/i386/sse2avx.d: Updated.
+	* gas/i386/x86-64-sse2avx.d: Likewise. 
+
+2008-09-09  Peter Bergner  <bergner@vnet.ibm.com>
+
+	* gas/ppc/common.s: New test.
+	* gas/ppc/common.d: Likewise.
+	* gas/ppc/power4_32.s: Likewise.
+	* gas/ppc/power4_32.d: Likewise.
+	* gas/ppc/power6.s: Add attn, mtcr, mtcrf, mfcr, dcbz.
+	* gas/ppc/power6.d: Likewise.
+	* gas/ppc/ppc.exp: Run power4_32 test.
+
 2008-09-06  Richard Sandiford  <rdsandiford@googlemail.com>
 
 	* gas/mips/cfi-n64-1.s, gas/mips/cfi-n64-1.d: New test.
diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp
index f6e01f0..87908fb 100644
--- a/gas/testsuite/gas/all/gas.exp
+++ b/gas/testsuite/gas/all/gas.exp
@@ -81,30 +81,39 @@
 }
 
 # .set works differently on some targets.
+# most of the tests won't work on targets that set linkrelax.
+# 4 octet bytes confuse address matching on ti targets.
+# pdp11 gets unexpected reloc types.
 case $target_triplet in {
     { alpha*-*-* } { }
+    { cr16*-*-* } { }
+    { crx*-*-* } { }
+    { h8300-*-* } { }
     { mips*-*-* } { }
-    { *c54x*-*-* } { }
+    { mn10200-*-* } { }
+    { mn10300-*-* } { }
+    { pdp11-*-* } { }
+    { tic30*-*-* } { }
+    { tic4x*-*-* } { }
+    { tic54x*-*-* } { }
+    { xtensa*-*-* } { }
     { z80-*-* } { }
     default {
-	setup_xfail "*c30*-*-*" "*c4x*-*-*" "pdp11-*-*" "xtensa*-*-*"
 	run_dump_test redef
 	# The next two tests can fail if the target does not convert fixups
 	# against ordinary symbols into relocations against section symbols.
 	# This is usually revealed by the error message:
 	#  symbol `sym' required but not present
-	setup_xfail "*c30*-*-*" "*c4x*-*-*" "*arm*-*-*aout*" "*arm*-*-*coff" \
-	    "*arm*-*-pe" "crx*-*-*" "h8300*-*-*" "m68hc*-*-*" "maxq-*-*" \
-	    "mn10300-*-*" "pdp11-*-*" "vax*-*-*" "z8k-*-*" "cr16-*-*"
+	setup_xfail "*arm*-*-*aout*" "*arm*-*-*coff" \
+	    "*arm*-*-pe" "m68hc*-*-*" "maxq-*-*" \
+	    "vax*-*-*" "z8k-*-*"
 	run_dump_test redef2
 	setup_xfail "*-*-aix*" "*-*-coff" "*-*-cygwin" "*-*-mingw*" "*-*-pe*" \
-	    "bfin-*-*" "*c4x*-*-*" "crx*-*-*" "h8300*-*-*" "hppa*-*-hpux*" \
-	    "m68hc*-*-*" "maxq-*-*" "mn10300-*-*" "or32-*-*" "pdp11-*-*" \
-	    "vax*-*-*" "z8k-*-*" "cr16-*-*"
+	    "bfin-*-*" "hppa*-*-hpux*" \
+	    "m68hc*-*-*" "maxq-*-*" "or32-*-*" \
+	    "vax*-*-*" "z8k-*-*"
 	run_dump_test redef3
-	setup_xfail "*c4x*-*-*"
 	gas_test_error "redef4.s" "" ".set for symbol already used as label"
-	setup_xfail "*c4x*-*-*"
 	gas_test_error "redef5.s" "" ".set for symbol already defined through .comm"
     }
 }
diff --git a/gas/testsuite/gas/cfi/cfi-alpha-1.d b/gas/testsuite/gas/cfi/cfi-alpha-1.d
index 5703c9c..c132f89 100644
--- a/gas/testsuite/gas/cfi/cfi-alpha-1.d
+++ b/gas/testsuite/gas/cfi/cfi-alpha-1.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on alpha
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-alpha-3.d b/gas/testsuite/gas/cfi/cfi-alpha-3.d
index 61ab78b..3c84ce7 100644
--- a/gas/testsuite/gas/cfi/cfi-alpha-3.d
+++ b/gas/testsuite/gas/cfi/cfi-alpha-3.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on alpha, 3
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-arm-1.d b/gas/testsuite/gas/cfi/cfi-arm-1.d
index 8474e20..e3b534c 100644
--- a/gas/testsuite/gas/cfi/cfi-arm-1.d
+++ b/gas/testsuite/gas/cfi/cfi-arm-1.d
@@ -1,7 +1,7 @@
 #readelf: -wf
 #name: CFI on ARM
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-1.d b/gas/testsuite/gas/cfi/cfi-common-1.d
index 32eaf4b..01303d3 100644
--- a/gas/testsuite/gas/cfi/cfi-common-1.d
+++ b/gas/testsuite/gas/cfi/cfi-common-1.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 1
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-2.d b/gas/testsuite/gas/cfi/cfi-common-2.d
index e929f87..c702fb3 100644
--- a/gas/testsuite/gas/cfi/cfi-common-2.d
+++ b/gas/testsuite/gas/cfi/cfi-common-2.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 2
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-3.d b/gas/testsuite/gas/cfi/cfi-common-3.d
index 70055aa..fb7495b 100644
--- a/gas/testsuite/gas/cfi/cfi-common-3.d
+++ b/gas/testsuite/gas/cfi/cfi-common-3.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 3
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-4.d b/gas/testsuite/gas/cfi/cfi-common-4.d
index 9d65270..c69224e 100644
--- a/gas/testsuite/gas/cfi/cfi-common-4.d
+++ b/gas/testsuite/gas/cfi/cfi-common-4.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 4
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-5.d b/gas/testsuite/gas/cfi/cfi-common-5.d
index ba21e2f..81fc212 100644
--- a/gas/testsuite/gas/cfi/cfi-common-5.d
+++ b/gas/testsuite/gas/cfi/cfi-common-5.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 5
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-common-6.d b/gas/testsuite/gas/cfi/cfi-common-6.d
index 3ae356e..35f221e 100644
--- a/gas/testsuite/gas/cfi/cfi-common-6.d
+++ b/gas/testsuite/gas/cfi/cfi-common-6.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI common 6
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000018 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-hppa-1.d b/gas/testsuite/gas/cfi/cfi-hppa-1.d
index be8bf39..cbb0767 100644
--- a/gas/testsuite/gas/cfi/cfi-hppa-1.d
+++ b/gas/testsuite/gas/cfi/cfi-hppa-1.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on hppa
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-i386-2.d b/gas/testsuite/gas/cfi/cfi-i386-2.d
index a42e088..339b47b 100644
--- a/gas/testsuite/gas/cfi/cfi-i386-2.d
+++ b/gas/testsuite/gas/cfi/cfi-i386-2.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on i386, 2
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-i386.d b/gas/testsuite/gas/cfi/cfi-i386.d
index ef477d3..77918ba 100644
--- a/gas/testsuite/gas/cfi/cfi-i386.d
+++ b/gas/testsuite/gas/cfi/cfi-i386.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on i386
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-m68k.d b/gas/testsuite/gas/cfi/cfi-m68k.d
index e6b4ec8..4bced7a 100644
--- a/gas/testsuite/gas/cfi/cfi-m68k.d
+++ b/gas/testsuite/gas/cfi/cfi-m68k.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on m68k
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-mips-1.d b/gas/testsuite/gas/cfi/cfi-mips-1.d
index 22d74f6..bd37752 100644
--- a/gas/testsuite/gas/cfi/cfi-mips-1.d
+++ b/gas/testsuite/gas/cfi/cfi-mips-1.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on mips, 1
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-ppc-1.d b/gas/testsuite/gas/cfi/cfi-ppc-1.d
index cb1f55e..4fa4131 100644
--- a/gas/testsuite/gas/cfi/cfi-ppc-1.d
+++ b/gas/testsuite/gas/cfi/cfi-ppc-1.d
@@ -2,7 +2,7 @@
 #name: CFI on ppc
 #as: -a32
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-s390-1.d b/gas/testsuite/gas/cfi/cfi-s390-1.d
index 5cf3694..4ba11d4 100644
--- a/gas/testsuite/gas/cfi/cfi-s390-1.d
+++ b/gas/testsuite/gas/cfi/cfi-s390-1.d
@@ -2,7 +2,7 @@
 #name: CFI on s390
 #as: -m31 -march=g5
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-s390x-1.d b/gas/testsuite/gas/cfi/cfi-s390x-1.d
index c515f38..af076ab 100644
--- a/gas/testsuite/gas/cfi/cfi-s390x-1.d
+++ b/gas/testsuite/gas/cfi/cfi-s390x-1.d
@@ -2,7 +2,7 @@
 #name: CFI on s390x
 #as: -m64 -march=z900
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-sh-1.d b/gas/testsuite/gas/cfi/cfi-sh-1.d
index 8f22243..b2ee634 100644
--- a/gas/testsuite/gas/cfi/cfi-sh-1.d
+++ b/gas/testsuite/gas/cfi/cfi-sh-1.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on SH
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-sparc-1.d b/gas/testsuite/gas/cfi/cfi-sparc-1.d
index fa24c82..b4cd68d 100644
--- a/gas/testsuite/gas/cfi/cfi-sparc-1.d
+++ b/gas/testsuite/gas/cfi/cfi-sparc-1.d
@@ -2,7 +2,7 @@
 #name: CFI on SPARC 32-bit
 #as: -32
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-sparc64-1.d b/gas/testsuite/gas/cfi/cfi-sparc64-1.d
index d126f50..26dbe16 100644
--- a/gas/testsuite/gas/cfi/cfi-sparc64-1.d
+++ b/gas/testsuite/gas/cfi/cfi-sparc64-1.d
@@ -2,7 +2,7 @@
 #name: CFI on SPARC 64-bit
 #as: -64
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cfi/cfi-x86_64.d b/gas/testsuite/gas/cfi/cfi-x86_64.d
index 3fc7d53..36b441c 100644
--- a/gas/testsuite/gas/cfi/cfi-x86_64.d
+++ b/gas/testsuite/gas/cfi/cfi-x86_64.d
@@ -1,6 +1,6 @@
 #readelf: -wf
 #name: CFI on x86-64
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/gas/testsuite/gas/cris/rd-tls-1.d b/gas/testsuite/gas/cris/rd-tls-1.d
new file mode 100644
index 0000000..db2c8f9
--- /dev/null
+++ b/gas/testsuite/gas/cris/rd-tls-1.d
@@ -0,0 +1,28 @@
+#objdump: -dr
+#as: --em=criself
+#name: TLS non-PIC relocs.
+
+.*:     file format .*-cris
+
+Disassembly of section \.text:
+
+0+ <start>:
+[ 	]+0:[ 	]+af1e 0000 0000[ 	]+sub\.d 0 <start>,\$?r1
+[ 	]+2:[ 	]+R_CRIS_32_GD	\.text
+[ 	]+6:[ 	]+2f9e 0000 0000[ 	]+add\.d 0 <start>,\$?r9
+[ 	]+8:[ 	]+R_CRIS_32_GD	extsym2
+[ 	]+c:[ 	]+6f3d 0000 0000 6aaa[ 	]+move\.d \[\$?r3\+0 <start>\],\$?r10
+[ 	]+e:[ 	]+R_CRIS_32_TPREL	extsym
+[ 	]+14:[ 	]+5fae 0000[ 	]+move\.w 0x0,\$?r10
+[ 	]+16:[ 	]+R_CRIS_16_TPREL	extsym14\+0x4d
+[ 	]+18:[ 	]+af9e 0000 0000[ 	]+sub\.d 0 <start>,\$?r9
+[ 	]+1a:[ 	]+R_CRIS_32_GD	extsym4\+0x2a
+[ 	]+1e:[ 	]+af3e 0000 0000[ 	]+sub\.d 0 <start>,\$?r3
+[ 	]+20:[ 	]+R_CRIS_32_GD	extsym4\+0xffffffa0
+[ 	]+24:[ 	]+6f3d 0000 0000 67de[ 	]+move\.d \[\$?r7=\$?r3\+0 <start>\],\$?r13
+[ 	]+26:[ 	]+R_CRIS_32_GD	extsym10\+0xfffffeb6
+[ 	]+2c:[ 	]+5fbd 0000 699a[ 	]+move\.d \[\$?r11\+0\],\$?r9
+[ 	]+2e:[ 	]+R_CRIS_16_TPREL	extsym14\+0xffffff00
+[ 	]+32:[ 	]+6fad 0000 0000 287a[ 	]+add\.d \[\$?r10\+0 <start>\],\$?r7,\$?r8
+[ 	]+34:[ 	]+R_CRIS_32_TPREL	extsym3\+0x38
+[ 	]+\.\.\.
diff --git a/gas/testsuite/gas/cris/rd-tls-1.s b/gas/testsuite/gas/cris/rd-tls-1.s
new file mode 100644
index 0000000..05bbefa
--- /dev/null
+++ b/gas/testsuite/gas/cris/rd-tls-1.s
@@ -0,0 +1,16 @@
+; Check that non-PIC TLS operands get their right relocation type.
+; First some expected uses, similar to what GCC will emit.
+	.text
+	.syntax no_register_prefix
+start:
+	sub.d .:GD,r1
+	add.d extsym2:GD,r9
+	move.d [r3+extsym:TPOFF],r10
+	move.w extsym14:TPOFF16+77,r10
+
+; Other for GAS valid operands (some with questionable PIC semantics).
+	sub.d extsym4:GD+42,r9
+	sub.d extsym4:GD-96,r3
+	move.d [r7=r3+extsym10:GD-330],r13
+	move.d [r11+extsym14:TPOFF16-256],r9
+	add.d [r10+extsym3:TPOFF+56],r7,r8
diff --git a/gas/testsuite/gas/cris/rd-tls-2.d b/gas/testsuite/gas/cris/rd-tls-2.d
new file mode 100644
index 0000000..a5f8647
--- /dev/null
+++ b/gas/testsuite/gas/cris/rd-tls-2.d
@@ -0,0 +1,48 @@
+#objdump: -dr
+#as: --em=criself --pic
+#name: TLS PIC relocs.
+
+.*:     file format .*-cris
+
+Disassembly of section \.text:
+
+0+ <start>:
+[ 	]+0:	6f3d 0000 0000 6aaa[ 	]+move\.d \[\$?r3\+0 <start>\],\$?r10
+[ 	]+2: R_CRIS_32_GOT_TPREL	extsym
+[ 	]+8:	6f8e 0000 0000[ 	]+move\.d 0 <start>,\$?r8
+[ 	]+a: R_CRIS_32_GOT_TPREL	extsym5
+[ 	]+e:	5f8e 0000[ 	]+move\.w 0x0,\$?r8
+[ 	]+10: R_CRIS_16_GOT_TPREL	extsym9
+[ 	]+12:	6f3d 0000 0000 6aaa[ 	]+move\.d \[\$?r3\+0 <start>\],\$?r10
+[ 	]+14: R_CRIS_32_GOT_GD	extsym
+[ 	]+1a:	5fdd 0000 6aaa[ 	]+move\.d \[\$?r13\+0\],\$?r10
+[ 	]+1c: R_CRIS_16_GOT_TPREL	extsym13
+[ 	]+20:	5fae 0000[ 	]+move\.w 0x0,\$?r10
+[ 	]+22: R_CRIS_16_GOT_GD	extsym14
+[ 	]+24:	af9e 0000 0000[ 	]+sub\.d 0 <start>,\$?r9
+[ 	]+26: R_CRIS_32_DTPREL	extsym4\+0x16
+[ 	]+2a:	9f3e 0000[ 	]+sub\.w 0x0,\$?r3
+[ 	]+2c: R_CRIS_16_DTPREL	extsym4\+0xffffffaa
+[ 	]+2e:	6f3d 0000 0000 aa4a[ 	]+sub\.d \[\$?r3\+0 <start>\],\$?r4,\$?r10
+[ 	]+30: R_CRIS_32_GOT_TPREL	extsym3
+[ 	]+36:	af9e 0000 0000[ 	]+sub\.d 0 <start>,\$?r9
+[ 	]+38: R_CRIS_32_GOT_GD	extsym4\+0x2a
+[ 	]+3c:	af3e 0000 0000[ 	]+sub\.d 0 <start>,\$?r3
+[ 	]+3e: R_CRIS_32_GOT_TPREL	extsym4\+0xffffffa0
+[ 	]+42:	6fad 0000 0000 287a[ 	]+add\.d \[\$?r10\+0 <start>\],\$?r7,\$?r8
+[ 	]+44: R_CRIS_32_GOT_TPREL	extsym3\+0x38
+[ 	]+4a:	6f5d 0000 0000 611a[ 	]+move\.d \[\$?r5\+0 <start>\],\$?r1
+[ 	]+4c: R_CRIS_32_GOT_TPREL	extsym6\+0xa
+[ 	]+52:	6fad 0000 0000 284a[ 	]+add\.d \[\$?r10\+0 <start>\],\$?r4,\$?r8
+[ 	]+54: R_CRIS_32_GOT_TPREL	extsym3\+0xfffffdd0
+[ 	]+5a:	6f5d 0000 0000 6cca[ 	]+move\.d \[\$?r5\+0 <start>\],\$?r12
+[ 	]+5c: R_CRIS_32_GOT_TPREL	extsym6\+0xffffff92
+[ 	]+62:	6f5d 0000 0000 69ce[ 	]+move\.d \[\$?r9=\$?r5\+0 <start>\],\$?r12
+[ 	]+64: R_CRIS_32_GOT_TPREL	extsym6\+0xffffff24
+[ 	]+6a:	5fcd 0000 a89a[ 	]+sub\.d \[\$?r12\+0\],\$?r9,\$?r8
+[ 	]+6c: R_CRIS_16_GOT_TPREL	extsym3\+0xffffff64
+[ 	]+70:	5fbd 0000 699a[ 	]+move\.d \[\$?r11\+0\],\$?r9
+[ 	]+72: R_CRIS_16_GOT_GD	extsym14\+0xffffff00
+[ 	]+76:	6fad 0000 0000 287a[ 	]+add\.d \[\$?r10\+0 <start>\],\$?r7,\$?r8
+[ 	]+78: R_CRIS_32_GOT_GD	extsym3\+0x38
+[ 	]+\.\.\.
diff --git a/gas/testsuite/gas/cris/rd-tls-2.s b/gas/testsuite/gas/cris/rd-tls-2.s
new file mode 100644
index 0000000..b1bc557
--- /dev/null
+++ b/gas/testsuite/gas/cris/rd-tls-2.s
@@ -0,0 +1,26 @@
+; Check that TLS PIC operands get their right relocation type.
+; First some expected uses, similar to what GCC will emit.
+	.text
+	.syntax no_register_prefix
+start:
+	move.d [r3+extsym:TPOFFGOT],r10
+	move.d extsym5:TPOFFGOT,r8
+	move.w extsym9:TPOFFGOT16,r8
+	move.d [r3+extsym:GDGOTREL],r10
+	move.d [r13+extsym13:TPOFFGOT16],r10
+	move.w extsym14:GDGOTREL16,r10
+	sub.d extsym4:DTPREL+22,r9
+	sub.w extsym4:DTPREL16-86,r3
+
+; Other for GAS valid operands (some with questionable PIC semantics).
+	sub.d [r3+extsym3:TPOFFGOT],r4,r10
+	sub.d extsym4:GDGOTREL+42,r9
+	sub.d extsym4:TPOFFGOT-96,r3
+	add.d [r10+extsym3:TPOFFGOT+56],r7,r8
+	move.d [r5+extsym6:TPOFFGOT+10],r1
+	add.d [r10+extsym3:TPOFFGOT-560],r4,r8
+	move.d [r5+extsym6:TPOFFGOT-110],r12
+	move.d [r9=r5+extsym6:TPOFFGOT-220],r12
+	sub.d [r12+extsym3:TPOFFGOT16-156],r9,r8
+	move.d [r11+extsym14:GDGOTREL16-256],r9
+	add.d [r10+extsym3:GDGOTREL+56],r7,r8
diff --git a/gas/testsuite/gas/cris/tls-err-1.s b/gas/testsuite/gas/cris/tls-err-1.s
new file mode 100644
index 0000000..5a6e9cd
--- /dev/null
+++ b/gas/testsuite/gas/cris/tls-err-1.s
@@ -0,0 +1,16 @@
+; Like pic-err-1.s but for non-pic TLS suffixes.
+
+; { dg-do assemble }
+; { dg-options "--no-underscore --em=criself" }
+
+ .syntax no_register_prefix
+ .text
+start:
+ move.b extsym:TPOFF16,r4	; { dg-error "TLS relocation size does not match" "" { xfail *-*-* } }
+ move.b extsym12:TPOFF,r5	; { dg-error "TLS relocation size does not match" }
+ move.w extsym2:TPOFF,r5	; { dg-error "TLS relocation size does not match" }
+ move.d extsym3:TPOFF16,r6	; { dg-error "TLS relocation size does not match" }
+ move extsym4:TPOFF16,srp	; { dg-error "TLS relocation size does not match" }
+ move.b extsym15:GD,r7		; { dg-error "TLS relocation size does not match" }
+ move.w extsym6:GD,r5		; { dg-error "TLS relocation size does not match" }
+ move extsym8:TPOFF16,srp	; { dg-error "TLS relocation size does not match" }
diff --git a/gas/testsuite/gas/cris/tls-err-2.s b/gas/testsuite/gas/cris/tls-err-2.s
new file mode 100644
index 0000000..d320651
--- /dev/null
+++ b/gas/testsuite/gas/cris/tls-err-2.s
@@ -0,0 +1,19 @@
+; Like tls-err-1.s but for PIC TLS suffixes.
+
+; { dg-do assemble }
+; { dg-options "--pic --no-underscore --em=criself" }
+
+ .syntax no_register_prefix
+ .text
+start:
+ move.b extsym:GDGOTREL16,r4	; { dg-error "PIC relocation size does not match" "" { xfail *-*-* } }
+ move.b extsym12:GDGOTREL,r5	; { dg-error "PIC relocation size does not match" }
+ move.w extsym2:GDGOTREL,r5	; { dg-error "PIC relocation size does not match" }
+ move.d extsym3:GDGOTREL16,r6	; { dg-error "PIC relocation size does not match" }
+ move extsym4:GDGOTREL16,srp	; { dg-error "PIC relocation size does not match" }
+ move.b extsym5:TPOFFGOT16,r4	; { dg-error "PIC relocation size does not match" "" { xfail *-*-* } }
+ move.b extsym15:TPOFFGOT,r7	; { dg-error "PIC relocation size does not match" }
+ move.w extsym6:DTPREL,r5	; { dg-error "PIC relocation size does not match" }
+ move.d extsym7:DTPREL16,r6	; { dg-error "PIC relocation size does not match" }
+ move.d extsym7:TPOFFGOT16,r6	; { dg-error "PIC relocation size does not match" }
+ move extsym8:TPOFFGOT16,srp	; { dg-error "PIC relocation size does not match" }
diff --git a/gas/testsuite/gas/cris/tls-err-3.s b/gas/testsuite/gas/cris/tls-err-3.s
new file mode 100644
index 0000000..cbc2b5d
--- /dev/null
+++ b/gas/testsuite/gas/cris/tls-err-3.s
@@ -0,0 +1,14 @@
+; Check that TLS PIC suffixes aren't accepted when non-PIC.
+
+; { dg-do assemble }
+; { dg-options "--no-underscore --em=criself" }
+
+ .syntax no_register_prefix
+ .text
+start:
+ move.d extsym2:GDGOTREL,r5	; { dg-error "operand" }
+ move.w extsym2:GDGOTREL16,r5	; { dg-error "operand" }
+ move.d extsym1:DTPREL,r4	; { dg-error "operand" }
+ move.w extsym3:DTPREL16,r6	; { dg-error "operand" }
+ move.w extsym13:TPOFFGOT16,r10	; { dg-error "operand" }
+ move extsym4:TPOFFGOT,srp	; { dg-error "operand" }
diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp
index a1132d3..5506903 100644
--- a/gas/testsuite/gas/elf/elf.exp
+++ b/gas/testsuite/gas/elf/elf.exp
@@ -88,16 +88,20 @@
     run_dump_test "group1b" 
     case $target_triplet in {
 	{ alpha*-*-* } { }
+	{ cr16*-*-* } { }
+	{ crx*-*-* } { }
+	{ h8300-*-* } { }
 	{ hppa*-*-* } { }
 	{ iq2000*-*-* } { }
 	{ mips*-*-* } { }
+	{ mn10200-*-* } { }
+	{ mn10300-*-* } { }
 	{ *c54x*-*-* } { }
 	default {
 	    # The next test can fail if the target does not convert fixups
 	    # against ordinary symbols into relocations against section symbols.
 	    # This is usually revealed by the error message:
 	    #  symbol `sym' required but not present
-	    setup_xfail "cr16-*-*" "h8300-*-*" "mn10300-*-*"
 	    run_dump_test redef
 	    run_dump_test equ-reloc
 	}
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index c8cef20..8b1b55c 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -79,6 +79,8 @@
     run_dump_test "nops-4"
     run_dump_test "nops-4-i386"
     run_dump_test "nops-4-i686"
+    run_dump_test "nops-5"
+    run_dump_test "nops-5-i686"
     run_dump_test "addr16"
     run_dump_test "addr32"
     run_dump_test "sse4_1"
@@ -242,6 +244,8 @@
     run_dump_test "x86-64-nops-4"
     run_dump_test "x86-64-nops-4-core2"
     run_dump_test "x86-64-nops-4-k8"
+    run_dump_test "x86-64-nops-5"
+    run_dump_test "x86-64-nops-5-k8"
     run_dump_test "x86-64-sse4_1"
     run_dump_test "x86-64-sse4_1-intel"
     run_dump_test "x86-64-sse4_2"
diff --git a/gas/testsuite/gas/i386/nops-5-i686.d b/gas/testsuite/gas/i386/nops-5-i686.d
new file mode 100644
index 0000000..2452cd4
--- /dev/null
+++ b/gas/testsuite/gas/i386/nops-5-i686.d
@@ -0,0 +1,73 @@
+#as: -march=i686
+#source: nops-5.s
+#objdump: -drw
+#name: i386 -march=i686 nops 5
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+ <i386>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+10 <i486>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+20 <i586>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+30 <i686>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+40 <pentium4>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+50 <nocona>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+60 <core>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+70 <core2>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+80 <k6>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+90 <athlon>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+
+0+a0 <k8>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+
+0+b0 <generic32>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+c0 <generic64>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+d0 <amdfam10>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+#pass
diff --git a/gas/testsuite/gas/i386/nops-5.d b/gas/testsuite/gas/i386/nops-5.d
new file mode 100644
index 0000000..49c48b7
--- /dev/null
+++ b/gas/testsuite/gas/i386/nops-5.d
@@ -0,0 +1,71 @@
+#objdump: -drw
+#name: i386 nops 5
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+ <i386>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+10 <i486>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+20 <i586>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+30 <i686>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+40 <pentium4>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+50 <nocona>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+60 <core>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+70 <core2>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+80 <k6>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+90 <athlon>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+
+0+a0 <k8>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+
+0+b0 <generic32>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%edi,%eiz,1\),%edi
+
+0+c0 <generic64>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
+
+0+d0 <amdfam10>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
+#pass
diff --git a/gas/testsuite/gas/i386/nops-5.s b/gas/testsuite/gas/i386/nops-5.s
new file mode 100644
index 0000000..4536c98
--- /dev/null
+++ b/gas/testsuite/gas/i386/nops-5.s
@@ -0,0 +1,70 @@
+	.text
+	.arch i386
+i386:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch i486
+i486:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch i586
+i586:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch i686
+i686:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch pentium4
+pentium4:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch nocona
+nocona:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch core
+core:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch core2
+core2:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch k6
+k6:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch athlon
+athlon:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch k8
+k8:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch generic32
+generic32:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch generic64
+generic64:
+	movsbl %al,%esi
+	.p2align 4
+
+	.arch amdfam10
+amdfam10:
+	movsbl %al,%esi
+	.p2align 4
diff --git a/gas/testsuite/gas/i386/sse2avx.d b/gas/testsuite/gas/i386/sse2avx.d
index f573f57..5bc4f3c 100644
--- a/gas/testsuite/gas/i386/sse2avx.d
+++ b/gas/testsuite/gas/i386/sse2avx.d
@@ -150,14 +150,574 @@
 [ 	]*[a-f0-9]+:	c5 c9 e0 31          	vpavgb \(%ecx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 e3 f4          	vpavgw %xmm4,%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 e3 31          	vpavgw \(%ecx\),%xmm6,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 00    	pclmullqlqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 00    	pclmullqlqdq \(%ecx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 01    	pclmulhqlqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 01    	pclmulhqlqdq \(%ecx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 10    	pclmullqhqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 10    	pclmullqhqdq \(%ecx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 11    	pclmulhqhqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 11    	pclmulhqhqdq \(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 74 f4          	vpcmpeqb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 74 31          	vpcmpeqb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 75 f4          	vpcmpeqw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 75 31          	vpcmpeqw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 76 f4          	vpcmpeqd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 76 31          	vpcmpeqd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 29 f4       	vpcmpeqq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 29 31       	vpcmpeqq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 64 f4          	vpcmpgtb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 64 31          	vpcmpgtb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 65 f4          	vpcmpgtw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 65 31          	vpcmpgtw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 66 f4          	vpcmpgtd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 66 31          	vpcmpgtd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 37 f4       	vpcmpgtq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 37 31       	vpcmpgtq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 01 f4       	vphaddw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 01 31       	vphaddw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 02 f4       	vphaddd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 02 31       	vphaddd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 03 f4       	vphaddsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 03 31       	vphaddsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 05 f4       	vphsubw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 05 31       	vphsubw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 06 f4       	vphsubd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 06 31       	vphsubd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 07 f4       	vphsubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 07 31       	vphsubsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f5 f4          	vpmaddwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f5 31          	vpmaddwd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 04 f4       	vpmaddubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 04 31       	vpmaddubsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3c f4       	vpmaxsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3c 31       	vpmaxsb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ee f4          	vpmaxsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ee 31          	vpmaxsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3d f4       	vpmaxsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3d 31       	vpmaxsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 de f4          	vpmaxub %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 de 31          	vpmaxub \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3e f4       	vpmaxuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3e 31       	vpmaxuw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3f f4       	vpmaxud %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3f 31       	vpmaxud \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 38 f4       	vpminsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 38 31       	vpminsb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ea f4          	vpminsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ea 31          	vpminsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 39 f4       	vpminsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 39 31       	vpminsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 da f4          	vpminub %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 da 31          	vpminub \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3a f4       	vpminuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3a 31       	vpminuw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3b f4       	vpminud %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3b 31       	vpminud \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e4 f4          	vpmulhuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e4 31          	vpmulhuw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0b f4       	vpmulhrsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0b 31       	vpmulhrsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e5 f4          	vpmulhw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e5 31          	vpmulhw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d5 f4          	vpmullw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d5 31          	vpmullw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 40 f4       	vpmulld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 40 31       	vpmulld \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f4 f4          	vpmuludq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f4 31          	vpmuludq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 28 f4       	vpmuldq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 28 31       	vpmuldq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 eb f4          	vpor   %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 eb 31          	vpor   \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f6 f4          	vpsadbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f6 31          	vpsadbw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 00 f4       	vpshufb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 00 31       	vpshufb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 08 f4       	vpsignb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 08 31       	vpsignb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 09 f4       	vpsignw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 09 31       	vpsignw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0a f4       	vpsignd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0a 31       	vpsignd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f1 f4          	vpsllw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f1 31          	vpsllw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f2 f4          	vpslld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f2 31          	vpslld \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f3 f4          	vpsllq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f3 31          	vpsllq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e1 f4          	vpsraw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e1 31          	vpsraw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e2 f4          	vpsrad %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e2 31          	vpsrad \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d1 f4          	vpsrlw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d1 31          	vpsrlw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d2 f4          	vpsrld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d2 31          	vpsrld \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d3 f4          	vpsrlq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d3 31          	vpsrlq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f8 f4          	vpsubb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f8 31          	vpsubb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f9 f4          	vpsubw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f9 31          	vpsubw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fa f4          	vpsubd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fa 31          	vpsubd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fb f4          	vpsubq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fb 31          	vpsubq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e8 f4          	vpsubsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e8 31          	vpsubsb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e9 f4          	vpsubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e9 31          	vpsubsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d8 f4          	vpsubusb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d8 31          	vpsubusb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d9 f4          	vpsubusw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d9 31          	vpsubusw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 68 f4          	vpunpckhbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 68 31          	vpunpckhbw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 69 f4          	vpunpckhwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 69 31          	vpunpckhwd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6a f4          	vpunpckhdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6a 31          	vpunpckhdq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6d f4          	vpunpckhqdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6d 31          	vpunpckhqdq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 60 f4          	vpunpcklbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 60 31          	vpunpcklbw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 61 f4          	vpunpcklwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 61 31          	vpunpcklwd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 62 f4          	vpunpckldq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 62 31          	vpunpckldq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6c f4          	vpunpcklqdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6c 31          	vpunpcklqdq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ef f4          	vpxor  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ef 31          	vpxor  \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5c f4          	vsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5c 31          	vsubpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5c f4          	vsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5c 31          	vsubps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 15 f4          	vunpckhpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 15 31          	vunpckhpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 15 f4          	vunpckhps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 15 31          	vunpckhps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 14 f4          	vunpcklpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 14 31          	vunpcklpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 14 f4          	vunpcklps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 14 31          	vunpcklps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 57 f4          	vxorpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 57 31          	vxorpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 57 f4          	vxorps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 57 31          	vxorps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dc f4       	vaesenc %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dc 31       	vaesenc \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dd f4       	vaesenclast %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dd 31       	vaesenclast \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 de f4       	vaesdec %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 de 31       	vaesdec \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 df f4       	vaesdeclast %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 df 31       	vaesdeclast \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 00       	vcmpeqpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 00       	vcmpeqpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 00       	vcmpeqps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 00       	vcmpeqps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 01       	vcmpltpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 01       	vcmpltpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 01       	vcmpltps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 01       	vcmpltps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 02       	vcmplepd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 02       	vcmplepd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 02       	vcmpleps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 02       	vcmpleps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 03       	vcmpunordpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 03       	vcmpunordpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 03       	vcmpunordps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 03       	vcmpunordps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 04       	vcmpneqpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 04       	vcmpneqpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 04       	vcmpneqps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 04       	vcmpneqps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 05       	vcmpnltpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 05       	vcmpnltpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 05       	vcmpnltps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 05       	vcmpnltps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 06       	vcmpnlepd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 06       	vcmpnlepd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 06       	vcmpnleps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 06       	vcmpnleps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 07       	vcmpordpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 07       	vcmpordpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 07       	vcmpordps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 07       	vcmpordps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 df f4 64    	vaeskeygenassist \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 df 31 64    	vaeskeygenassist \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 61 f4 64    	vpcmpestri \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 61 31 64    	vpcmpestri \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 60 f4 64    	vpcmpestrm \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 60 31 64    	vpcmpestrm \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 63 f4 64    	vpcmpistri \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 63 31 64    	vpcmpistri \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 62 f4 64    	vpcmpistrm \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 62 31 64    	vpcmpistrm \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 70 f4 64       	vpshufd \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 70 31 64       	vpshufd \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 70 f4 64       	vpshufhw \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 70 31 64       	vpshufhw \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 70 f4 64       	vpshuflw \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 70 31 64       	vpshuflw \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 09 f4 64    	vroundpd \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 09 31 64    	vroundpd \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 08 f4 64    	vroundps \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 08 31 64    	vroundps \$0x64,\(%ecx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0d f4 64    	vblendpd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0d 31 64    	vblendpd \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0c f4 64    	vblendps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0c 31 64    	vblendps \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 64       	vcmppd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 64       	vcmppd \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 64       	vcmpps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 64       	vcmpps \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 41 f4 64    	vdppd  \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 41 31 64    	vdppd  \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 40 f4 64    	vdpps  \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 40 31 64    	vdpps  \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 42 f4 64    	vmpsadbw \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 42 31 64    	vmpsadbw \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0f f4 64    	vpalignr \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0f 31 64    	vpalignr \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0e f4 64    	vpblendw \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0e 31 64    	vpblendw \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c6 f4 64       	vshufpd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c6 31 64       	vshufpd \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c6 f4 64       	vshufps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c6 31 64       	vshufps \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b f4 00    	vblendvpd %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b 31 00    	vblendvpd %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b f4 00    	vblendvpd %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b 31 00    	vblendvpd %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a f4 00    	vblendvps %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a 31 00    	vblendvps %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a f4 00    	vblendvps %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a 31 00    	vblendvps %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c f4 00    	vpblendvb %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c 31 00    	vpblendvb %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c f4 00    	vpblendvb %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c 31 00    	vpblendvb %xmm0,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2f f4          	vcomisd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2f 21          	vcomisd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa e6 f4          	vcvtdq2pd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa e6 21          	vcvtdq2pd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 5a f4          	vcvtps2pd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 5a 21          	vcvtps2pd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 12 f4          	vmovddup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 12 21          	vmovddup \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 20 f4       	vpmovsxbw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 20 21       	vpmovsxbw \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 23 f4       	vpmovsxwd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 23 21       	vpmovsxwd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 25 f4       	vpmovsxdq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 25 21       	vpmovsxdq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 30 f4       	vpmovzxbw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 30 21       	vpmovzxbw \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 33 f4       	vpmovzxwd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 33 21       	vpmovzxwd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 35 f4       	vpmovzxdq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 35 21       	vpmovzxdq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 2e f4          	vucomisd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2e 21          	vucomisd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 10 21          	vmovsd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 13 21          	vmovlpd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 13 21          	vmovlps %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 17 21          	vmovhpd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 17 21          	vmovhps %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 fb 11 21          	vmovsd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 d6 21          	vmovq  %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 fa 7e 21          	vmovq  \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 2d cc          	vcvtsd2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2d 09          	vcvtsd2si \(%ecx\),%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2c cc          	vcvttsd2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2c 09          	vcvttsd2si \(%ecx\),%ecx
+[ 	]*[a-f0-9]+:	c5 d9 12 21          	vmovlpd \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d8 12 21          	vmovlps \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 16 21          	vmovhpd \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d8 16 21          	vmovhps \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 64       	vcmpsd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 64       	vcmpsd \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0b f4 64    	vroundsd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0b 31 64    	vroundsd \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 58 f4          	vaddsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 58 31          	vaddsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5a f4          	vcvtsd2ss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5a 31          	vcvtsd2ss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5e f4          	vdivsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5e 31          	vdivsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5f f4          	vmaxsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5f 31          	vmaxsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5d f4          	vminsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5d 31          	vminsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 59 f4          	vmulsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 59 31          	vmulsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 51 f4          	vsqrtsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 51 31          	vsqrtsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5c f4          	vsubsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5c 31          	vsubsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 00       	vcmpeqsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 00       	vcmpeqsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 01       	vcmpltsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 01       	vcmpltsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 02       	vcmplesd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 02       	vcmplesd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 03       	vcmpunordsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 03       	vcmpunordsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 04       	vcmpneqsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 04       	vcmpneqsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 05       	vcmpnltsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 05       	vcmpnltsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 06       	vcmpnlesd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 06       	vcmpnlesd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 07       	vcmpordsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 07       	vcmpordsd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 58 f4          	vaddss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 58 31          	vaddss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5a f4          	vcvtss2sd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5a 31          	vcvtss2sd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5e f4          	vdivss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5e 31          	vdivss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5f f4          	vmaxss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5f 31          	vmaxss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5d f4          	vminss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5d 31          	vminss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 59 f4          	vmulss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 59 31          	vmulss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 53 f4          	vrcpss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 53 31          	vrcpss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 52 f4          	vrsqrtss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 52 31          	vrsqrtss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 51 f4          	vsqrtss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 51 31          	vsqrtss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5c f4          	vsubss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5c 31          	vsubss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 00       	vcmpeqss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 00       	vcmpeqss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 01       	vcmpltss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 01       	vcmpltss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 02       	vcmpless %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 02       	vcmpless \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 03       	vcmpunordss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 03       	vcmpunordss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 04       	vcmpneqss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 04       	vcmpneqss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 05       	vcmpnltss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 05       	vcmpnltss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 06       	vcmpnless %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 06       	vcmpnless \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 07       	vcmpordss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 07       	vcmpordss \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2f f4          	vcomiss %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2f 21          	vcomiss \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 21 f4       	vpmovsxbd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 21 21       	vpmovsxbd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 24 f4       	vpmovsxwq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 24 21       	vpmovsxwq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 31 f4       	vpmovzxbd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 31 21       	vpmovzxbd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 34 f4       	vpmovzxwq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 34 21       	vpmovzxwq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 2e f4          	vucomiss %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2e 21          	vucomiss \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 10 21          	vmovss \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 11 21          	vmovss %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 7e e1          	vmovd  %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f9 7e 21          	vmovd  %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 6e e1          	vmovd  %ecx,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 6e 21          	vmovd  \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 2d cc          	vcvtss2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2d 09          	vcvtss2si \(%ecx\),%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2c cc          	vcvttss2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2c 09          	vcvttss2si \(%ecx\),%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 17 21 64    	vextractps \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c4 e3 79 16 e1 64    	vpextrd \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 16 21 64    	vpextrd \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c4 e3 79 17 e1 64    	vextractps \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 17 21 64    	vextractps \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 db 2a e1          	vcvtsi2sd %ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 db 2a 21          	vcvtsi2sdl \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 da 2a e1          	vcvtsi2ss %ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 da 2a 21          	vcvtsi2ssl \(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 64       	vcmpss \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 64       	vcmpss \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 21 f4 64    	vinsertps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 21 31 64    	vinsertps \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0a f4 64    	vroundss \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0a 31 64    	vroundss \$0x64,\(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 22 f4       	vpmovsxbq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 22 21       	vpmovsxbq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 32 f4       	vpmovzxbq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 32 21       	vpmovzxbq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 15 21 64    	vpextrw \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c4 e3 79 15 21 64    	vpextrw \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 d9 c4 e1 64       	vpinsrw \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 c4 21 64       	vpinsrw \$0x64,\(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 79 14 e1 64    	vpextrb \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 14 21 64    	vpextrb \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c4 e3 59 20 e1 64    	vpinsrb \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 59 20 21 64    	vpinsrb \$0x64,\(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 79 14 21 64    	vpextrb \$0x64,%xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c4 e3 59 20 e1 64    	vpinsrb \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 59 20 21 64    	vpinsrb \$0x64,\(%ecx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 f7 f4          	vmaskmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 7e f4          	vmovq  %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 50 cc          	vmovmskpd %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f8 50 cc          	vmovmskps %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f9 d7 cc          	vpmovmskb %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 c8 12 f4          	vmovhlps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 16 f4          	vmovlhps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 10 f4          	vmovsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 10 f4          	vmovss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 d9 72 f4 64       	vpslld \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 fc 64       	vpslldq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 f4 64       	vpsllq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 f4 64       	vpsllw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 72 e4 64       	vpsrad \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 e4 64       	vpsraw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 72 d4 64       	vpsrld \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 dc 64       	vpsrldq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 d4 64       	vpsrlq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 d4 64       	vpsrlw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f8 ae 11          	vldmxcsr \(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 ae 19          	vstmxcsr \(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 5b f4          	vcvtdq2ps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 5b 21          	vcvtdq2ps \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb e6 f4          	vcvtpd2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb e6 21          	vcvtpd2dqx \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 5a f4          	vcvtpd2ps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 5a 21          	vcvtpd2psx \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 5b f4          	vcvtps2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 5b 21          	vcvtps2dq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 e6 f4          	vcvttpd2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 e6 21          	vcvttpd2dqx \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 5b f4          	vcvttps2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 5b 21          	vcvttps2dq \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 28 f4          	vmovapd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 28 21          	vmovapd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 28 f4          	vmovaps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 28 21          	vmovaps \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 6f f4          	vmovdqa %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 6f 21          	vmovdqa \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 6f f4          	vmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 6f 21          	vmovdqu \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 16 f4          	vmovshdup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 16 21          	vmovshdup \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 12 f4          	vmovsldup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 12 21          	vmovsldup \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 10 f4          	vmovupd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 10 21          	vmovupd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 10 f4          	vmovups %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 10 21          	vmovups \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1c f4       	vpabsb %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1c 21       	vpabsb \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1d f4       	vpabsw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1d 21       	vpabsw \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1e f4       	vpabsd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1e 21       	vpabsd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 41 f4       	vphminposuw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 41 21       	vphminposuw \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 17 f4       	vptest %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 17 21       	vptest \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 53 f4          	vrcpps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 53 21          	vrcpps \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 52 f4          	vrsqrtps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 52 21          	vrsqrtps \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 51 f4          	vsqrtpd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 51 21          	vsqrtpd \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 51 f4          	vsqrtps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 51 21          	vsqrtps \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 db f4       	vaesimc %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 db 21       	vaesimc \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 28 f4          	vmovapd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 29 21          	vmovapd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 28 f4          	vmovaps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 29 21          	vmovaps %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 6f f4          	vmovdqa %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 7f 21          	vmovdqa %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 fa 6f f4          	vmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 7f 21          	vmovdqu %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 10 f4          	vmovupd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 11 21          	vmovupd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 10 f4          	vmovups %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 11 21          	vmovups %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 fb f0 21          	vlddqu \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 2a 21       	vmovntdqa \(%ecx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 e7 21          	vmovntdq %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f9 2b 21          	vmovntpd %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 f8 2b 21          	vmovntps %xmm4,\(%ecx\)
+[ 	]*[a-f0-9]+:	c5 c9 58 f4          	vaddpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 58 31          	vaddpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 58 f4          	vaddps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 58 31          	vaddps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d0 f4          	vaddsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d0 31          	vaddsubpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb d0 f4          	vaddsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb d0 31          	vaddsubps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 55 f4          	vandnpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 55 31          	vandnpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 55 f4          	vandnps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 55 31          	vandnps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 54 f4          	vandpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 54 31          	vandpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 54 f4          	vandps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 54 31          	vandps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5e f4          	vdivpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5e 31          	vdivpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5e f4          	vdivps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5e 31          	vdivps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7c f4          	vhaddpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7c 31          	vhaddpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7c f4          	vhaddps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7c 31          	vhaddps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7d f4          	vhsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7d 31          	vhsubpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7d f4          	vhsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7d 31          	vhsubps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5f f4          	vmaxpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5f 31          	vmaxpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5f f4          	vmaxps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5f 31          	vmaxps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5d f4          	vminpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5d 31          	vminpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5d f4          	vminps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5d 31          	vminps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 59 f4          	vmulpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 59 31          	vmulpd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 59 f4          	vmulps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 59 31          	vmulps \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 56 f4          	vorpd  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 56 31          	vorpd  \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 56 f4          	vorps  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 56 31          	vorps  \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 63 f4          	vpacksswb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 63 31          	vpacksswb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6b f4          	vpackssdw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6b 31          	vpackssdw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 67 f4          	vpackuswb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 67 31          	vpackuswb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 2b f4       	vpackusdw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 2b 31       	vpackusdw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fc f4          	vpaddb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fc 31          	vpaddb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fd f4          	vpaddw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fd 31          	vpaddw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fe f4          	vpaddd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fe 31          	vpaddd \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d4 f4          	vpaddq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d4 31          	vpaddq \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ec f4          	vpaddsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ec 31          	vpaddsb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ed f4          	vpaddsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ed 31          	vpaddsw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dc f4          	vpaddusb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dc 31          	vpaddusb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dd f4          	vpaddusw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dd 31          	vpaddusw \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 db f4          	vpand  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 db 31          	vpand  \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 df f4          	vpandn %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 df 31          	vpandn \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e0 f4          	vpavgb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e0 31          	vpavgb \(%ecx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e3 f4          	vpavgw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e3 31          	vpavgw \(%ecx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 74 f4          	vpcmpeqb %xmm4,%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 74 31          	vpcmpeqb \(%ecx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 75 f4          	vpcmpeqw %xmm4,%xmm6,%xmm6
diff --git a/gas/testsuite/gas/i386/sse2avx.s b/gas/testsuite/gas/i386/sse2avx.s
index 3a48b21..810aaeb 100644
--- a/gas/testsuite/gas/i386/sse2avx.s
+++ b/gas/testsuite/gas/i386/sse2avx.s
@@ -157,14 +157,6 @@
 	pavgb (%ecx),%xmm6
 	pavgw %xmm4,%xmm6
 	pavgw (%ecx),%xmm6
-	pclmullqlqdq %xmm4,%xmm6
-	pclmullqlqdq (%ecx),%xmm6
-	pclmulhqlqdq %xmm4,%xmm6
-	pclmulhqlqdq (%ecx),%xmm6
-	pclmullqhqdq %xmm4,%xmm6
-	pclmullqhqdq (%ecx),%xmm6
-	pclmulhqhqdq %xmm4,%xmm6
-	pclmulhqhqdq (%ecx),%xmm6
 	pcmpeqb %xmm4,%xmm6
 	pcmpeqb (%ecx),%xmm6
 	pcmpeqw %xmm4,%xmm6
@@ -660,3 +652,654 @@
 # Tests for op imm8, xmm, regl
 	pextrw $100,%xmm4,%ecx
 
+
+	.intel_syntax noprefix
+# Tests for op mem64
+	ldmxcsr DWORD PTR [ecx]
+	stmxcsr DWORD PTR [ecx]
+
+# Tests for op xmm/mem128, xmm
+	cvtdq2ps xmm6,xmm4
+	cvtdq2ps xmm4,XMMWORD PTR [ecx]
+	cvtpd2dq xmm6,xmm4
+	cvtpd2dq xmm4,XMMWORD PTR [ecx]
+	cvtpd2ps xmm6,xmm4
+	cvtpd2ps xmm4,XMMWORD PTR [ecx]
+	cvtps2dq xmm6,xmm4
+	cvtps2dq xmm4,XMMWORD PTR [ecx]
+	cvttpd2dq xmm6,xmm4
+	cvttpd2dq xmm4,XMMWORD PTR [ecx]
+	cvttps2dq xmm6,xmm4
+	cvttps2dq xmm4,XMMWORD PTR [ecx]
+	movapd xmm6,xmm4
+	movapd xmm4,XMMWORD PTR [ecx]
+	movaps xmm6,xmm4
+	movaps xmm4,XMMWORD PTR [ecx]
+	movdqa xmm6,xmm4
+	movdqa xmm4,XMMWORD PTR [ecx]
+	movdqu xmm6,xmm4
+	movdqu xmm4,XMMWORD PTR [ecx]
+	movshdup xmm6,xmm4
+	movshdup xmm4,XMMWORD PTR [ecx]
+	movsldup xmm6,xmm4
+	movsldup xmm4,XMMWORD PTR [ecx]
+	movupd xmm6,xmm4
+	movupd xmm4,XMMWORD PTR [ecx]
+	movups xmm6,xmm4
+	movups xmm4,XMMWORD PTR [ecx]
+	pabsb xmm6,xmm4
+	pabsb xmm4,XMMWORD PTR [ecx]
+	pabsw xmm6,xmm4
+	pabsw xmm4,XMMWORD PTR [ecx]
+	pabsd xmm6,xmm4
+	pabsd xmm4,XMMWORD PTR [ecx]
+	phminposuw xmm6,xmm4
+	phminposuw xmm4,XMMWORD PTR [ecx]
+	ptest xmm6,xmm4
+	ptest xmm4,XMMWORD PTR [ecx]
+	rcpps xmm6,xmm4
+	rcpps xmm4,XMMWORD PTR [ecx]
+	rsqrtps xmm6,xmm4
+	rsqrtps xmm4,XMMWORD PTR [ecx]
+	sqrtpd xmm6,xmm4
+	sqrtpd xmm4,XMMWORD PTR [ecx]
+	sqrtps xmm6,xmm4
+	sqrtps xmm4,XMMWORD PTR [ecx]
+	aesimc xmm6,xmm4
+	aesimc xmm4,XMMWORD PTR [ecx]
+
+# Tests for op xmm, xmm/mem128
+	movapd xmm6,xmm4
+	movapd XMMWORD PTR [ecx],xmm4
+	movaps xmm6,xmm4
+	movaps XMMWORD PTR [ecx],xmm4
+	movdqa xmm6,xmm4
+	movdqa XMMWORD PTR [ecx],xmm4
+	movdqu xmm6,xmm4
+	movdqu XMMWORD PTR [ecx],xmm4
+	movupd xmm6,xmm4
+	movupd XMMWORD PTR [ecx],xmm4
+	movups xmm6,xmm4
+	movups XMMWORD PTR [ecx],xmm4
+
+# Tests for op mem128, xmm
+	lddqu xmm4,XMMWORD PTR [ecx]
+	movntdqa xmm4,XMMWORD PTR [ecx]
+
+# Tests for op xmm, mem128
+	movntdq XMMWORD PTR [ecx],xmm4
+	movntpd XMMWORD PTR [ecx],xmm4
+	movntps XMMWORD PTR [ecx],xmm4
+
+# Tests for op xmm/mem128, xmm[, xmm]
+	addpd xmm6,xmm4
+	addpd xmm6,XMMWORD PTR [ecx]
+	addps xmm6,xmm4
+	addps xmm6,XMMWORD PTR [ecx]
+	addsubpd xmm6,xmm4
+	addsubpd xmm6,XMMWORD PTR [ecx]
+	addsubps xmm6,xmm4
+	addsubps xmm6,XMMWORD PTR [ecx]
+	andnpd xmm6,xmm4
+	andnpd xmm6,XMMWORD PTR [ecx]
+	andnps xmm6,xmm4
+	andnps xmm6,XMMWORD PTR [ecx]
+	andpd xmm6,xmm4
+	andpd xmm6,XMMWORD PTR [ecx]
+	andps xmm6,xmm4
+	andps xmm6,XMMWORD PTR [ecx]
+	divpd xmm6,xmm4
+	divpd xmm6,XMMWORD PTR [ecx]
+	divps xmm6,xmm4
+	divps xmm6,XMMWORD PTR [ecx]
+	haddpd xmm6,xmm4
+	haddpd xmm6,XMMWORD PTR [ecx]
+	haddps xmm6,xmm4
+	haddps xmm6,XMMWORD PTR [ecx]
+	hsubpd xmm6,xmm4
+	hsubpd xmm6,XMMWORD PTR [ecx]
+	hsubps xmm6,xmm4
+	hsubps xmm6,XMMWORD PTR [ecx]
+	maxpd xmm6,xmm4
+	maxpd xmm6,XMMWORD PTR [ecx]
+	maxps xmm6,xmm4
+	maxps xmm6,XMMWORD PTR [ecx]
+	minpd xmm6,xmm4
+	minpd xmm6,XMMWORD PTR [ecx]
+	minps xmm6,xmm4
+	minps xmm6,XMMWORD PTR [ecx]
+	mulpd xmm6,xmm4
+	mulpd xmm6,XMMWORD PTR [ecx]
+	mulps xmm6,xmm4
+	mulps xmm6,XMMWORD PTR [ecx]
+	orpd xmm6,xmm4
+	orpd xmm6,XMMWORD PTR [ecx]
+	orps xmm6,xmm4
+	orps xmm6,XMMWORD PTR [ecx]
+	packsswb xmm6,xmm4
+	packsswb xmm6,XMMWORD PTR [ecx]
+	packssdw xmm6,xmm4
+	packssdw xmm6,XMMWORD PTR [ecx]
+	packuswb xmm6,xmm4
+	packuswb xmm6,XMMWORD PTR [ecx]
+	packusdw xmm6,xmm4
+	packusdw xmm6,XMMWORD PTR [ecx]
+	paddb xmm6,xmm4
+	paddb xmm6,XMMWORD PTR [ecx]
+	paddw xmm6,xmm4
+	paddw xmm6,XMMWORD PTR [ecx]
+	paddd xmm6,xmm4
+	paddd xmm6,XMMWORD PTR [ecx]
+	paddq xmm6,xmm4
+	paddq xmm6,XMMWORD PTR [ecx]
+	paddsb xmm6,xmm4
+	paddsb xmm6,XMMWORD PTR [ecx]
+	paddsw xmm6,xmm4
+	paddsw xmm6,XMMWORD PTR [ecx]
+	paddusb xmm6,xmm4
+	paddusb xmm6,XMMWORD PTR [ecx]
+	paddusw xmm6,xmm4
+	paddusw xmm6,XMMWORD PTR [ecx]
+	pand xmm6,xmm4
+	pand xmm6,XMMWORD PTR [ecx]
+	pandn xmm6,xmm4
+	pandn xmm6,XMMWORD PTR [ecx]
+	pavgb xmm6,xmm4
+	pavgb xmm6,XMMWORD PTR [ecx]
+	pavgw xmm6,xmm4
+	pavgw xmm6,XMMWORD PTR [ecx]
+	pcmpeqb xmm6,xmm4
+	pcmpeqb xmm6,XMMWORD PTR [ecx]
+	pcmpeqw xmm6,xmm4
+	pcmpeqw xmm6,XMMWORD PTR [ecx]
+	pcmpeqd xmm6,xmm4
+	pcmpeqd xmm6,XMMWORD PTR [ecx]
+	pcmpeqq xmm6,xmm4
+	pcmpeqq xmm6,XMMWORD PTR [ecx]
+	pcmpgtb xmm6,xmm4
+	pcmpgtb xmm6,XMMWORD PTR [ecx]
+	pcmpgtw xmm6,xmm4
+	pcmpgtw xmm6,XMMWORD PTR [ecx]
+	pcmpgtd xmm6,xmm4
+	pcmpgtd xmm6,XMMWORD PTR [ecx]
+	pcmpgtq xmm6,xmm4
+	pcmpgtq xmm6,XMMWORD PTR [ecx]
+	phaddw xmm6,xmm4
+	phaddw xmm6,XMMWORD PTR [ecx]
+	phaddd xmm6,xmm4
+	phaddd xmm6,XMMWORD PTR [ecx]
+	phaddsw xmm6,xmm4
+	phaddsw xmm6,XMMWORD PTR [ecx]
+	phsubw xmm6,xmm4
+	phsubw xmm6,XMMWORD PTR [ecx]
+	phsubd xmm6,xmm4
+	phsubd xmm6,XMMWORD PTR [ecx]
+	phsubsw xmm6,xmm4
+	phsubsw xmm6,XMMWORD PTR [ecx]
+	pmaddwd xmm6,xmm4
+	pmaddwd xmm6,XMMWORD PTR [ecx]
+	pmaddubsw xmm6,xmm4
+	pmaddubsw xmm6,XMMWORD PTR [ecx]
+	pmaxsb xmm6,xmm4
+	pmaxsb xmm6,XMMWORD PTR [ecx]
+	pmaxsw xmm6,xmm4
+	pmaxsw xmm6,XMMWORD PTR [ecx]
+	pmaxsd xmm6,xmm4
+	pmaxsd xmm6,XMMWORD PTR [ecx]
+	pmaxub xmm6,xmm4
+	pmaxub xmm6,XMMWORD PTR [ecx]
+	pmaxuw xmm6,xmm4
+	pmaxuw xmm6,XMMWORD PTR [ecx]
+	pmaxud xmm6,xmm4
+	pmaxud xmm6,XMMWORD PTR [ecx]
+	pminsb xmm6,xmm4
+	pminsb xmm6,XMMWORD PTR [ecx]
+	pminsw xmm6,xmm4
+	pminsw xmm6,XMMWORD PTR [ecx]
+	pminsd xmm6,xmm4
+	pminsd xmm6,XMMWORD PTR [ecx]
+	pminub xmm6,xmm4
+	pminub xmm6,XMMWORD PTR [ecx]
+	pminuw xmm6,xmm4
+	pminuw xmm6,XMMWORD PTR [ecx]
+	pminud xmm6,xmm4
+	pminud xmm6,XMMWORD PTR [ecx]
+	pmulhuw xmm6,xmm4
+	pmulhuw xmm6,XMMWORD PTR [ecx]
+	pmulhrsw xmm6,xmm4
+	pmulhrsw xmm6,XMMWORD PTR [ecx]
+	pmulhw xmm6,xmm4
+	pmulhw xmm6,XMMWORD PTR [ecx]
+	pmullw xmm6,xmm4
+	pmullw xmm6,XMMWORD PTR [ecx]
+	pmulld xmm6,xmm4
+	pmulld xmm6,XMMWORD PTR [ecx]
+	pmuludq xmm6,xmm4
+	pmuludq xmm6,XMMWORD PTR [ecx]
+	pmuldq xmm6,xmm4
+	pmuldq xmm6,XMMWORD PTR [ecx]
+	por xmm6,xmm4
+	por xmm6,XMMWORD PTR [ecx]
+	psadbw xmm6,xmm4
+	psadbw xmm6,XMMWORD PTR [ecx]
+	pshufb xmm6,xmm4
+	pshufb xmm6,XMMWORD PTR [ecx]
+	psignb xmm6,xmm4
+	psignb xmm6,XMMWORD PTR [ecx]
+	psignw xmm6,xmm4
+	psignw xmm6,XMMWORD PTR [ecx]
+	psignd xmm6,xmm4
+	psignd xmm6,XMMWORD PTR [ecx]
+	psllw xmm6,xmm4
+	psllw xmm6,XMMWORD PTR [ecx]
+	pslld xmm6,xmm4
+	pslld xmm6,XMMWORD PTR [ecx]
+	psllq xmm6,xmm4
+	psllq xmm6,XMMWORD PTR [ecx]
+	psraw xmm6,xmm4
+	psraw xmm6,XMMWORD PTR [ecx]
+	psrad xmm6,xmm4
+	psrad xmm6,XMMWORD PTR [ecx]
+	psrlw xmm6,xmm4
+	psrlw xmm6,XMMWORD PTR [ecx]
+	psrld xmm6,xmm4
+	psrld xmm6,XMMWORD PTR [ecx]
+	psrlq xmm6,xmm4
+	psrlq xmm6,XMMWORD PTR [ecx]
+	psubb xmm6,xmm4
+	psubb xmm6,XMMWORD PTR [ecx]
+	psubw xmm6,xmm4
+	psubw xmm6,XMMWORD PTR [ecx]
+	psubd xmm6,xmm4
+	psubd xmm6,XMMWORD PTR [ecx]
+	psubq xmm6,xmm4
+	psubq xmm6,XMMWORD PTR [ecx]
+	psubsb xmm6,xmm4
+	psubsb xmm6,XMMWORD PTR [ecx]
+	psubsw xmm6,xmm4
+	psubsw xmm6,XMMWORD PTR [ecx]
+	psubusb xmm6,xmm4
+	psubusb xmm6,XMMWORD PTR [ecx]
+	psubusw xmm6,xmm4
+	psubusw xmm6,XMMWORD PTR [ecx]
+	punpckhbw xmm6,xmm4
+	punpckhbw xmm6,XMMWORD PTR [ecx]
+	punpckhwd xmm6,xmm4
+	punpckhwd xmm6,XMMWORD PTR [ecx]
+	punpckhdq xmm6,xmm4
+	punpckhdq xmm6,XMMWORD PTR [ecx]
+	punpckhqdq xmm6,xmm4
+	punpckhqdq xmm6,XMMWORD PTR [ecx]
+	punpcklbw xmm6,xmm4
+	punpcklbw xmm6,XMMWORD PTR [ecx]
+	punpcklwd xmm6,xmm4
+	punpcklwd xmm6,XMMWORD PTR [ecx]
+	punpckldq xmm6,xmm4
+	punpckldq xmm6,XMMWORD PTR [ecx]
+	punpcklqdq xmm6,xmm4
+	punpcklqdq xmm6,XMMWORD PTR [ecx]
+	pxor xmm6,xmm4
+	pxor xmm6,XMMWORD PTR [ecx]
+	subpd xmm6,xmm4
+	subpd xmm6,XMMWORD PTR [ecx]
+	subps xmm6,xmm4
+	subps xmm6,XMMWORD PTR [ecx]
+	unpckhpd xmm6,xmm4
+	unpckhpd xmm6,XMMWORD PTR [ecx]
+	unpckhps xmm6,xmm4
+	unpckhps xmm6,XMMWORD PTR [ecx]
+	unpcklpd xmm6,xmm4
+	unpcklpd xmm6,XMMWORD PTR [ecx]
+	unpcklps xmm6,xmm4
+	unpcklps xmm6,XMMWORD PTR [ecx]
+	xorpd xmm6,xmm4
+	xorpd xmm6,XMMWORD PTR [ecx]
+	xorps xmm6,xmm4
+	xorps xmm6,XMMWORD PTR [ecx]
+	aesenc xmm6,xmm4
+	aesenc xmm6,XMMWORD PTR [ecx]
+	aesenclast xmm6,xmm4
+	aesenclast xmm6,XMMWORD PTR [ecx]
+	aesdec xmm6,xmm4
+	aesdec xmm6,XMMWORD PTR [ecx]
+	aesdeclast xmm6,xmm4
+	aesdeclast xmm6,XMMWORD PTR [ecx]
+	cmpeqpd xmm6,xmm4
+	cmpeqpd xmm6,XMMWORD PTR [ecx]
+	cmpeqps xmm6,xmm4
+	cmpeqps xmm6,XMMWORD PTR [ecx]
+	cmpltpd xmm6,xmm4
+	cmpltpd xmm6,XMMWORD PTR [ecx]
+	cmpltps xmm6,xmm4
+	cmpltps xmm6,XMMWORD PTR [ecx]
+	cmplepd xmm6,xmm4
+	cmplepd xmm6,XMMWORD PTR [ecx]
+	cmpleps xmm6,xmm4
+	cmpleps xmm6,XMMWORD PTR [ecx]
+	cmpunordpd xmm6,xmm4
+	cmpunordpd xmm6,XMMWORD PTR [ecx]
+	cmpunordps xmm6,xmm4
+	cmpunordps xmm6,XMMWORD PTR [ecx]
+	cmpneqpd xmm6,xmm4
+	cmpneqpd xmm6,XMMWORD PTR [ecx]
+	cmpneqps xmm6,xmm4
+	cmpneqps xmm6,XMMWORD PTR [ecx]
+	cmpnltpd xmm6,xmm4
+	cmpnltpd xmm6,XMMWORD PTR [ecx]
+	cmpnltps xmm6,xmm4
+	cmpnltps xmm6,XMMWORD PTR [ecx]
+	cmpnlepd xmm6,xmm4
+	cmpnlepd xmm6,XMMWORD PTR [ecx]
+	cmpnleps xmm6,xmm4
+	cmpnleps xmm6,XMMWORD PTR [ecx]
+	cmpordpd xmm6,xmm4
+	cmpordpd xmm6,XMMWORD PTR [ecx]
+	cmpordps xmm6,xmm4
+	cmpordps xmm6,XMMWORD PTR [ecx]
+
+# Tests for op imm8, xmm/mem128, xmm
+	aeskeygenassist xmm6,xmm4,100
+	aeskeygenassist xmm6,XMMWORD PTR [ecx],100
+	pcmpestri xmm6,xmm4,100
+	pcmpestri xmm6,XMMWORD PTR [ecx],100
+	pcmpestrm xmm6,xmm4,100
+	pcmpestrm xmm6,XMMWORD PTR [ecx],100
+	pcmpistri xmm6,xmm4,100
+	pcmpistri xmm6,XMMWORD PTR [ecx],100
+	pcmpistrm xmm6,xmm4,100
+	pcmpistrm xmm6,XMMWORD PTR [ecx],100
+	pshufd xmm6,xmm4,100
+	pshufd xmm6,XMMWORD PTR [ecx],100
+	pshufhw xmm6,xmm4,100
+	pshufhw xmm6,XMMWORD PTR [ecx],100
+	pshuflw xmm6,xmm4,100
+	pshuflw xmm6,XMMWORD PTR [ecx],100
+	roundpd xmm6,xmm4,100
+	roundpd xmm6,XMMWORD PTR [ecx],100
+	roundps xmm6,xmm4,100
+	roundps xmm6,XMMWORD PTR [ecx],100
+
+# Tests for op imm8, xmm/mem128, xmm[, xmm]
+	blendpd xmm6,xmm4,100
+	blendpd xmm6,XMMWORD PTR [ecx],100
+	blendps xmm6,xmm4,100
+	blendps xmm6,XMMWORD PTR [ecx],100
+	cmppd xmm6,xmm4,100
+	cmppd xmm6,XMMWORD PTR [ecx],100
+	cmpps xmm6,xmm4,100
+	cmpps xmm6,XMMWORD PTR [ecx],100
+	dppd xmm6,xmm4,100
+	dppd xmm6,XMMWORD PTR [ecx],100
+	dpps xmm6,xmm4,100
+	dpps xmm6,XMMWORD PTR [ecx],100
+	mpsadbw xmm6,xmm4,100
+	mpsadbw xmm6,XMMWORD PTR [ecx],100
+	palignr xmm6,xmm4,100
+	palignr xmm6,XMMWORD PTR [ecx],100
+	pblendw xmm6,xmm4,100
+	pblendw xmm6,XMMWORD PTR [ecx],100
+	shufpd xmm6,xmm4,100
+	shufpd xmm6,XMMWORD PTR [ecx],100
+	shufps xmm6,xmm4,100
+	shufps xmm6,XMMWORD PTR [ecx],100
+
+# Tests for op xmm0, xmm/mem128, xmm[, xmm]
+	blendvpd xmm6,xmm4,xmm0
+	blendvpd xmm6,XMMWORD PTR [ecx],xmm0
+	blendvpd xmm6,xmm4
+	blendvpd xmm6,XMMWORD PTR [ecx]
+	blendvps xmm6,xmm4,xmm0
+	blendvps xmm6,XMMWORD PTR [ecx],xmm0
+	blendvps xmm6,xmm4
+	blendvps xmm6,XMMWORD PTR [ecx]
+	pblendvb xmm6,xmm4,xmm0
+	pblendvb xmm6,XMMWORD PTR [ecx],xmm0
+	pblendvb xmm6,xmm4
+	pblendvb xmm6,XMMWORD PTR [ecx]
+
+# Tests for op xmm/mem64, xmm
+	comisd xmm6,xmm4
+	comisd xmm4,QWORD PTR [ecx]
+	cvtdq2pd xmm6,xmm4
+	cvtdq2pd xmm4,QWORD PTR [ecx]
+	cvtps2pd xmm6,xmm4
+	cvtps2pd xmm4,QWORD PTR [ecx]
+	movddup xmm6,xmm4
+	movddup xmm4,QWORD PTR [ecx]
+	pmovsxbw xmm6,xmm4
+	pmovsxbw xmm4,QWORD PTR [ecx]
+	pmovsxwd xmm6,xmm4
+	pmovsxwd xmm4,QWORD PTR [ecx]
+	pmovsxdq xmm6,xmm4
+	pmovsxdq xmm4,QWORD PTR [ecx]
+	pmovzxbw xmm6,xmm4
+	pmovzxbw xmm4,QWORD PTR [ecx]
+	pmovzxwd xmm6,xmm4
+	pmovzxwd xmm4,QWORD PTR [ecx]
+	pmovzxdq xmm6,xmm4
+	pmovzxdq xmm4,QWORD PTR [ecx]
+	ucomisd xmm6,xmm4
+	ucomisd xmm4,QWORD PTR [ecx]
+
+# Tests for op mem64, xmm
+	movsd xmm4,QWORD PTR [ecx]
+
+# Tests for op xmm, mem64
+	movlpd QWORD PTR [ecx],xmm4
+	movlps QWORD PTR [ecx],xmm4
+	movhpd QWORD PTR [ecx],xmm4
+	movhps QWORD PTR [ecx],xmm4
+	movsd QWORD PTR [ecx],xmm4
+
+# Tests for op xmm, regq/mem64
+# Tests for op regq/mem64, xmm
+	movq QWORD PTR [ecx],xmm4
+	movq xmm4,QWORD PTR [ecx]
+
+# Tests for op xmm/mem64, regl
+	cvtsd2si ecx,xmm4
+	cvtsd2si ecx,QWORD PTR [ecx]
+	cvttsd2si ecx,xmm4
+	cvttsd2si ecx,QWORD PTR [ecx]
+
+# Tests for op mem64, xmm[, xmm]
+	movlpd xmm4,QWORD PTR [ecx]
+	movlps xmm4,QWORD PTR [ecx]
+	movhpd xmm4,QWORD PTR [ecx]
+	movhps xmm4,QWORD PTR [ecx]
+
+# Tests for op imm8, xmm/mem64, xmm[, xmm]
+	cmpsd xmm6,xmm4,100
+	cmpsd xmm6,QWORD PTR [ecx],100
+	roundsd xmm6,xmm4,100
+	roundsd xmm6,QWORD PTR [ecx],100
+
+# Tests for op xmm/mem64, xmm[, xmm]
+	addsd xmm6,xmm4
+	addsd xmm6,QWORD PTR [ecx]
+	cvtsd2ss xmm6,xmm4
+	cvtsd2ss xmm6,QWORD PTR [ecx]
+	divsd xmm6,xmm4
+	divsd xmm6,QWORD PTR [ecx]
+	maxsd xmm6,xmm4
+	maxsd xmm6,QWORD PTR [ecx]
+	minsd xmm6,xmm4
+	minsd xmm6,QWORD PTR [ecx]
+	mulsd xmm6,xmm4
+	mulsd xmm6,QWORD PTR [ecx]
+	sqrtsd xmm6,xmm4
+	sqrtsd xmm6,QWORD PTR [ecx]
+	subsd xmm6,xmm4
+	subsd xmm6,QWORD PTR [ecx]
+	cmpeqsd xmm6,xmm4
+	cmpeqsd xmm6,QWORD PTR [ecx]
+	cmpltsd xmm6,xmm4
+	cmpltsd xmm6,QWORD PTR [ecx]
+	cmplesd xmm6,xmm4
+	cmplesd xmm6,QWORD PTR [ecx]
+	cmpunordsd xmm6,xmm4
+	cmpunordsd xmm6,QWORD PTR [ecx]
+	cmpneqsd xmm6,xmm4
+	cmpneqsd xmm6,QWORD PTR [ecx]
+	cmpnltsd xmm6,xmm4
+	cmpnltsd xmm6,QWORD PTR [ecx]
+	cmpnlesd xmm6,xmm4
+	cmpnlesd xmm6,QWORD PTR [ecx]
+	cmpordsd xmm6,xmm4
+	cmpordsd xmm6,QWORD PTR [ecx]
+
+# Tests for op xmm/mem32, xmm[, xmm]
+	addss xmm6,xmm4
+	addss xmm6,DWORD PTR [ecx]
+	cvtss2sd xmm6,xmm4
+	cvtss2sd xmm6,DWORD PTR [ecx]
+	divss xmm6,xmm4
+	divss xmm6,DWORD PTR [ecx]
+	maxss xmm6,xmm4
+	maxss xmm6,DWORD PTR [ecx]
+	minss xmm6,xmm4
+	minss xmm6,DWORD PTR [ecx]
+	mulss xmm6,xmm4
+	mulss xmm6,DWORD PTR [ecx]
+	rcpss xmm6,xmm4
+	rcpss xmm6,DWORD PTR [ecx]
+	rsqrtss xmm6,xmm4
+	rsqrtss xmm6,DWORD PTR [ecx]
+	sqrtss xmm6,xmm4
+	sqrtss xmm6,DWORD PTR [ecx]
+	subss xmm6,xmm4
+	subss xmm6,DWORD PTR [ecx]
+	cmpeqss xmm6,xmm4
+	cmpeqss xmm6,DWORD PTR [ecx]
+	cmpltss xmm6,xmm4
+	cmpltss xmm6,DWORD PTR [ecx]
+	cmpless xmm6,xmm4
+	cmpless xmm6,DWORD PTR [ecx]
+	cmpunordss xmm6,xmm4
+	cmpunordss xmm6,DWORD PTR [ecx]
+	cmpneqss xmm6,xmm4
+	cmpneqss xmm6,DWORD PTR [ecx]
+	cmpnltss xmm6,xmm4
+	cmpnltss xmm6,DWORD PTR [ecx]
+	cmpnless xmm6,xmm4
+	cmpnless xmm6,DWORD PTR [ecx]
+	cmpordss xmm6,xmm4
+	cmpordss xmm6,DWORD PTR [ecx]
+
+# Tests for op xmm/mem32, xmm
+	comiss xmm6,xmm4
+	comiss xmm4,DWORD PTR [ecx]
+	pmovsxbd xmm6,xmm4
+	pmovsxbd xmm4,DWORD PTR [ecx]
+	pmovsxwq xmm6,xmm4
+	pmovsxwq xmm4,DWORD PTR [ecx]
+	pmovzxbd xmm6,xmm4
+	pmovzxbd xmm4,DWORD PTR [ecx]
+	pmovzxwq xmm6,xmm4
+	pmovzxwq xmm4,DWORD PTR [ecx]
+	ucomiss xmm6,xmm4
+	ucomiss xmm4,DWORD PTR [ecx]
+
+# Tests for op mem32, xmm
+	movss xmm4,DWORD PTR [ecx]
+
+# Tests for op xmm, mem32
+	movss DWORD PTR [ecx],xmm4
+
+# Tests for op xmm, regl/mem32
+# Tests for op regl/mem32, xmm
+	movd ecx,xmm4
+	movd DWORD PTR [ecx],xmm4
+	movd xmm4,ecx
+	movd xmm4,DWORD PTR [ecx]
+
+# Tests for op xmm/mem32, regl
+	cvtss2si ecx,xmm4
+	cvtss2si ecx,DWORD PTR [ecx]
+	cvttss2si ecx,xmm4
+	cvttss2si ecx,DWORD PTR [ecx]
+
+# Tests for op imm8, xmm, regq/mem32
+	extractps DWORD PTR [ecx],xmm4,100
+# Tests for op imm8, xmm, regl/mem32
+	pextrd ecx,xmm4,100
+	pextrd DWORD PTR [ecx],xmm4,100
+	extractps ecx,xmm4,100
+	extractps DWORD PTR [ecx],xmm4,100
+
+# Tests for op regl/mem32, xmm[, xmm]
+	cvtsi2sd xmm4,ecx
+	cvtsi2sd xmm4,DWORD PTR [ecx]
+	cvtsi2ss xmm4,ecx
+	cvtsi2ss xmm4,DWORD PTR [ecx]
+
+# Tests for op imm8, xmm/mem32, xmm[, xmm]
+	cmpss xmm6,xmm4,100
+	cmpss xmm6,DWORD PTR [ecx],100
+	insertps xmm6,xmm4,100
+	insertps xmm6,DWORD PTR [ecx],100
+	roundss xmm6,xmm4,100
+	roundss xmm6,DWORD PTR [ecx],100
+
+# Tests for op xmm/m16, xmm
+	pmovsxbq xmm6,xmm4
+	pmovsxbq xmm4,WORD PTR [ecx]
+	pmovzxbq xmm6,xmm4
+	pmovzxbq xmm4,WORD PTR [ecx]
+
+# Tests for op imm8, xmm, regl/mem16
+	pextrw ecx,xmm4,100
+	pextrw WORD PTR [ecx],xmm4,100
+
+# Tests for op imm8, xmm, regq/mem16
+	pextrw WORD PTR [ecx],xmm4,100
+
+# Tests for op imm8, regl/mem16, xmm[, xmm]
+	pinsrw xmm4,ecx,100
+	pinsrw xmm4,WORD PTR [ecx],100
+
+
+# Tests for op imm8, xmm, regl/mem8
+	pextrb ecx,xmm4,100
+	pextrb BYTE PTR [ecx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+	pinsrb xmm4,ecx,100
+	pinsrb xmm4,BYTE PTR [ecx],100
+
+# Tests for op imm8, xmm, regq/mem8
+	pextrb BYTE PTR [ecx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+	pinsrb xmm4,ecx,100
+	pinsrb xmm4,BYTE PTR [ecx],100
+
+# Tests for op xmm, xmm
+	maskmovdqu xmm6,xmm4
+	movq xmm6,xmm4
+
+# Tests for op xmm, regl
+	movmskpd ecx,xmm4
+	movmskps ecx,xmm4
+	pmovmskb ecx,xmm4
+# Tests for op xmm, xmm[, xmm]
+	movhlps xmm6,xmm4
+	movlhps xmm6,xmm4
+	movsd xmm6,xmm4
+	movss xmm6,xmm4
+
+# Tests for op imm8, xmm[, xmm]
+	pslld xmm4,100
+	pslldq xmm4,100
+	psllq xmm4,100
+	psllw xmm4,100
+	psrad xmm4,100
+	psraw xmm4,100
+	psrld xmm4,100
+	psrldq xmm4,100
+	psrlq xmm4,100
+	psrlw xmm4,100
+
+# Tests for op imm8, xmm, regl
+	pextrw ecx,xmm4,100
+
diff --git a/gas/testsuite/gas/i386/x86-64-nops-5-k8.d b/gas/testsuite/gas/i386/x86-64-nops-5-k8.d
new file mode 100644
index 0000000..05d1e2e
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-5-k8.d
@@ -0,0 +1,73 @@
+#as: -march=k8
+#source: nops-5.s
+#objdump: -drw
+#name: x86-64 -march=k8 nops 5
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+ <i386>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+10 <i486>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+20 <i586>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+30 <i686>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+40 <pentium4>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+50 <nocona>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+60 <core>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+70 <core2>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+80 <k6>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+90 <athlon>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+
+0+a0 <k8>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+
+0+b0 <generic32>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+c0 <generic64>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+d0 <amdfam10>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-nops-5.d b/gas/testsuite/gas/i386/x86-64-nops-5.d
new file mode 100644
index 0000000..cf0401d
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-5.d
@@ -0,0 +1,72 @@
+#source: nops-5.s
+#objdump: -drw
+#name: x86-64 nops 5
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+ <i386>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+10 <i486>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+20 <i586>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+30 <i686>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+40 <pentium4>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+50 <nocona>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+60 <core>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+70 <core2>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+80 <k6>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+90 <athlon>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+
+0+a0 <k8>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+
+0+b0 <generic32>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	8d bc 27 00 00 00 00 	lea    0x0\(%rdi,%riz,1\),%edi
+
+0+c0 <generic64>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 66 66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%rax,%rax,1\)
+
+0+d0 <amdfam10>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx.d b/gas/testsuite/gas/i386/x86-64-sse2avx.d
index 122efd2..277d60e 100644
--- a/gas/testsuite/gas/i386/x86-64-sse2avx.d
+++ b/gas/testsuite/gas/i386/x86-64-sse2avx.d
@@ -150,14 +150,603 @@
 [ 	]*[a-f0-9]+:	c5 c9 e0 31          	vpavgb \(%rcx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 e3 f4          	vpavgw %xmm4,%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 e3 31          	vpavgw \(%rcx\),%xmm6,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 00    	pclmullqlqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 00    	pclmullqlqdq \(%rcx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 01    	pclmulhqlqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 01    	pclmulhqlqdq \(%rcx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 10    	pclmullqhqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 10    	pclmullqhqdq \(%rcx\),%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 f4 11    	pclmulhqhqdq %xmm4,%xmm6
-[ 	]*[a-f0-9]+:	66 0f 3a 44 31 11    	pclmulhqhqdq \(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 74 f4          	vpcmpeqb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 74 31          	vpcmpeqb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 75 f4          	vpcmpeqw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 75 31          	vpcmpeqw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 76 f4          	vpcmpeqd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 76 31          	vpcmpeqd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 29 f4       	vpcmpeqq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 29 31       	vpcmpeqq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 64 f4          	vpcmpgtb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 64 31          	vpcmpgtb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 65 f4          	vpcmpgtw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 65 31          	vpcmpgtw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 66 f4          	vpcmpgtd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 66 31          	vpcmpgtd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 37 f4       	vpcmpgtq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 37 31       	vpcmpgtq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 01 f4       	vphaddw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 01 31       	vphaddw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 02 f4       	vphaddd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 02 31       	vphaddd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 03 f4       	vphaddsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 03 31       	vphaddsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 05 f4       	vphsubw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 05 31       	vphsubw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 06 f4       	vphsubd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 06 31       	vphsubd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 07 f4       	vphsubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 07 31       	vphsubsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f5 f4          	vpmaddwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f5 31          	vpmaddwd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 04 f4       	vpmaddubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 04 31       	vpmaddubsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3c f4       	vpmaxsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3c 31       	vpmaxsb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ee f4          	vpmaxsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ee 31          	vpmaxsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3d f4       	vpmaxsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3d 31       	vpmaxsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 de f4          	vpmaxub %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 de 31          	vpmaxub \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3e f4       	vpmaxuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3e 31       	vpmaxuw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3f f4       	vpmaxud %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3f 31       	vpmaxud \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 38 f4       	vpminsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 38 31       	vpminsb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ea f4          	vpminsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ea 31          	vpminsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 39 f4       	vpminsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 39 31       	vpminsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 da f4          	vpminub %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 da 31          	vpminub \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3a f4       	vpminuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3a 31       	vpminuw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3b f4       	vpminud %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 3b 31       	vpminud \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e4 f4          	vpmulhuw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e4 31          	vpmulhuw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0b f4       	vpmulhrsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0b 31       	vpmulhrsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e5 f4          	vpmulhw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e5 31          	vpmulhw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d5 f4          	vpmullw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d5 31          	vpmullw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 40 f4       	vpmulld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 40 31       	vpmulld \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f4 f4          	vpmuludq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f4 31          	vpmuludq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 28 f4       	vpmuldq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 28 31       	vpmuldq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 eb f4          	vpor   %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 eb 31          	vpor   \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f6 f4          	vpsadbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f6 31          	vpsadbw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 00 f4       	vpshufb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 00 31       	vpshufb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 08 f4       	vpsignb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 08 31       	vpsignb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 09 f4       	vpsignw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 09 31       	vpsignw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0a f4       	vpsignd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 0a 31       	vpsignd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f1 f4          	vpsllw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f1 31          	vpsllw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f2 f4          	vpslld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f2 31          	vpslld \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f3 f4          	vpsllq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f3 31          	vpsllq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e1 f4          	vpsraw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e1 31          	vpsraw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e2 f4          	vpsrad %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e2 31          	vpsrad \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d1 f4          	vpsrlw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d1 31          	vpsrlw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d2 f4          	vpsrld %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d2 31          	vpsrld \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d3 f4          	vpsrlq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d3 31          	vpsrlq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f8 f4          	vpsubb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f8 31          	vpsubb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f9 f4          	vpsubw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 f9 31          	vpsubw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fa f4          	vpsubd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fa 31          	vpsubd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fb f4          	vpsubq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fb 31          	vpsubq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e8 f4          	vpsubsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e8 31          	vpsubsb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e9 f4          	vpsubsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e9 31          	vpsubsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d8 f4          	vpsubusb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d8 31          	vpsubusb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d9 f4          	vpsubusw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d9 31          	vpsubusw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 68 f4          	vpunpckhbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 68 31          	vpunpckhbw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 69 f4          	vpunpckhwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 69 31          	vpunpckhwd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6a f4          	vpunpckhdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6a 31          	vpunpckhdq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6d f4          	vpunpckhqdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6d 31          	vpunpckhqdq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 60 f4          	vpunpcklbw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 60 31          	vpunpcklbw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 61 f4          	vpunpcklwd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 61 31          	vpunpcklwd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 62 f4          	vpunpckldq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 62 31          	vpunpckldq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6c f4          	vpunpcklqdq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6c 31          	vpunpcklqdq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ef f4          	vpxor  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ef 31          	vpxor  \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5c f4          	vsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5c 31          	vsubpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5c f4          	vsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5c 31          	vsubps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 15 f4          	vunpckhpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 15 31          	vunpckhpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 15 f4          	vunpckhps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 15 31          	vunpckhps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 14 f4          	vunpcklpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 14 31          	vunpcklpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 14 f4          	vunpcklps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 14 31          	vunpcklps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 57 f4          	vxorpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 57 31          	vxorpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 57 f4          	vxorps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 57 31          	vxorps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dc f4       	vaesenc %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dc 31       	vaesenc \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dd f4       	vaesenclast %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 dd 31       	vaesenclast \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 de f4       	vaesdec %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 de 31       	vaesdec \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 df f4       	vaesdeclast %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 df 31       	vaesdeclast \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 00       	vcmpeqpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 00       	vcmpeqpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 00       	vcmpeqps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 00       	vcmpeqps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 01       	vcmpltpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 01       	vcmpltpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 01       	vcmpltps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 01       	vcmpltps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 02       	vcmplepd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 02       	vcmplepd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 02       	vcmpleps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 02       	vcmpleps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 03       	vcmpunordpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 03       	vcmpunordpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 03       	vcmpunordps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 03       	vcmpunordps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 04       	vcmpneqpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 04       	vcmpneqpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 04       	vcmpneqps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 04       	vcmpneqps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 05       	vcmpnltpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 05       	vcmpnltpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 05       	vcmpnltps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 05       	vcmpnltps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 06       	vcmpnlepd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 06       	vcmpnlepd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 06       	vcmpnleps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 06       	vcmpnleps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 07       	vcmpordpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 07       	vcmpordpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 07       	vcmpordps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 07       	vcmpordps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 df f4 64    	vaeskeygenassist \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 df 31 64    	vaeskeygenassist \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 61 f4 64    	vpcmpestri \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 61 31 64    	vpcmpestri \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 60 f4 64    	vpcmpestrm \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 60 31 64    	vpcmpestrm \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 63 f4 64    	vpcmpistri \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 63 31 64    	vpcmpistri \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 62 f4 64    	vpcmpistrm \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 62 31 64    	vpcmpistrm \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 70 f4 64       	vpshufd \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 70 31 64       	vpshufd \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 70 f4 64       	vpshufhw \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 70 31 64       	vpshufhw \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 70 f4 64       	vpshuflw \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 70 31 64       	vpshuflw \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 09 f4 64    	vroundpd \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 09 31 64    	vroundpd \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 08 f4 64    	vroundps \$0x64,%xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 79 08 31 64    	vroundps \$0x64,\(%rcx\),%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0d f4 64    	vblendpd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0d 31 64    	vblendpd \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0c f4 64    	vblendps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0c 31 64    	vblendps \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 f4 64       	vcmppd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c2 31 64       	vcmppd \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 f4 64       	vcmpps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c2 31 64       	vcmpps \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 41 f4 64    	vdppd  \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 41 31 64    	vdppd  \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 40 f4 64    	vdpps  \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 40 31 64    	vdpps  \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 42 f4 64    	vmpsadbw \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 42 31 64    	vmpsadbw \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0f f4 64    	vpalignr \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0f 31 64    	vpalignr \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0e f4 64    	vpblendw \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0e 31 64    	vpblendw \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c6 f4 64       	vshufpd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 c6 31 64       	vshufpd \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c6 f4 64       	vshufps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 c6 31 64       	vshufps \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b f4 00    	vblendvpd %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b 31 00    	vblendvpd %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b f4 00    	vblendvpd %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4b 31 00    	vblendvpd %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a f4 00    	vblendvps %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a 31 00    	vblendvps %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a f4 00    	vblendvps %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4a 31 00    	vblendvps %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c f4 00    	vpblendvb %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c 31 00    	vpblendvb %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c f4 00    	vpblendvb %xmm0,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 4c 31 00    	vpblendvb %xmm0,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2f f4          	vcomisd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2f 21          	vcomisd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa e6 f4          	vcvtdq2pd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa e6 21          	vcvtdq2pd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 5a f4          	vcvtps2pd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 5a 21          	vcvtps2pd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 12 f4          	vmovddup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb 12 21          	vmovddup \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 20 f4       	vpmovsxbw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 20 21       	vpmovsxbw \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 23 f4       	vpmovsxwd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 23 21       	vpmovsxwd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 25 f4       	vpmovsxdq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 25 21       	vpmovsxdq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 30 f4       	vpmovzxbw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 30 21       	vpmovzxbw \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 33 f4       	vpmovzxwd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 33 21       	vpmovzxwd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 35 f4       	vpmovzxdq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 35 21       	vpmovzxdq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 2e f4          	vucomisd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 2e 21          	vucomisd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 10 21          	vmovsd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 13 21          	vmovlpd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 13 21          	vmovlps %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 17 21          	vmovhpd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 17 21          	vmovhps %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 fb 11 21          	vmovsd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c4 e1 f9 7e e1       	vmovq  %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 f9 6e e1       	vmovq  %rcx,%xmm4
+[ 	]*[a-f0-9]+:	c4 e1 f9 7e e1       	vmovq  %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 f9 6e e1       	vmovq  %rcx,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 d6 21          	vmovq  %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 fa 7e 21          	vmovq  \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb 2d cc          	vcvtsd2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2d 09          	vcvtsd2si \(%rcx\),%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2c cc          	vcvttsd2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fb 2c 09          	vcvttsd2si \(%rcx\),%ecx
+[ 	]*[a-f0-9]+:	c4 e1 fb 2d cc       	vcvtsd2si %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fb 2d 09       	vcvtsd2si \(%rcx\),%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fb 2c cc       	vcvttsd2si %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fb 2c 09       	vcvttsd2si \(%rcx\),%rcx
+[ 	]*[a-f0-9]+:	c4 e1 db 2a e1       	vcvtsi2sd %rcx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e1 db 2a 21       	vcvtsi2sdq \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e1 da 2a e1       	vcvtsi2ss %rcx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e1 da 2a 21       	vcvtsi2ssq \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 d9 22 e1 64    	vpinsrq \$0x64,%rcx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 d9 22 21 64    	vpinsrq \$0x64,\(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 f9 16 e1 64    	vpextrq \$0x64,%xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e3 f9 16 21 64    	vpextrq \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 d9 12 21          	vmovlpd \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d8 12 21          	vmovlps \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 16 21          	vmovhpd \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d8 16 21          	vmovhps \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 64       	vcmpsd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 64       	vcmpsd \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0b f4 64    	vroundsd \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0b 31 64    	vroundsd \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 58 f4          	vaddsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 58 31          	vaddsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5a f4          	vcvtsd2ss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5a 31          	vcvtsd2ss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5e f4          	vdivsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5e 31          	vdivsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5f f4          	vmaxsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5f 31          	vmaxsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5d f4          	vminsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5d 31          	vminsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 59 f4          	vmulsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 59 31          	vmulsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 51 f4          	vsqrtsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 51 31          	vsqrtsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5c f4          	vsubsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 5c 31          	vsubsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 00       	vcmpeqsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 00       	vcmpeqsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 01       	vcmpltsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 01       	vcmpltsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 02       	vcmplesd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 02       	vcmplesd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 03       	vcmpunordsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 03       	vcmpunordsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 04       	vcmpneqsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 04       	vcmpneqsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 05       	vcmpnltsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 05       	vcmpnltsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 06       	vcmpnlesd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 06       	vcmpnlesd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 f4 07       	vcmpordsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb c2 31 07       	vcmpordsd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 58 f4          	vaddss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 58 31          	vaddss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5a f4          	vcvtss2sd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5a 31          	vcvtss2sd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5e f4          	vdivss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5e 31          	vdivss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5f f4          	vmaxss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5f 31          	vmaxss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5d f4          	vminss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5d 31          	vminss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 59 f4          	vmulss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 59 31          	vmulss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 53 f4          	vrcpss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 53 31          	vrcpss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 52 f4          	vrsqrtss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 52 31          	vrsqrtss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 51 f4          	vsqrtss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 51 31          	vsqrtss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5c f4          	vsubss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 5c 31          	vsubss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 00       	vcmpeqss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 00       	vcmpeqss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 01       	vcmpltss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 01       	vcmpltss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 02       	vcmpless %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 02       	vcmpless \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 03       	vcmpunordss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 03       	vcmpunordss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 04       	vcmpneqss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 04       	vcmpneqss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 05       	vcmpnltss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 05       	vcmpnltss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 06       	vcmpnless %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 06       	vcmpnless \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 07       	vcmpordss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 07       	vcmpordss \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2f f4          	vcomiss %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2f 21          	vcomiss \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 21 f4       	vpmovsxbd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 21 21       	vpmovsxbd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 24 f4       	vpmovsxwq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 24 21       	vpmovsxwq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 31 f4       	vpmovzxbd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 31 21       	vpmovzxbd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 34 f4       	vpmovzxwq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 34 21       	vpmovzxwq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 2e f4          	vucomiss %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 2e 21          	vucomiss \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 10 21          	vmovss \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 11 21          	vmovss %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 7e e1          	vmovd  %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f9 7e 21          	vmovd  %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 6e e1          	vmovd  %ecx,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 6e 21          	vmovd  \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 2d cc          	vcvtss2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2d 09          	vcvtss2si \(%rcx\),%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2c cc          	vcvttss2si %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 fa 2c 09          	vcvttss2si \(%rcx\),%ecx
+[ 	]*[a-f0-9]+:	c4 e1 fa 2d cc       	vcvtss2si %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fa 2d 09       	vcvtss2si \(%rcx\),%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fa 2c cc       	vcvttss2si %xmm4,%rcx
+[ 	]*[a-f0-9]+:	c4 e1 fa 2c 09       	vcvttss2si \(%rcx\),%rcx
+[ 	]*[a-f0-9]+:	c5 f9 50 cc          	vmovmskpd %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f8 50 cc          	vmovmskps %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f9 d7 cc          	vpmovmskb %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 17 e1 64    	vextractps \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 17 21 64    	vextractps \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c4 e3 79 16 e1 64    	vpextrd \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 16 21 64    	vpextrd \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c4 e3 79 17 e1 64    	vextractps \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 17 21 64    	vextractps \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 db 2a e1          	vcvtsi2sd %ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 db 2a 21          	vcvtsi2sdl \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 da 2a e1          	vcvtsi2ss %ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 da 2a 21          	vcvtsi2ssl \(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 ca c2 f4 64       	vcmpss \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca c2 31 64       	vcmpss \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 21 f4 64    	vinsertps \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 21 31 64    	vinsertps \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0a f4 64    	vroundss \$0x64,%xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e3 49 0a 31 64    	vroundss \$0x64,\(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 22 f4       	vpmovsxbq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 22 21       	vpmovsxbq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 32 f4       	vpmovzxbq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 32 21       	vpmovzxbq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 15 21 64    	vpextrw \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 15 21 64    	vpextrw \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 d9 c4 e1 64       	vpinsrw \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 c4 21 64       	vpinsrw \$0x64,\(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 c4 e1 64       	vpinsrw \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 c4 21 64       	vpinsrw \$0x64,\(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 79 14 e1 64    	vpextrb \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 14 21 64    	vpextrb \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c4 e3 59 20 e1 64    	vpinsrb \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 59 20 21 64    	vpinsrb \$0x64,\(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 14 e1 64    	vpextrb \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c4 e3 79 14 21 64    	vpextrb \$0x64,%xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c4 e3 59 20 e1 64    	vpinsrb \$0x64,%ecx,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c4 e3 59 20 21 64    	vpinsrb \$0x64,\(%rcx\),%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 f7 f4          	vmaskmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 7e f4          	vmovq  %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 50 cc          	vmovmskpd %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f8 50 cc          	vmovmskps %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f9 d7 cc          	vpmovmskb %xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 c8 12 f4          	vmovhlps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 16 f4          	vmovlhps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 10 f4          	vmovsd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 ca 10 f4          	vmovss %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 d9 72 f4 64       	vpslld \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 fc 64       	vpslldq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 f4 64       	vpsllq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 f4 64       	vpsllw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 72 e4 64       	vpsrad \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 e4 64       	vpsraw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 72 d4 64       	vpsrld \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 dc 64       	vpsrldq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 73 d4 64       	vpsrlq \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 d9 71 d4 64       	vpsrlw \$0x64,%xmm4,%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 c5 cc 64       	vpextrw \$0x64,%xmm4,%ecx
+[ 	]*[a-f0-9]+:	c5 f8 ae 11          	vldmxcsr \(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 ae 19          	vstmxcsr \(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 5b f4          	vcvtdq2ps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 5b 21          	vcvtdq2ps \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fb e6 f4          	vcvtpd2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fb e6 21          	vcvtpd2dqx \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 5a f4          	vcvtpd2ps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 5a 21          	vcvtpd2psx \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 5b f4          	vcvtps2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 5b 21          	vcvtps2dq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 e6 f4          	vcvttpd2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 e6 21          	vcvttpd2dqx \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 5b f4          	vcvttps2dq %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 5b 21          	vcvttps2dq \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 28 f4          	vmovapd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 28 21          	vmovapd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 28 f4          	vmovaps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 28 21          	vmovaps \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 6f f4          	vmovdqa %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 6f 21          	vmovdqa \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 6f f4          	vmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 6f 21          	vmovdqu \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 16 f4          	vmovshdup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 16 21          	vmovshdup \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 fa 12 f4          	vmovsldup %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 12 21          	vmovsldup \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 10 f4          	vmovupd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 10 21          	vmovupd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 10 f4          	vmovups %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 10 21          	vmovups \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1c f4       	vpabsb %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1c 21       	vpabsb \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1d f4       	vpabsw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1d 21       	vpabsw \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 1e f4       	vpabsd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 1e 21       	vpabsd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 41 f4       	vphminposuw %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 41 21       	vphminposuw \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 17 f4       	vptest %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 17 21       	vptest \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 53 f4          	vrcpps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 53 21          	vrcpps \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 52 f4          	vrsqrtps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 52 21          	vrsqrtps \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 51 f4          	vsqrtpd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 51 21          	vsqrtpd \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f8 51 f4          	vsqrtps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 51 21          	vsqrtps \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 db f4       	vaesimc %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 79 db 21       	vaesimc \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 28 f4          	vmovapd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 29 21          	vmovapd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 28 f4          	vmovaps %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 29 21          	vmovaps %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 6f f4          	vmovdqa %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 7f 21          	vmovdqa %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 fa 6f f4          	vmovdqu %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 fa 7f 21          	vmovdqu %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 10 f4          	vmovupd %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f9 11 21          	vmovupd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 10 f4          	vmovups %xmm4,%xmm6
+[ 	]*[a-f0-9]+:	c5 f8 11 21          	vmovups %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 fb f0 21          	vlddqu \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c4 e2 79 2a 21       	vmovntdqa \(%rcx\),%xmm4
+[ 	]*[a-f0-9]+:	c5 f9 e7 21          	vmovntdq %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f9 2b 21          	vmovntpd %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 f8 2b 21          	vmovntps %xmm4,\(%rcx\)
+[ 	]*[a-f0-9]+:	c5 c9 58 f4          	vaddpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 58 31          	vaddpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 58 f4          	vaddps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 58 31          	vaddps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d0 f4          	vaddsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d0 31          	vaddsubpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb d0 f4          	vaddsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb d0 31          	vaddsubps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 55 f4          	vandnpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 55 31          	vandnpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 55 f4          	vandnps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 55 31          	vandnps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 54 f4          	vandpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 54 31          	vandpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 54 f4          	vandps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 54 31          	vandps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5e f4          	vdivpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5e 31          	vdivpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5e f4          	vdivps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5e 31          	vdivps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7c f4          	vhaddpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7c 31          	vhaddpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7c f4          	vhaddps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7c 31          	vhaddps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7d f4          	vhsubpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 7d 31          	vhsubpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7d f4          	vhsubps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 cb 7d 31          	vhsubps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5f f4          	vmaxpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5f 31          	vmaxpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5f f4          	vmaxps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5f 31          	vmaxps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5d f4          	vminpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 5d 31          	vminpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5d f4          	vminps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 5d 31          	vminps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 59 f4          	vmulpd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 59 31          	vmulpd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 59 f4          	vmulps %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 59 31          	vmulps \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 56 f4          	vorpd  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 56 31          	vorpd  \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 56 f4          	vorps  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c8 56 31          	vorps  \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 63 f4          	vpacksswb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 63 31          	vpacksswb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6b f4          	vpackssdw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 6b 31          	vpackssdw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 67 f4          	vpackuswb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 67 31          	vpackuswb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 2b f4       	vpackusdw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c4 e2 49 2b 31       	vpackusdw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fc f4          	vpaddb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fc 31          	vpaddb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fd f4          	vpaddw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fd 31          	vpaddw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fe f4          	vpaddd %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 fe 31          	vpaddd \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d4 f4          	vpaddq %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 d4 31          	vpaddq \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ec f4          	vpaddsb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ec 31          	vpaddsb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ed f4          	vpaddsw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 ed 31          	vpaddsw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dc f4          	vpaddusb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dc 31          	vpaddusb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dd f4          	vpaddusw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 dd 31          	vpaddusw \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 db f4          	vpand  %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 db 31          	vpand  \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 df f4          	vpandn %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 df 31          	vpandn \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e0 f4          	vpavgb %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e0 31          	vpavgb \(%rcx\),%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e3 f4          	vpavgw %xmm4,%xmm6,%xmm6
+[ 	]*[a-f0-9]+:	c5 c9 e3 31          	vpavgw \(%rcx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 74 f4          	vpcmpeqb %xmm4,%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 74 31          	vpcmpeqb \(%rcx\),%xmm6,%xmm6
 [ 	]*[a-f0-9]+:	c5 c9 75 f4          	vpcmpeqw %xmm4,%xmm6,%xmm6
diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx.s b/gas/testsuite/gas/i386/x86-64-sse2avx.s
index 4065266..9552f9e 100644
--- a/gas/testsuite/gas/i386/x86-64-sse2avx.s
+++ b/gas/testsuite/gas/i386/x86-64-sse2avx.s
@@ -157,14 +157,6 @@
 	pavgb (%rcx),%xmm6
 	pavgw %xmm4,%xmm6
 	pavgw (%rcx),%xmm6
-	pclmullqlqdq %xmm4,%xmm6
-	pclmullqlqdq (%rcx),%xmm6
-	pclmulhqlqdq %xmm4,%xmm6
-	pclmulhqlqdq (%rcx),%xmm6
-	pclmullqhqdq %xmm4,%xmm6
-	pclmullqhqdq (%rcx),%xmm6
-	pclmulhqhqdq %xmm4,%xmm6
-	pclmulhqhqdq (%rcx),%xmm6
 	pcmpeqb %xmm4,%xmm6
 	pcmpeqb (%rcx),%xmm6
 	pcmpeqw %xmm4,%xmm6
@@ -703,3 +695,697 @@
 # Tests for op imm8, xmm, regl
 	pextrw $100,%xmm4,%ecx
 
+
+	.intel_syntax noprefix
+# Tests for op mem64
+	ldmxcsr DWORD PTR [rcx]
+	stmxcsr DWORD PTR [rcx]
+
+# Tests for op xmm/mem128, xmm
+	cvtdq2ps xmm6,xmm4
+	cvtdq2ps xmm4,XMMWORD PTR [rcx]
+	cvtpd2dq xmm6,xmm4
+	cvtpd2dq xmm4,XMMWORD PTR [rcx]
+	cvtpd2ps xmm6,xmm4
+	cvtpd2ps xmm4,XMMWORD PTR [rcx]
+	cvtps2dq xmm6,xmm4
+	cvtps2dq xmm4,XMMWORD PTR [rcx]
+	cvttpd2dq xmm6,xmm4
+	cvttpd2dq xmm4,XMMWORD PTR [rcx]
+	cvttps2dq xmm6,xmm4
+	cvttps2dq xmm4,XMMWORD PTR [rcx]
+	movapd xmm6,xmm4
+	movapd xmm4,XMMWORD PTR [rcx]
+	movaps xmm6,xmm4
+	movaps xmm4,XMMWORD PTR [rcx]
+	movdqa xmm6,xmm4
+	movdqa xmm4,XMMWORD PTR [rcx]
+	movdqu xmm6,xmm4
+	movdqu xmm4,XMMWORD PTR [rcx]
+	movshdup xmm6,xmm4
+	movshdup xmm4,XMMWORD PTR [rcx]
+	movsldup xmm6,xmm4
+	movsldup xmm4,XMMWORD PTR [rcx]
+	movupd xmm6,xmm4
+	movupd xmm4,XMMWORD PTR [rcx]
+	movups xmm6,xmm4
+	movups xmm4,XMMWORD PTR [rcx]
+	pabsb xmm6,xmm4
+	pabsb xmm4,XMMWORD PTR [rcx]
+	pabsw xmm6,xmm4
+	pabsw xmm4,XMMWORD PTR [rcx]
+	pabsd xmm6,xmm4
+	pabsd xmm4,XMMWORD PTR [rcx]
+	phminposuw xmm6,xmm4
+	phminposuw xmm4,XMMWORD PTR [rcx]
+	ptest xmm6,xmm4
+	ptest xmm4,XMMWORD PTR [rcx]
+	rcpps xmm6,xmm4
+	rcpps xmm4,XMMWORD PTR [rcx]
+	rsqrtps xmm6,xmm4
+	rsqrtps xmm4,XMMWORD PTR [rcx]
+	sqrtpd xmm6,xmm4
+	sqrtpd xmm4,XMMWORD PTR [rcx]
+	sqrtps xmm6,xmm4
+	sqrtps xmm4,XMMWORD PTR [rcx]
+	aesimc xmm6,xmm4
+	aesimc xmm4,XMMWORD PTR [rcx]
+
+# Tests for op xmm, xmm/mem128
+	movapd xmm6,xmm4
+	movapd XMMWORD PTR [rcx],xmm4
+	movaps xmm6,xmm4
+	movaps XMMWORD PTR [rcx],xmm4
+	movdqa xmm6,xmm4
+	movdqa XMMWORD PTR [rcx],xmm4
+	movdqu xmm6,xmm4
+	movdqu XMMWORD PTR [rcx],xmm4
+	movupd xmm6,xmm4
+	movupd XMMWORD PTR [rcx],xmm4
+	movups xmm6,xmm4
+	movups XMMWORD PTR [rcx],xmm4
+
+# Tests for op mem128, xmm
+	lddqu xmm4,XMMWORD PTR [rcx]
+	movntdqa xmm4,XMMWORD PTR [rcx]
+
+# Tests for op xmm, mem128
+	movntdq XMMWORD PTR [rcx],xmm4
+	movntpd XMMWORD PTR [rcx],xmm4
+	movntps XMMWORD PTR [rcx],xmm4
+
+# Tests for op xmm/mem128, xmm[, xmm]
+	addpd xmm6,xmm4
+	addpd xmm6,XMMWORD PTR [rcx]
+	addps xmm6,xmm4
+	addps xmm6,XMMWORD PTR [rcx]
+	addsubpd xmm6,xmm4
+	addsubpd xmm6,XMMWORD PTR [rcx]
+	addsubps xmm6,xmm4
+	addsubps xmm6,XMMWORD PTR [rcx]
+	andnpd xmm6,xmm4
+	andnpd xmm6,XMMWORD PTR [rcx]
+	andnps xmm6,xmm4
+	andnps xmm6,XMMWORD PTR [rcx]
+	andpd xmm6,xmm4
+	andpd xmm6,XMMWORD PTR [rcx]
+	andps xmm6,xmm4
+	andps xmm6,XMMWORD PTR [rcx]
+	divpd xmm6,xmm4
+	divpd xmm6,XMMWORD PTR [rcx]
+	divps xmm6,xmm4
+	divps xmm6,XMMWORD PTR [rcx]
+	haddpd xmm6,xmm4
+	haddpd xmm6,XMMWORD PTR [rcx]
+	haddps xmm6,xmm4
+	haddps xmm6,XMMWORD PTR [rcx]
+	hsubpd xmm6,xmm4
+	hsubpd xmm6,XMMWORD PTR [rcx]
+	hsubps xmm6,xmm4
+	hsubps xmm6,XMMWORD PTR [rcx]
+	maxpd xmm6,xmm4
+	maxpd xmm6,XMMWORD PTR [rcx]
+	maxps xmm6,xmm4
+	maxps xmm6,XMMWORD PTR [rcx]
+	minpd xmm6,xmm4
+	minpd xmm6,XMMWORD PTR [rcx]
+	minps xmm6,xmm4
+	minps xmm6,XMMWORD PTR [rcx]
+	mulpd xmm6,xmm4
+	mulpd xmm6,XMMWORD PTR [rcx]
+	mulps xmm6,xmm4
+	mulps xmm6,XMMWORD PTR [rcx]
+	orpd xmm6,xmm4
+	orpd xmm6,XMMWORD PTR [rcx]
+	orps xmm6,xmm4
+	orps xmm6,XMMWORD PTR [rcx]
+	packsswb xmm6,xmm4
+	packsswb xmm6,XMMWORD PTR [rcx]
+	packssdw xmm6,xmm4
+	packssdw xmm6,XMMWORD PTR [rcx]
+	packuswb xmm6,xmm4
+	packuswb xmm6,XMMWORD PTR [rcx]
+	packusdw xmm6,xmm4
+	packusdw xmm6,XMMWORD PTR [rcx]
+	paddb xmm6,xmm4
+	paddb xmm6,XMMWORD PTR [rcx]
+	paddw xmm6,xmm4
+	paddw xmm6,XMMWORD PTR [rcx]
+	paddd xmm6,xmm4
+	paddd xmm6,XMMWORD PTR [rcx]
+	paddq xmm6,xmm4
+	paddq xmm6,XMMWORD PTR [rcx]
+	paddsb xmm6,xmm4
+	paddsb xmm6,XMMWORD PTR [rcx]
+	paddsw xmm6,xmm4
+	paddsw xmm6,XMMWORD PTR [rcx]
+	paddusb xmm6,xmm4
+	paddusb xmm6,XMMWORD PTR [rcx]
+	paddusw xmm6,xmm4
+	paddusw xmm6,XMMWORD PTR [rcx]
+	pand xmm6,xmm4
+	pand xmm6,XMMWORD PTR [rcx]
+	pandn xmm6,xmm4
+	pandn xmm6,XMMWORD PTR [rcx]
+	pavgb xmm6,xmm4
+	pavgb xmm6,XMMWORD PTR [rcx]
+	pavgw xmm6,xmm4
+	pavgw xmm6,XMMWORD PTR [rcx]
+	pcmpeqb xmm6,xmm4
+	pcmpeqb xmm6,XMMWORD PTR [rcx]
+	pcmpeqw xmm6,xmm4
+	pcmpeqw xmm6,XMMWORD PTR [rcx]
+	pcmpeqd xmm6,xmm4
+	pcmpeqd xmm6,XMMWORD PTR [rcx]
+	pcmpeqq xmm6,xmm4
+	pcmpeqq xmm6,XMMWORD PTR [rcx]
+	pcmpgtb xmm6,xmm4
+	pcmpgtb xmm6,XMMWORD PTR [rcx]
+	pcmpgtw xmm6,xmm4
+	pcmpgtw xmm6,XMMWORD PTR [rcx]
+	pcmpgtd xmm6,xmm4
+	pcmpgtd xmm6,XMMWORD PTR [rcx]
+	pcmpgtq xmm6,xmm4
+	pcmpgtq xmm6,XMMWORD PTR [rcx]
+	phaddw xmm6,xmm4
+	phaddw xmm6,XMMWORD PTR [rcx]
+	phaddd xmm6,xmm4
+	phaddd xmm6,XMMWORD PTR [rcx]
+	phaddsw xmm6,xmm4
+	phaddsw xmm6,XMMWORD PTR [rcx]
+	phsubw xmm6,xmm4
+	phsubw xmm6,XMMWORD PTR [rcx]
+	phsubd xmm6,xmm4
+	phsubd xmm6,XMMWORD PTR [rcx]
+	phsubsw xmm6,xmm4
+	phsubsw xmm6,XMMWORD PTR [rcx]
+	pmaddwd xmm6,xmm4
+	pmaddwd xmm6,XMMWORD PTR [rcx]
+	pmaddubsw xmm6,xmm4
+	pmaddubsw xmm6,XMMWORD PTR [rcx]
+	pmaxsb xmm6,xmm4
+	pmaxsb xmm6,XMMWORD PTR [rcx]
+	pmaxsw xmm6,xmm4
+	pmaxsw xmm6,XMMWORD PTR [rcx]
+	pmaxsd xmm6,xmm4
+	pmaxsd xmm6,XMMWORD PTR [rcx]
+	pmaxub xmm6,xmm4
+	pmaxub xmm6,XMMWORD PTR [rcx]
+	pmaxuw xmm6,xmm4
+	pmaxuw xmm6,XMMWORD PTR [rcx]
+	pmaxud xmm6,xmm4
+	pmaxud xmm6,XMMWORD PTR [rcx]
+	pminsb xmm6,xmm4
+	pminsb xmm6,XMMWORD PTR [rcx]
+	pminsw xmm6,xmm4
+	pminsw xmm6,XMMWORD PTR [rcx]
+	pminsd xmm6,xmm4
+	pminsd xmm6,XMMWORD PTR [rcx]
+	pminub xmm6,xmm4
+	pminub xmm6,XMMWORD PTR [rcx]
+	pminuw xmm6,xmm4
+	pminuw xmm6,XMMWORD PTR [rcx]
+	pminud xmm6,xmm4
+	pminud xmm6,XMMWORD PTR [rcx]
+	pmulhuw xmm6,xmm4
+	pmulhuw xmm6,XMMWORD PTR [rcx]
+	pmulhrsw xmm6,xmm4
+	pmulhrsw xmm6,XMMWORD PTR [rcx]
+	pmulhw xmm6,xmm4
+	pmulhw xmm6,XMMWORD PTR [rcx]
+	pmullw xmm6,xmm4
+	pmullw xmm6,XMMWORD PTR [rcx]
+	pmulld xmm6,xmm4
+	pmulld xmm6,XMMWORD PTR [rcx]
+	pmuludq xmm6,xmm4
+	pmuludq xmm6,XMMWORD PTR [rcx]
+	pmuldq xmm6,xmm4
+	pmuldq xmm6,XMMWORD PTR [rcx]
+	por xmm6,xmm4
+	por xmm6,XMMWORD PTR [rcx]
+	psadbw xmm6,xmm4
+	psadbw xmm6,XMMWORD PTR [rcx]
+	pshufb xmm6,xmm4
+	pshufb xmm6,XMMWORD PTR [rcx]
+	psignb xmm6,xmm4
+	psignb xmm6,XMMWORD PTR [rcx]
+	psignw xmm6,xmm4
+	psignw xmm6,XMMWORD PTR [rcx]
+	psignd xmm6,xmm4
+	psignd xmm6,XMMWORD PTR [rcx]
+	psllw xmm6,xmm4
+	psllw xmm6,XMMWORD PTR [rcx]
+	pslld xmm6,xmm4
+	pslld xmm6,XMMWORD PTR [rcx]
+	psllq xmm6,xmm4
+	psllq xmm6,XMMWORD PTR [rcx]
+	psraw xmm6,xmm4
+	psraw xmm6,XMMWORD PTR [rcx]
+	psrad xmm6,xmm4
+	psrad xmm6,XMMWORD PTR [rcx]
+	psrlw xmm6,xmm4
+	psrlw xmm6,XMMWORD PTR [rcx]
+	psrld xmm6,xmm4
+	psrld xmm6,XMMWORD PTR [rcx]
+	psrlq xmm6,xmm4
+	psrlq xmm6,XMMWORD PTR [rcx]
+	psubb xmm6,xmm4
+	psubb xmm6,XMMWORD PTR [rcx]
+	psubw xmm6,xmm4
+	psubw xmm6,XMMWORD PTR [rcx]
+	psubd xmm6,xmm4
+	psubd xmm6,XMMWORD PTR [rcx]
+	psubq xmm6,xmm4
+	psubq xmm6,XMMWORD PTR [rcx]
+	psubsb xmm6,xmm4
+	psubsb xmm6,XMMWORD PTR [rcx]
+	psubsw xmm6,xmm4
+	psubsw xmm6,XMMWORD PTR [rcx]
+	psubusb xmm6,xmm4
+	psubusb xmm6,XMMWORD PTR [rcx]
+	psubusw xmm6,xmm4
+	psubusw xmm6,XMMWORD PTR [rcx]
+	punpckhbw xmm6,xmm4
+	punpckhbw xmm6,XMMWORD PTR [rcx]
+	punpckhwd xmm6,xmm4
+	punpckhwd xmm6,XMMWORD PTR [rcx]
+	punpckhdq xmm6,xmm4
+	punpckhdq xmm6,XMMWORD PTR [rcx]
+	punpckhqdq xmm6,xmm4
+	punpckhqdq xmm6,XMMWORD PTR [rcx]
+	punpcklbw xmm6,xmm4
+	punpcklbw xmm6,XMMWORD PTR [rcx]
+	punpcklwd xmm6,xmm4
+	punpcklwd xmm6,XMMWORD PTR [rcx]
+	punpckldq xmm6,xmm4
+	punpckldq xmm6,XMMWORD PTR [rcx]
+	punpcklqdq xmm6,xmm4
+	punpcklqdq xmm6,XMMWORD PTR [rcx]
+	pxor xmm6,xmm4
+	pxor xmm6,XMMWORD PTR [rcx]
+	subpd xmm6,xmm4
+	subpd xmm6,XMMWORD PTR [rcx]
+	subps xmm6,xmm4
+	subps xmm6,XMMWORD PTR [rcx]
+	unpckhpd xmm6,xmm4
+	unpckhpd xmm6,XMMWORD PTR [rcx]
+	unpckhps xmm6,xmm4
+	unpckhps xmm6,XMMWORD PTR [rcx]
+	unpcklpd xmm6,xmm4
+	unpcklpd xmm6,XMMWORD PTR [rcx]
+	unpcklps xmm6,xmm4
+	unpcklps xmm6,XMMWORD PTR [rcx]
+	xorpd xmm6,xmm4
+	xorpd xmm6,XMMWORD PTR [rcx]
+	xorps xmm6,xmm4
+	xorps xmm6,XMMWORD PTR [rcx]
+	aesenc xmm6,xmm4
+	aesenc xmm6,XMMWORD PTR [rcx]
+	aesenclast xmm6,xmm4
+	aesenclast xmm6,XMMWORD PTR [rcx]
+	aesdec xmm6,xmm4
+	aesdec xmm6,XMMWORD PTR [rcx]
+	aesdeclast xmm6,xmm4
+	aesdeclast xmm6,XMMWORD PTR [rcx]
+	cmpeqpd xmm6,xmm4
+	cmpeqpd xmm6,XMMWORD PTR [rcx]
+	cmpeqps xmm6,xmm4
+	cmpeqps xmm6,XMMWORD PTR [rcx]
+	cmpltpd xmm6,xmm4
+	cmpltpd xmm6,XMMWORD PTR [rcx]
+	cmpltps xmm6,xmm4
+	cmpltps xmm6,XMMWORD PTR [rcx]
+	cmplepd xmm6,xmm4
+	cmplepd xmm6,XMMWORD PTR [rcx]
+	cmpleps xmm6,xmm4
+	cmpleps xmm6,XMMWORD PTR [rcx]
+	cmpunordpd xmm6,xmm4
+	cmpunordpd xmm6,XMMWORD PTR [rcx]
+	cmpunordps xmm6,xmm4
+	cmpunordps xmm6,XMMWORD PTR [rcx]
+	cmpneqpd xmm6,xmm4
+	cmpneqpd xmm6,XMMWORD PTR [rcx]
+	cmpneqps xmm6,xmm4
+	cmpneqps xmm6,XMMWORD PTR [rcx]
+	cmpnltpd xmm6,xmm4
+	cmpnltpd xmm6,XMMWORD PTR [rcx]
+	cmpnltps xmm6,xmm4
+	cmpnltps xmm6,XMMWORD PTR [rcx]
+	cmpnlepd xmm6,xmm4
+	cmpnlepd xmm6,XMMWORD PTR [rcx]
+	cmpnleps xmm6,xmm4
+	cmpnleps xmm6,XMMWORD PTR [rcx]
+	cmpordpd xmm6,xmm4
+	cmpordpd xmm6,XMMWORD PTR [rcx]
+	cmpordps xmm6,xmm4
+	cmpordps xmm6,XMMWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem128, xmm
+	aeskeygenassist xmm6,xmm4,100
+	aeskeygenassist xmm6,XMMWORD PTR [rcx],100
+	pcmpestri xmm6,xmm4,100
+	pcmpestri xmm6,XMMWORD PTR [rcx],100
+	pcmpestrm xmm6,xmm4,100
+	pcmpestrm xmm6,XMMWORD PTR [rcx],100
+	pcmpistri xmm6,xmm4,100
+	pcmpistri xmm6,XMMWORD PTR [rcx],100
+	pcmpistrm xmm6,xmm4,100
+	pcmpistrm xmm6,XMMWORD PTR [rcx],100
+	pshufd xmm6,xmm4,100
+	pshufd xmm6,XMMWORD PTR [rcx],100
+	pshufhw xmm6,xmm4,100
+	pshufhw xmm6,XMMWORD PTR [rcx],100
+	pshuflw xmm6,xmm4,100
+	pshuflw xmm6,XMMWORD PTR [rcx],100
+	roundpd xmm6,xmm4,100
+	roundpd xmm6,XMMWORD PTR [rcx],100
+	roundps xmm6,xmm4,100
+	roundps xmm6,XMMWORD PTR [rcx],100
+
+# Tests for op imm8, xmm/mem128, xmm[, xmm]
+	blendpd xmm6,xmm4,100
+	blendpd xmm6,XMMWORD PTR [rcx],100
+	blendps xmm6,xmm4,100
+	blendps xmm6,XMMWORD PTR [rcx],100
+	cmppd xmm6,xmm4,100
+	cmppd xmm6,XMMWORD PTR [rcx],100
+	cmpps xmm6,xmm4,100
+	cmpps xmm6,XMMWORD PTR [rcx],100
+	dppd xmm6,xmm4,100
+	dppd xmm6,XMMWORD PTR [rcx],100
+	dpps xmm6,xmm4,100
+	dpps xmm6,XMMWORD PTR [rcx],100
+	mpsadbw xmm6,xmm4,100
+	mpsadbw xmm6,XMMWORD PTR [rcx],100
+	palignr xmm6,xmm4,100
+	palignr xmm6,XMMWORD PTR [rcx],100
+	pblendw xmm6,xmm4,100
+	pblendw xmm6,XMMWORD PTR [rcx],100
+	shufpd xmm6,xmm4,100
+	shufpd xmm6,XMMWORD PTR [rcx],100
+	shufps xmm6,xmm4,100
+	shufps xmm6,XMMWORD PTR [rcx],100
+
+# Tests for op xmm0, xmm/mem128, xmm[, xmm]
+	blendvpd xmm6,xmm4,xmm0
+	blendvpd xmm6,XMMWORD PTR [rcx],xmm0
+	blendvpd xmm6,xmm4
+	blendvpd xmm6,XMMWORD PTR [rcx]
+	blendvps xmm6,xmm4,xmm0
+	blendvps xmm6,XMMWORD PTR [rcx],xmm0
+	blendvps xmm6,xmm4
+	blendvps xmm6,XMMWORD PTR [rcx]
+	pblendvb xmm6,xmm4,xmm0
+	pblendvb xmm6,XMMWORD PTR [rcx],xmm0
+	pblendvb xmm6,xmm4
+	pblendvb xmm6,XMMWORD PTR [rcx]
+
+# Tests for op xmm/mem64, xmm
+	comisd xmm6,xmm4
+	comisd xmm4,QWORD PTR [rcx]
+	cvtdq2pd xmm6,xmm4
+	cvtdq2pd xmm4,QWORD PTR [rcx]
+	cvtps2pd xmm6,xmm4
+	cvtps2pd xmm4,QWORD PTR [rcx]
+	movddup xmm6,xmm4
+	movddup xmm4,QWORD PTR [rcx]
+	pmovsxbw xmm6,xmm4
+	pmovsxbw xmm4,QWORD PTR [rcx]
+	pmovsxwd xmm6,xmm4
+	pmovsxwd xmm4,QWORD PTR [rcx]
+	pmovsxdq xmm6,xmm4
+	pmovsxdq xmm4,QWORD PTR [rcx]
+	pmovzxbw xmm6,xmm4
+	pmovzxbw xmm4,QWORD PTR [rcx]
+	pmovzxwd xmm6,xmm4
+	pmovzxwd xmm4,QWORD PTR [rcx]
+	pmovzxdq xmm6,xmm4
+	pmovzxdq xmm4,QWORD PTR [rcx]
+	ucomisd xmm6,xmm4
+	ucomisd xmm4,QWORD PTR [rcx]
+
+# Tests for op mem64, xmm
+	movsd xmm4,QWORD PTR [rcx]
+
+# Tests for op xmm, mem64
+	movlpd QWORD PTR [rcx],xmm4
+	movlps QWORD PTR [rcx],xmm4
+	movhpd QWORD PTR [rcx],xmm4
+	movhps QWORD PTR [rcx],xmm4
+	movsd QWORD PTR [rcx],xmm4
+
+# Tests for op xmm, regq/mem64
+# Tests for op regq/mem64, xmm
+	movd rcx,xmm4
+	movd xmm4,rcx
+	movq rcx,xmm4
+	movq xmm4,rcx
+	movq QWORD PTR [rcx],xmm4
+	movq xmm4,QWORD PTR [rcx]
+
+# Tests for op xmm/mem64, regl
+	cvtsd2si ecx,xmm4
+	cvtsd2si ecx,QWORD PTR [rcx]
+	cvttsd2si ecx,xmm4
+	cvttsd2si ecx,QWORD PTR [rcx]
+
+# Tests for op xmm/mem64, regq
+	cvtsd2si rcx,xmm4
+	cvtsd2si rcx,QWORD PTR [rcx]
+	cvttsd2si rcx,xmm4
+	cvttsd2si rcx,QWORD PTR [rcx]
+
+# Tests for op regq/mem64, xmm[, xmm]
+	cvtsi2sdq xmm4,rcx
+	cvtsi2sdq xmm4,QWORD PTR [rcx]
+	cvtsi2ssq xmm4,rcx
+	cvtsi2ssq xmm4,QWORD PTR [rcx]
+
+# Tests for op imm8, regq/mem64, xmm[, xmm]
+	pinsrq xmm4,rcx,100
+	pinsrq xmm4,QWORD PTR [rcx],100
+
+# Testsf for op imm8, xmm, regq/mem64
+	pextrq rcx,xmm4,100
+	pextrq QWORD PTR [rcx],xmm4,100
+
+# Tests for op mem64, xmm[, xmm]
+	movlpd xmm4,QWORD PTR [rcx]
+	movlps xmm4,QWORD PTR [rcx]
+	movhpd xmm4,QWORD PTR [rcx]
+	movhps xmm4,QWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem64, xmm[, xmm]
+	cmpsd xmm6,xmm4,100
+	cmpsd xmm6,QWORD PTR [rcx],100
+	roundsd xmm6,xmm4,100
+	roundsd xmm6,QWORD PTR [rcx],100
+
+# Tests for op xmm/mem64, xmm[, xmm]
+	addsd xmm6,xmm4
+	addsd xmm6,QWORD PTR [rcx]
+	cvtsd2ss xmm6,xmm4
+	cvtsd2ss xmm6,QWORD PTR [rcx]
+	divsd xmm6,xmm4
+	divsd xmm6,QWORD PTR [rcx]
+	maxsd xmm6,xmm4
+	maxsd xmm6,QWORD PTR [rcx]
+	minsd xmm6,xmm4
+	minsd xmm6,QWORD PTR [rcx]
+	mulsd xmm6,xmm4
+	mulsd xmm6,QWORD PTR [rcx]
+	sqrtsd xmm6,xmm4
+	sqrtsd xmm6,QWORD PTR [rcx]
+	subsd xmm6,xmm4
+	subsd xmm6,QWORD PTR [rcx]
+	cmpeqsd xmm6,xmm4
+	cmpeqsd xmm6,QWORD PTR [rcx]
+	cmpltsd xmm6,xmm4
+	cmpltsd xmm6,QWORD PTR [rcx]
+	cmplesd xmm6,xmm4
+	cmplesd xmm6,QWORD PTR [rcx]
+	cmpunordsd xmm6,xmm4
+	cmpunordsd xmm6,QWORD PTR [rcx]
+	cmpneqsd xmm6,xmm4
+	cmpneqsd xmm6,QWORD PTR [rcx]
+	cmpnltsd xmm6,xmm4
+	cmpnltsd xmm6,QWORD PTR [rcx]
+	cmpnlesd xmm6,xmm4
+	cmpnlesd xmm6,QWORD PTR [rcx]
+	cmpordsd xmm6,xmm4
+	cmpordsd xmm6,QWORD PTR [rcx]
+
+# Tests for op xmm/mem32, xmm[, xmm]
+	addss xmm6,xmm4
+	addss xmm6,DWORD PTR [rcx]
+	cvtss2sd xmm6,xmm4
+	cvtss2sd xmm6,DWORD PTR [rcx]
+	divss xmm6,xmm4
+	divss xmm6,DWORD PTR [rcx]
+	maxss xmm6,xmm4
+	maxss xmm6,DWORD PTR [rcx]
+	minss xmm6,xmm4
+	minss xmm6,DWORD PTR [rcx]
+	mulss xmm6,xmm4
+	mulss xmm6,DWORD PTR [rcx]
+	rcpss xmm6,xmm4
+	rcpss xmm6,DWORD PTR [rcx]
+	rsqrtss xmm6,xmm4
+	rsqrtss xmm6,DWORD PTR [rcx]
+	sqrtss xmm6,xmm4
+	sqrtss xmm6,DWORD PTR [rcx]
+	subss xmm6,xmm4
+	subss xmm6,DWORD PTR [rcx]
+	cmpeqss xmm6,xmm4
+	cmpeqss xmm6,DWORD PTR [rcx]
+	cmpltss xmm6,xmm4
+	cmpltss xmm6,DWORD PTR [rcx]
+	cmpless xmm6,xmm4
+	cmpless xmm6,DWORD PTR [rcx]
+	cmpunordss xmm6,xmm4
+	cmpunordss xmm6,DWORD PTR [rcx]
+	cmpneqss xmm6,xmm4
+	cmpneqss xmm6,DWORD PTR [rcx]
+	cmpnltss xmm6,xmm4
+	cmpnltss xmm6,DWORD PTR [rcx]
+	cmpnless xmm6,xmm4
+	cmpnless xmm6,DWORD PTR [rcx]
+	cmpordss xmm6,xmm4
+	cmpordss xmm6,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, xmm
+	comiss xmm6,xmm4
+	comiss xmm4,DWORD PTR [rcx]
+	pmovsxbd xmm6,xmm4
+	pmovsxbd xmm4,DWORD PTR [rcx]
+	pmovsxwq xmm6,xmm4
+	pmovsxwq xmm4,DWORD PTR [rcx]
+	pmovzxbd xmm6,xmm4
+	pmovzxbd xmm4,DWORD PTR [rcx]
+	pmovzxwq xmm6,xmm4
+	pmovzxwq xmm4,DWORD PTR [rcx]
+	ucomiss xmm6,xmm4
+	ucomiss xmm4,DWORD PTR [rcx]
+
+# Tests for op mem32, xmm
+	movss xmm4,DWORD PTR [rcx]
+
+# Tests for op xmm, mem32
+	movss DWORD PTR [rcx],xmm4
+
+# Tests for op xmm, regl/mem32
+# Tests for op regl/mem32, xmm
+	movd ecx,xmm4
+	movd DWORD PTR [rcx],xmm4
+	movd xmm4,ecx
+	movd xmm4,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, regl
+	cvtss2si ecx,xmm4
+	cvtss2si ecx,DWORD PTR [rcx]
+	cvttss2si ecx,xmm4
+	cvttss2si ecx,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, regq
+	cvtss2si rcx,xmm4
+	cvtss2si rcx,DWORD PTR [rcx]
+	cvttss2si rcx,xmm4
+	cvttss2si rcx,DWORD PTR [rcx]
+
+# Tests for op xmm, regq
+	movmskpd rcx,xmm4
+	movmskps rcx,xmm4
+	pmovmskb rcx,xmm4
+
+# Tests for op imm8, xmm, regq/mem32
+	extractps rcx,xmm4,100
+	extractps DWORD PTR [rcx],xmm4,100
+# Tests for op imm8, xmm, regl/mem32
+	pextrd ecx,xmm4,100
+	pextrd DWORD PTR [rcx],xmm4,100
+	extractps ecx,xmm4,100
+	extractps DWORD PTR [rcx],xmm4,100
+
+# Tests for op regl/mem32, xmm[, xmm]
+	cvtsi2sd xmm4,ecx
+	cvtsi2sd xmm4,DWORD PTR [rcx]
+	cvtsi2ss xmm4,ecx
+	cvtsi2ss xmm4,DWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem32, xmm[, xmm]
+	cmpss xmm6,xmm4,100
+	cmpss xmm6,DWORD PTR [rcx],100
+	insertps xmm6,xmm4,100
+	insertps xmm6,DWORD PTR [rcx],100
+	roundss xmm6,xmm4,100
+	roundss xmm6,DWORD PTR [rcx],100
+
+# Tests for op xmm/m16, xmm
+	pmovsxbq xmm6,xmm4
+	pmovsxbq xmm4,WORD PTR [rcx]
+	pmovzxbq xmm6,xmm4
+	pmovzxbq xmm4,WORD PTR [rcx]
+
+# Tests for op imm8, xmm, regl/mem16
+	pextrw ecx,xmm4,100
+	pextrw WORD PTR [rcx],xmm4,100
+
+# Tests for op imm8, xmm, regq/mem16
+	pextrw rcx,xmm4,100
+	pextrw WORD PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem16, xmm[, xmm]
+	pinsrw xmm4,ecx,100
+	pinsrw xmm4,WORD PTR [rcx],100
+
+
+	pinsrw xmm4,rcx,100
+	pinsrw xmm4,WORD PTR [rcx],100
+
+# Tests for op imm8, xmm, regl/mem8
+	pextrb ecx,xmm4,100
+	pextrb BYTE PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+	pinsrb xmm4,ecx,100
+	pinsrb xmm4,BYTE PTR [rcx],100
+
+# Tests for op imm8, xmm, regq
+	pextrw rcx,xmm4,100
+# Tests for op imm8, xmm, regq/mem8
+	pextrb rcx,xmm4,100
+	pextrb BYTE PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+	pinsrb xmm4,ecx,100
+	pinsrb xmm4,BYTE PTR [rcx],100
+
+# Tests for op xmm, xmm
+	maskmovdqu xmm6,xmm4
+	movq xmm6,xmm4
+
+# Tests for op xmm, regl
+	movmskpd ecx,xmm4
+	movmskps ecx,xmm4
+	pmovmskb ecx,xmm4
+# Tests for op xmm, xmm[, xmm]
+	movhlps xmm6,xmm4
+	movlhps xmm6,xmm4
+	movsd xmm6,xmm4
+	movss xmm6,xmm4
+
+# Tests for op imm8, xmm[, xmm]
+	pslld xmm4,100
+	pslldq xmm4,100
+	psllq xmm4,100
+	psllw xmm4,100
+	psrad xmm4,100
+	psraw xmm4,100
+	psrld xmm4,100
+	psrldq xmm4,100
+	psrlq xmm4,100
+	psrlw xmm4,100
+
+# Tests for op imm8, xmm, regl
+	pextrw ecx,xmm4,100
+
diff --git a/gas/testsuite/gas/ppc/common.d b/gas/testsuite/gas/ppc/common.d
new file mode 100644
index 0000000..d5f3257
--- /dev/null
+++ b/gas/testsuite/gas/ppc/common.d
@@ -0,0 +1,190 @@
+#objdump: -d -Mcom
+#as: -a32 -mcom
+#name: PowerPC COMMON instructions
+
+.*: +file format elf32-powerpc.*
+
+Disassembly of section \.text:
+
+0+00 <start>:
+
+   0:	7c 83 28 39 	and.    r3,r4,r5
+   4:	7c 83 28 38 	and     r3,r4,r5
+   8:	7d cd 78 78 	andc    r13,r14,r15
+   c:	7e 30 90 79 	andc.   r16,r17,r18
+  10:	48 00 00 02 	ba      0 <start>
+  14:	40 01 00 00 	bdnzf-  gt,14 <start\+0x14>
+  18:	40 85 00 02 	blea-   cr1,0 <start>
+  1c:	40 43 00 01 	bdzfl-  so,1c <start\+0x1c>
+  20:	41 47 00 03 	bdztla- 4\*cr1\+so,0 <start>
+  24:	4e 80 04 20 	bctr
+  28:	4e 80 04 21 	bctrl
+  2c:	42 40 00 02 	bdza-   0 <start>
+  30:	42 40 00 00 	bdz-    30 <start\+0x30>
+  34:	42 40 00 03 	bdzla-  0 <start>
+  38:	42 40 00 01 	bdzl-   38 <start\+0x38>
+  3c:	41 82 00 00 	beq-    3c <start\+0x3c>
+  40:	41 8a 00 02 	beqa-   cr2,0 <start>
+  44:	41 86 00 01 	beql-   cr1,44 <start\+0x44>
+  48:	41 8e 00 03 	beqla-  cr3,0 <start>
+  4c:	40 80 00 00 	bge-    4c <start\+0x4c>
+  50:	40 90 00 02 	bgea-   cr4,0 <start>
+  54:	40 88 00 01 	bgel-   cr2,54 <start\+0x54>
+  58:	40 98 00 03 	bgela-  cr6,0 <start>
+  5c:	41 91 00 00 	bgt-    cr4,5c <start\+0x5c>
+  60:	41 99 00 02 	bgta-   cr6,0 <start>
+  64:	41 95 00 01 	bgtl-   cr5,64 <start\+0x64>
+  68:	41 9d 00 03 	bgtla-  cr7,0 <start>
+  6c:	48 00 00 00 	b       6c <start\+0x6c>
+  70:	48 00 00 03 	bla     0 <start>
+  74:	40 81 00 00 	ble-    74 <start\+0x74>
+  78:	40 91 00 02 	blea-   cr4,0 <start>
+  7c:	40 89 00 01 	blel-   cr2,7c <start\+0x7c>
+  80:	40 99 00 03 	blela-  cr6,0 <start>
+  84:	48 00 00 01 	bl      84 <start\+0x84>
+  88:	41 80 00 00 	blt-    88 <start\+0x88>
+  8c:	41 88 00 02 	blta-   cr2,0 <start>
+  90:	41 84 00 01 	bltl-   cr1,90 <start\+0x90>
+  94:	41 8c 00 03 	bltla-  cr3,0 <start>
+  98:	40 82 00 00 	bne-    98 <start\+0x98>
+  9c:	40 8a 00 02 	bnea-   cr2,0 <start>
+  a0:	40 86 00 01 	bnel-   cr1,a0 <start\+0xa0>
+  a4:	40 8e 00 03 	bnela-  cr3,0 <start>
+  a8:	40 85 00 00 	ble-    cr1,a8 <start\+0xa8>
+  ac:	40 95 00 02 	blea-   cr5,0 <start>
+  b0:	40 8d 00 01 	blel-   cr3,b0 <start\+0xb0>
+  b4:	40 9d 00 03 	blela-  cr7,0 <start>
+  b8:	40 84 00 00 	bge-    cr1,b8 <start\+0xb8>
+  bc:	40 94 00 02 	bgea-   cr5,0 <start>
+  c0:	40 8c 00 01 	bgel-   cr3,c0 <start\+0xc0>
+  c4:	40 9c 00 03 	bgela-  cr7,0 <start>
+  c8:	40 93 00 00 	bns-    cr4,c8 <start\+0xc8>
+  cc:	40 9b 00 02 	bnsa-   cr6,0 <start>
+  d0:	40 97 00 01 	bnsl-   cr5,d0 <start\+0xd0>
+  d4:	40 9f 00 03 	bnsla-  cr7,0 <start>
+  d8:	41 93 00 00 	bso-    cr4,d8 <start\+0xd8>
+  dc:	41 9b 00 02 	bsoa-   cr6,0 <start>
+  e0:	41 97 00 01 	bsol-   cr5,e0 <start\+0xe0>
+  e4:	41 9f 00 03 	bsola-  cr7,0 <start>
+  e8:	4c 85 32 02 	crand   4\*cr1\+lt,4\*cr1\+gt,4\*cr1\+eq
+  ec:	4c 64 29 02 	crandc  so,4\*cr1\+lt,4\*cr1\+gt
+  f0:	4c e0 0a 42 	creqv   4\*cr1\+so,lt,gt
+  f4:	4c 22 19 c2 	crnand  gt,eq,so
+  f8:	4c 01 10 42 	crnor   lt,gt,eq
+  fc:	4c a6 3b 82 	cror    4\*cr1\+gt,4\*cr1\+eq,4\*cr1\+so
+ 100:	4c 43 23 42 	crorc   eq,so,4\*cr1\+lt
+ 104:	4c c7 01 82 	crxor   4\*cr1\+eq,4\*cr1\+so,lt
+ 108:	7d 6a 62 39 	eqv.    r10,r11,r12
+ 10c:	7d 6a 62 38 	eqv     r10,r11,r12
+ 110:	fe a0 fa 11 	fabs.   f21,f31
+ 114:	fe a0 fa 10 	fabs    f21,f31
+ 118:	fd 8a 58 40 	fcmpo   cr3,f10,f11
+ 11c:	fd 84 28 00 	fcmpu   cr3,f4,f5
+ 120:	fc 60 20 91 	fmr.    f3,f4
+ 124:	fc 60 20 90 	fmr     f3,f4
+ 128:	fe 80 f1 11 	fnabs.  f20,f30
+ 12c:	fe 80 f1 10 	fnabs   f20,f30
+ 130:	fc 60 20 51 	fneg.   f3,f4
+ 134:	fc 60 20 50 	fneg    f3,f4
+ 138:	fc c0 38 18 	frsp    f6,f7
+ 13c:	fd 00 48 19 	frsp.   f8,f9
+ 140:	89 21 00 00 	lbz     r9,0\(r1\)
+ 144:	8d 41 00 01 	lbzu    r10,1\(r1\)
+ 148:	7e 95 b0 ee 	lbzux   r20,r21,r22
+ 14c:	7c 64 28 ae 	lbzx    r3,r4,r5
+ 150:	ca a1 00 08 	lfd     f21,8\(r1\)
+ 154:	ce c1 00 10 	lfdu    f22,16\(r1\)
+ 158:	7e 95 b4 ee 	lfdux   f20,r21,r22
+ 15c:	7d ae 7c ae 	lfdx    f13,r14,r15
+ 160:	c2 61 00 00 	lfs     f19,0\(r1\)
+ 164:	c6 81 00 04 	lfsu    f20,4\(r1\)
+ 168:	7d 4b 64 6e 	lfsux   f10,r11,r12
+ 16c:	7d 4b 64 2e 	lfsx    f10,r11,r12
+ 170:	a9 e1 00 06 	lha     r15,6\(r1\)
+ 174:	ae 01 00 08 	lhau    r16,8\(r1\)
+ 178:	7d 2a 5a ee 	lhaux   r9,r10,r11
+ 17c:	7d 2a 5a ae 	lhax    r9,r10,r11
+ 180:	7c 64 2e 2c 	lhbrx   r3,r4,r5
+ 184:	a1 a1 00 00 	lhz     r13,0\(r1\)
+ 188:	a5 c1 00 02 	lhzu    r14,2\(r1\)
+ 18c:	7e 96 c2 6e 	lhzux   r20,r22,r24
+ 190:	7e f8 ca 2e 	lhzx    r23,r24,r25
+ 194:	4c 04 00 00 	mcrf    cr0,cr1
+ 198:	fd 90 00 80 	mcrfs   cr3,cr4
+ 19c:	7d 80 04 00 	mcrxr   cr3
+ 1a0:	7c 60 00 26 	mfcr    r3
+ 1a4:	7c 69 02 a6 	mfctr   r3
+ 1a8:	7c b3 02 a6 	mfdar   r5
+ 1ac:	7c 92 02 a6 	mfdsisr r4
+ 1b0:	ff c0 04 8e 	mffs    f30
+ 1b4:	ff e0 04 8f 	mffs.   f31
+ 1b8:	7c 48 02 a6 	mflr    r2
+ 1bc:	7e 60 00 a6 	mfmsr   r19
+ 1c0:	7c 78 00 26 	mfocrf  r3,128
+ 1c4:	7c 25 02 a6 	mfrtcl  r1
+ 1c8:	7c 04 02 a6 	mfrtcu  r0
+ 1cc:	7c d9 02 a6 	mfsdr1  r6
+ 1d0:	7c 60 22 a6 	mfspr   r3,128
+ 1d4:	7c fa 02 a6 	mfsrr0  r7
+ 1d8:	7d 1b 02 a6 	mfsrr1  r8
+ 1dc:	7f c1 02 a6 	mfxer   r30
+ 1e0:	7f fe fb 79 	mr.     r30,r31
+ 1e4:	7f fe fb 78 	mr      r30,r31
+ 1e8:	7c 6f f1 20 	mtcr    r3
+ 1ec:	7c 68 01 20 	mtcrf   128,r3
+ 1f0:	7e 69 03 a6 	mtctr   r19
+ 1f4:	7e b3 03 a6 	mtdar   r21
+ 1f8:	7f 16 03 a6 	mtdec   r24
+ 1fc:	7e 92 03 a6 	mtdsisr r20
+ 200:	fc 60 00 8d 	mtfsb0. so
+ 204:	fc 60 00 8c 	mtfsb0  so
+ 208:	fc 60 00 4d 	mtfsb1. so
+ 20c:	fc 60 00 4c 	mtfsb1  so
+ 210:	fc 0c 55 8e 	mtfsf   6,f10
+ 214:	fc 0c 5d 8f 	mtfsf.  6,f11
+ 218:	ff 00 01 0c 	mtfsfi  6,0
+ 21c:	ff 00 f1 0d 	mtfsfi. 6,15
+ 220:	7e 48 03 a6 	mtlr    r18
+ 224:	7d 40 01 24 	mtmsr   r10
+ 228:	7c 78 01 20 	mtocrf  128,r3
+ 22c:	7e f5 03 a6 	mtrtcl  r23
+ 230:	7e d4 03 a6 	mtrtcu  r22
+ 234:	7f 39 03 a6 	mtsdr1  r25
+ 238:	7c 60 23 a6 	mtspr   128,r3
+ 23c:	7f 5a 03 a6 	mtsrr0  r26
+ 240:	7f 7b 03 a6 	mtsrr1  r27
+ 244:	7e 21 03 a6 	mtxer   r17
+ 248:	7f bc f3 b9 	nand.   r28,r29,r30
+ 24c:	7f bc f3 b8 	nand    r28,r29,r30
+ 250:	7c 64 00 d1 	neg.    r3,r4
+ 254:	7c 64 00 d0 	neg     r3,r4
+ 258:	7e 11 04 d0 	nego    r16,r17
+ 25c:	7e 53 04 d1 	nego.   r18,r19
+ 260:	7e b4 b0 f9 	nor.    r20,r21,r22
+ 264:	7e b4 b0 f8 	nor     r20,r21,r22
+ 268:	7e b4 a8 f9 	not.    r20,r21
+ 26c:	7e b4 a8 f8 	not     r20,r21
+ 270:	7c 40 23 78 	or      r0,r2,r4
+ 274:	7d cc 83 79 	or.     r12,r14,r16
+ 278:	7e 0f 8b 38 	orc     r15,r16,r17
+ 27c:	7e 72 a3 39 	orc.    r18,r19,r20
+ 280:	4c 00 00 64 	rfi
+ 284:	99 61 00 02 	stb     r11,2\(r1\)
+ 288:	9d 81 00 03 	stbu    r12,3\(r1\)
+ 28c:	7d ae 79 ee 	stbux   r13,r14,r15
+ 290:	7c 64 29 ae 	stbx    r3,r4,r5
+ 294:	db 21 00 20 	stfd    f25,32\(r1\)
+ 298:	df 41 00 28 	stfdu   f26,40\(r1\)
+ 29c:	7c 01 15 ee 	stfdux  f0,r1,r2
+ 2a0:	7f be fd ae 	stfdx   f29,r30,r31
+ 2a4:	d2 e1 00 14 	stfs    f23,20\(r1\)
+ 2a8:	d7 01 00 18 	stfsu   f24,24\(r1\)
+ 2ac:	7f 5b e5 6e 	stfsux  f26,r27,r28
+ 2b0:	7e f8 cd 2e 	stfsx   f23,r24,r25
+ 2b4:	b2 21 00 0a 	sth     r17,10\(r1\)
+ 2b8:	7c c7 47 2c 	sthbrx  r6,r7,r8
+ 2bc:	b6 41 00 0c 	sthu    r18,12\(r1\)
+ 2c0:	7e b6 bb 6e 	sthux   r21,r22,r23
+ 2c4:	7d 8d 73 2e 	sthx    r12,r13,r14
+ 2c8:	7f dd fa 79 	xor.    r29,r30,r31
+ 2cc:	7f dd fa 78 	xor     r29,r30,r31
diff --git a/gas/testsuite/gas/ppc/common.s b/gas/testsuite/gas/ppc/common.s
new file mode 100644
index 0000000..d079cb2
--- /dev/null
+++ b/gas/testsuite/gas/ppc/common.s
@@ -0,0 +1,182 @@
+	.section ".text"
+start:
+	and.	3,4,5
+	and	3,4,5
+	andc	13,14,15
+	andc.	16,17,18
+	ba	label_abs
+	bc	0,1,foo
+	bca	4,5,foo_abs
+	bcl	2,3,foo
+	bcla	10,7,foo_abs
+	bctr
+	bctrl
+	bdza	foo_abs
+	bdz	foo
+	bdzla	foo_abs
+	bdzl	foo
+	beq	0,foo
+	beqa	2,foo_abs
+	beql	1,foo
+	beqla	3,foo_abs
+	bge	0,foo
+	bgea	4,foo_abs
+	bgel	2,foo
+	bgela	6,foo_abs
+	bgt	4,foo
+	bgta	6,foo_abs
+	bgtl	5,foo
+	bgtla	7,foo_abs
+	b	label
+	bla	label_abs
+	ble	0,foo
+	blea	4,foo
+	blel	2,foo
+	blela	6,foo_abs
+	bl	label
+	blt	0,foo
+	blta	2,foo_abs
+	bltl	1,foo
+	bltla	3,foo_abs
+	bne	0,foo
+	bnea	2,foo
+	bnel	1,foo
+	bnela	3,foo_abs
+	bng	1,foo
+	bnga	5,foo_abs
+	bngl	3,foo
+	bngla	7,foo_abs
+	bnl	1,foo
+	bnla	5,foo_abs
+	bnll	3,foo
+	bnlla	7,foo_abs
+	bns	4,foo
+	bnsa	6,foo_abs
+	bnsl	5,foo
+	bnsla	7,foo_abs
+	bso	4,foo
+	bsoa	6,foo_abs
+	bsol	5,foo
+	bsola	7,foo_abs
+	crand	4,5,6
+	crandc	3,4,5
+	creqv	7,0,1
+	crnand	1,2,3
+	crnor	0,1,2
+	cror	5,6,7
+	crorc	2,3,4
+	crxor	6,7,0
+	eqv.	10,11,12
+	eqv	10,11,12
+	fabs.	21,31
+	fabs	21,31
+	fcmpo	3,10,11
+	fcmpu	3,4,5
+	fmr.	3,4
+	fmr	3,4
+	fnabs.	20,30
+	fnabs	20,30
+	fneg.	3,4
+	fneg	3,4
+	frsp	6,7
+	frsp.	8,9
+	lbz	9,0(1)
+	lbzu	10,1(1)
+	lbzux	20,21,22
+	lbzx	3,4,5
+	lfd	21,8(1)
+	lfdu	22,16(1)
+	lfdux	20,21,22
+	lfdx	13,14,15
+	lfs	19,0(1)
+	lfsu	20,4(1)
+	lfsux	10,11,12
+	lfsx	10,11,12
+	lha	15,6(1)
+	lhau	16,8(1)
+	lhaux	9,10,11
+	lhax	9,10,11
+	lhbrx	3,4,5
+	lhz	13,0(1)
+	lhzu	14,2(1)
+	lhzux	20,22,24
+	lhzx	23,24,25
+	mcrf	0,1
+	mcrfs	3,4
+	mcrxr	3
+	mfcr	3
+	mfctr	3
+	mfdar	5
+	mfdsisr	4
+	mffs	30
+	mffs.	31
+	mflr	2
+	mfmsr	19
+	mfocrf	3,0x80
+	mfrtcl	1
+	mfrtcu	0
+	mfsdr1	6
+	mfspr	3,0x80
+	mfsrr0	7
+	mfsrr1	8
+	mfxer	30
+	mr.	30,31
+	mr	30,31
+	mtcr	3
+	mtcrf	0x80,3
+	mtctr	19
+	mtdar	21
+	mtdec	24
+	mtdsisr	20
+	mtfsb0.	3
+	mtfsb0	3
+	mtfsb1.	3
+	mtfsb1	3
+	mtfsf	6,10
+	mtfsf.	6,11
+	mtfsfi	6,0
+	mtfsfi.	6,15
+	mtlr	18
+	mtmsr	10
+	mtocrf	0x80,3
+	mtrtcl	23
+	mtrtcu	22
+	mtsdr1	25
+	mtspr	0x80,3
+	mtsrr0	26
+	mtsrr1	27
+	mtxer	17
+	nand.	28,29,30
+	nand	28,29,30
+	neg.	3,4
+	neg	3,4
+	nego	16,17
+	nego.	18,19
+	nor.	20,21,22
+	nor	20,21,22
+	not.	20,21
+	not	20,21
+	or	0,2,4
+	or.	12,14,16
+	orc	15,16,17
+	orc.	18,19,20
+	rfi
+	stb	11,2(1)
+	stbu	12,3(1)
+	stbux	13,14,15
+	stbx	3,4,5
+	stfd	25,32(1)
+	stfdu	26,40(1)
+	stfdux	0,1,2
+	stfdx	29,30,31
+	stfs	23,20(1)
+	stfsu	24,24(1)
+	stfsux	26,27,28
+	stfsx	23,24,25
+	sth	17,10(1)
+	sthbrx	6,7,8
+	sthu	18,12(1)
+	sthux	21,22,23
+	sthx	12,13,14
+	xor.	29,30,31
+	xor	29,30,31
diff --git a/gas/testsuite/gas/ppc/power4_32.d b/gas/testsuite/gas/ppc/power4_32.d
new file mode 100644
index 0000000..bd5170f
--- /dev/null
+++ b/gas/testsuite/gas/ppc/power4_32.d
@@ -0,0 +1,43 @@
+#objdump: -d -Mpower4
+#as: -a32 -mpower4
+#name: Power4 instructions
+
+.*: +file format elf32-powerpc.*
+
+Disassembly of section \.text:
+
+0+00 <start>:
+   0:	80 c7 00 00 	lwz     r6,0\(r7\)
+   4:	80 c7 00 10 	lwz     r6,16\(r7\)
+   8:	80 c7 ff f0 	lwz     r6,-16\(r7\)
+   c:	80 c7 80 00 	lwz     r6,-32768\(r7\)
+  10:	80 c7 7f f0 	lwz     r6,32752\(r7\)
+  14:	90 c7 00 00 	stw     r6,0\(r7\)
+  18:	90 c7 00 10 	stw     r6,16\(r7\)
+  1c:	90 c7 ff f0 	stw     r6,-16\(r7\)
+  20:	90 c7 80 00 	stw     r6,-32768\(r7\)
+  24:	90 c7 7f f0 	stw     r6,32752\(r7\)
+  28:	00 00 02 00 	attn
+  2c:	7c 6f f1 20 	mtcr    r3
+  30:	7c 6f f1 20 	mtcr    r3
+  34:	7c 68 11 20 	mtcrf   129,r3
+  38:	7c 70 11 20 	mtocrf  1,r3
+  3c:	7c 70 21 20 	mtocrf  2,r3
+  40:	7c 70 41 20 	mtocrf  4,r3
+  44:	7c 70 81 20 	mtocrf  8,r3
+  48:	7c 71 01 20 	mtocrf  16,r3
+  4c:	7c 72 01 20 	mtocrf  32,r3
+  50:	7c 74 01 20 	mtocrf  64,r3
+  54:	7c 78 01 20 	mtocrf  128,r3
+  58:	7c 60 00 26 	mfcr    r3
+  5c:	7c 70 10 26 	mfocrf  r3,1
+  60:	7c 70 20 26 	mfocrf  r3,2
+  64:	7c 70 40 26 	mfocrf  r3,4
+  68:	7c 70 80 26 	mfocrf  r3,8
+  6c:	7c 71 00 26 	mfocrf  r3,16
+  70:	7c 72 00 26 	mfocrf  r3,32
+  74:	7c 74 00 26 	mfocrf  r3,64
+  78:	7c 78 00 26 	mfocrf  r3,128
+  7c:	7c 01 17 ec 	dcbz    r1,r2
+  80:	7c 23 27 ec 	dcbzl   r3,r4
+  84:	7c 05 37 ec 	dcbz    r5,r6
diff --git a/gas/testsuite/gas/ppc/power4_32.s b/gas/testsuite/gas/ppc/power4_32.s
new file mode 100644
index 0000000..88861a4
--- /dev/null
+++ b/gas/testsuite/gas/ppc/power4_32.s
@@ -0,0 +1,36 @@
+	.section ".text"
+start:
+	lwz	6,0(7)
+	lwz	6,16(7)
+	lwz	6,-16(7)
+	lwz	6,-32768(7)
+	lwz	6,32752(7)
+	stw	6,0(7)
+	stw	6,16(7)
+	stw	6,-16(7)
+	stw	6,-32768(7)
+	stw	6,32752(7)
+	attn
+	mtcr	3
+	mtcrf	0xff,3
+	mtcrf	0x81,3
+	mtcrf	0x01,3
+	mtcrf	0x02,3
+	mtcrf	0x04,3
+	mtcrf	0x08,3
+	mtcrf	0x10,3
+	mtcrf	0x20,3
+	mtcrf	0x40,3
+	mtcrf	0x80,3
+	mfcr	3
+	mfcr	3,0x01
+	mfcr	3,0x02
+	mfcr	3,0x04
+	mfcr	3,0x08
+	mfcr	3,0x10
+	mfcr	3,0x20
+	mfcr	3,0x40
+	mfcr	3,0x80
+	dcbz    1, 2
+	dcbzl   3, 4
+	dcbz    5, 6
diff --git a/gas/testsuite/gas/ppc/power6.d b/gas/testsuite/gas/ppc/power6.d
index 2048823..d35a827 100644
--- a/gas/testsuite/gas/ppc/power6.d
+++ b/gas/testsuite/gas/ppc/power6.d
@@ -28,4 +28,27 @@
   48:	7e 08 3a ac 	dstt    r8,r7,0
   4c:	7c 65 32 ec 	dstst   r5,r6,3
   50:	7e 44 2a ec 	dststt  r4,r5,2
-
+  54:	00 00 02 00 	attn
+  58:	7c 6f f1 20 	mtcr    r3
+  5c:	7c 6f f1 20 	mtcr    r3
+  60:	7c 68 11 20 	mtcrf   129,r3
+  64:	7c 70 11 20 	mtocrf  1,r3
+  68:	7c 70 21 20 	mtocrf  2,r3
+  6c:	7c 70 41 20 	mtocrf  4,r3
+  70:	7c 70 81 20 	mtocrf  8,r3
+  74:	7c 71 01 20 	mtocrf  16,r3
+  78:	7c 72 01 20 	mtocrf  32,r3
+  7c:	7c 74 01 20 	mtocrf  64,r3
+  80:	7c 78 01 20 	mtocrf  128,r3
+  84:	7c 60 00 26 	mfcr    r3
+  88:	7c 70 10 26 	mfocrf  r3,1
+  8c:	7c 70 20 26 	mfocrf  r3,2
+  90:	7c 70 40 26 	mfocrf  r3,4
+  94:	7c 70 80 26 	mfocrf  r3,8
+  98:	7c 71 00 26 	mfocrf  r3,16
+  9c:	7c 72 00 26 	mfocrf  r3,32
+  a0:	7c 74 00 26 	mfocrf  r3,64
+  a4:	7c 78 00 26 	mfocrf  r3,128
+  a8:	7c 01 17 ec 	dcbz    r1,r2
+  ac:	7c 23 27 ec 	dcbzl   r3,r4
+  b0:	7c 05 37 ec 	dcbz    r5,r6
diff --git a/gas/testsuite/gas/ppc/power6.s b/gas/testsuite/gas/ppc/power6.s
index 30cb7ef..c84488a 100644
--- a/gas/testsuite/gas/ppc/power6.s
+++ b/gas/testsuite/gas/ppc/power6.s
@@ -23,3 +23,27 @@
 	dstt	8,7,0
 	dstst	5,6,3
 	dststt	4,5,2
+	attn
+	mtcr    3
+	mtcrf   0xff,3
+	mtcrf   0x81,3
+	mtcrf   0x01,3
+	mtcrf   0x02,3
+	mtcrf   0x04,3
+	mtcrf   0x08,3
+	mtcrf   0x10,3
+	mtcrf   0x20,3
+	mtcrf   0x40,3
+	mtcrf   0x80,3
+	mfcr    3
+	mfcr    3,0x01
+	mfcr    3,0x02
+	mfcr    3,0x04
+	mfcr    3,0x08
+	mfcr    3,0x10
+	mfcr    3,0x20
+	mfcr    3,0x40
+	mfcr    3,0x80
+	dcbz    1, 2
+	dcbzl   3, 4
+	dcbz    5, 6
diff --git a/gas/testsuite/gas/ppc/ppc.exp b/gas/testsuite/gas/ppc/ppc.exp
index 90a5cff..a04431a 100644
--- a/gas/testsuite/gas/ppc/ppc.exp
+++ b/gas/testsuite/gas/ppc/ppc.exp
@@ -45,6 +45,8 @@
 	run_dump_test "ppc750ps"
 	run_dump_test "e500mc"
 	run_dump_test "cell"
+	run_dump_test "common"
+	run_dump_test "power4_32"
 	run_dump_test "power6"
 	run_dump_test "power7"
     }
diff --git a/gas/testsuite/gas/s390/esa-g5.d b/gas/testsuite/gas/s390/esa-g5.d
index dd2defe..30cbc08 100644
--- a/gas/testsuite/gas/s390/esa-g5.d
+++ b/gas/testsuite/gas/s390/esa-g5.d
@@ -107,6 +107,9 @@
 .*:	b3 99 50 69 [	 ]*cfdbr	%r6,5,%f9
 .*:	b3 98 50 69 [	 ]*cfebr	%r6,5,%f9
 .*:	b3 9a 50 69 [	 ]*cfxbr	%r6,5,%f9
+.*:	b3 b9 90 65 [	 ]*cfdr	%r6,9,%f5
+.*:	b3 b8 90 65 [	 ]*cfer	%r6,9,%f5
+.*:	b3 ba 90 65 [	 ]*cfxr	%r6,9,%f5
 .*:	49 65 af ff [	 ]*ch	%r6,4095\(%r5,%r10\)
 .*:	a7 6e 80 01 [	 ]*chi	%r6,-32767
 .*:	b2 41 00 69 [	 ]*cksm	%r6,%r9
@@ -176,27 +179,27 @@
 .*:	b2 21 00 69 [	 ]*ipte	%r6,%r9
 .*:	b2 29 00 69 [	 ]*iske	%r6,%r9
 .*:	b2 23 00 69 [	 ]*ivsk	%r6,%r9
-.*:	a7 f4 00 00 [	 ]*j	268 <foo\+0x268>
-.*:	a7 84 00 00 [	 ]*je	26c <foo\+0x26c>
-.*:	a7 24 00 00 [	 ]*jh	270 <foo\+0x270>
-.*:	a7 a4 00 00 [	 ]*jhe	274 <foo\+0x274>
-.*:	a7 44 00 00 [	 ]*jl	278 <foo\+0x278>
-.*:	a7 c4 00 00 [	 ]*jle	27c <foo\+0x27c>
-.*:	a7 64 00 00 [	 ]*jlh	280 <foo\+0x280>
+.*:	a7 f4 00 00 [	 ]*j	274 <foo\+0x274>
+.*:	a7 84 00 00 [	 ]*je	278 <foo\+0x278>
+.*:	a7 24 00 00 [	 ]*jh	27c <foo\+0x27c>
+.*:	a7 a4 00 00 [	 ]*jhe	280 <foo\+0x280>
 .*:	a7 44 00 00 [	 ]*jl	284 <foo\+0x284>
-.*:	a7 74 00 00 [	 ]*jne	288 <foo\+0x288>
-.*:	a7 d4 00 00 [	 ]*jnh	28c <foo\+0x28c>
-.*:	a7 54 00 00 [	 ]*jnhe	290 <foo\+0x290>
-.*:	a7 b4 00 00 [	 ]*jnl	294 <foo\+0x294>
-.*:	a7 34 00 00 [	 ]*jnle	298 <foo\+0x298>
-.*:	a7 94 00 00 [	 ]*jnlh	29c <foo\+0x29c>
+.*:	a7 c4 00 00 [	 ]*jle	288 <foo\+0x288>
+.*:	a7 64 00 00 [	 ]*jlh	28c <foo\+0x28c>
+.*:	a7 44 00 00 [	 ]*jl	290 <foo\+0x290>
+.*:	a7 74 00 00 [	 ]*jne	294 <foo\+0x294>
+.*:	a7 d4 00 00 [	 ]*jnh	298 <foo\+0x298>
+.*:	a7 54 00 00 [	 ]*jnhe	29c <foo\+0x29c>
 .*:	a7 b4 00 00 [	 ]*jnl	2a0 <foo\+0x2a0>
-.*:	a7 e4 00 00 [	 ]*jno	2a4 <foo\+0x2a4>
-.*:	a7 d4 00 00 [	 ]*jnh	2a8 <foo\+0x2a8>
-.*:	a7 74 00 00 [	 ]*jne	2ac <foo\+0x2ac>
-.*:	a7 14 00 00 [	 ]*jo	2b0 <foo\+0x2b0>
-.*:	a7 24 00 00 [	 ]*jh	2b4 <foo\+0x2b4>
-.*:	a7 84 00 00 [	 ]*je	2b8 <foo\+0x2b8>
+.*:	a7 34 00 00 [	 ]*jnle	2a4 <foo\+0x2a4>
+.*:	a7 94 00 00 [	 ]*jnlh	2a8 <foo\+0x2a8>
+.*:	a7 b4 00 00 [	 ]*jnl	2ac <foo\+0x2ac>
+.*:	a7 e4 00 00 [	 ]*jno	2b0 <foo\+0x2b0>
+.*:	a7 d4 00 00 [	 ]*jnh	2b4 <foo\+0x2b4>
+.*:	a7 74 00 00 [	 ]*jne	2b8 <foo\+0x2b8>
+.*:	a7 14 00 00 [	 ]*jo	2bc <foo\+0x2bc>
+.*:	a7 24 00 00 [	 ]*jh	2c0 <foo\+0x2c0>
+.*:	a7 84 00 00 [	 ]*je	2c4 <foo\+0x2c4>
 .*:	ed 65 af ff 00 18 [	 ]*kdb	%f6,4095\(%r5,%r10\)
 .*:	b3 18 00 69 [	 ]*kdbr	%f6,%f9
 .*:	ed 65 af ff 00 08 [	 ]*keb	%f6,4095\(%r5,%r10\)
@@ -388,6 +391,7 @@
 .*:	b3 15 00 69 [	 ]*sqdbr	%f6,%f9
 .*:	b2 44 00 69 [	 ]*sqdr	%f6,%f9
 .*:	ed 65 af ff 00 34 [	 ]*sqe	%f6,4095\(%r5,%r10\)
+.*:	ed 65 af ff 00 35 [	 ]*sqd	%f6,4095\(%r5,%r10\)
 .*:	ed 65 af ff 00 14 [	 ]*sqeb	%f6,4095\(%r5,%r10\)
 .*:	b3 14 00 69 [	 ]*sqebr	%f6,%f9
 .*:	b2 45 00 69 [	 ]*sqer	%f6,%f9
@@ -443,8 +447,8 @@
 .*:	ed 65 af ff 00 11 [	 ]*tcdb	%f6,4095\(%r5,%r10\)
 .*:	ed 65 af ff 00 10 [	 ]*tceb	%f6,4095\(%r5,%r10\)
 .*:	ed 65 af ff 00 12 [	 ]*tcxb	%f6,4095\(%r5,%r10\)
-.*:	b3 58 00 69 [	 ]*thder	%r6,%r9
-.*:	b3 59 00 69 [	 ]*thdr	%r6,%r9
+.*:	b3 58 00 69 [	 ]*thder	%f6,%f9
+.*:	b3 59 00 69 [	 ]*thdr	%f6,%f9
 .*:	91 ff 5f ff [	 ]*tm	4095\(%r5\),255
 .*:	a7 60 ff ff [	 ]*tmh	%r6,65535
 .*:	a7 61 ff ff [	 ]*tml	%r6,65535
@@ -475,3 +479,4 @@
 .*:	17 69 [	 ]*xr	%r6,%r9
 .*:	b2 76 00 00 [	 ]*xsch
 .*:	f8 58 5f ff af ff [	 ]*zap	4095\(6,%r5\),4095\(9,%r10\)
+.*:	07 07 [ 	]*bcr	0,%r7
diff --git a/gas/testsuite/gas/s390/esa-g5.s b/gas/testsuite/gas/s390/esa-g5.s
index b3be827..b74140c 100644
--- a/gas/testsuite/gas/s390/esa-g5.s
+++ b/gas/testsuite/gas/s390/esa-g5.s
@@ -101,6 +101,9 @@
 	cfdbr	%r6,5,%f9
 	cfebr	%r6,5,%f9
 	cfxbr	%r6,5,%f9
+	cfdr	%r6,9,%f5
+	cfer	%r6,9,%f5
+	cfxr	%r6,9,%f5
 	ch	%r6,4095(%r5,%r10)
 	chi	%r6,-32767
 	cksm	%r6,%r9
@@ -382,6 +385,7 @@
 	sqdbr	%f6,%f9
 	sqdr	%f6,%f9
 	sqe	%f6,4095(%r5,%r10)
+	sqd	%f6,4095(%r5,%r10)
 	sqeb	%f6,4095(%r5,%r10)
 	sqebr	%f6,%f9
 	sqer	%f6,%f9
@@ -437,8 +441,8 @@
 	tcdb	%f6,4095(%r5,%r10)
 	tceb	%f6,4095(%r5,%r10)
 	tcxb	%f6,4095(%r5,%r10)
-	thder	%r6,%r9
-	thdr	%r6,%r9
+	thder	%f6,%f9
+	thdr	%f6,%f9
 	tm	4095(%r5),255
 	tmh	%r6,65535
 	tml	%r6,65535
diff --git a/gas/testsuite/gas/s390/esa-z990.d b/gas/testsuite/gas/s390/esa-z990.d
index 583942e..484c5af 100644
--- a/gas/testsuite/gas/s390/esa-z990.d
+++ b/gas/testsuite/gas/s390/esa-z990.d
@@ -11,3 +11,5 @@
 .*:	b9 3e 00 69 [	 ]*kimd	%r6,%r9
 .*:	b9 3f 00 69 [	 ]*klmd	%r6,%r9
 .*:	b9 1e 00 69 [	 ]*kmac	%r6,%r9
+.*:	eb 69 50 00 80 8f [	 ]*clclu	%r6,%r9,-524288\(%r5\)
+.*:	07 07 [ 	]*bcr	0,%r7
diff --git a/gas/testsuite/gas/s390/esa-z990.s b/gas/testsuite/gas/s390/esa-z990.s
index b06a77a..2156e83 100644
--- a/gas/testsuite/gas/s390/esa-z990.s
+++ b/gas/testsuite/gas/s390/esa-z990.s
@@ -5,3 +5,4 @@
 	kimd	%r6,%r9
 	klmd	%r6,%r9
 	kmac	%r6,%r9
+	clclu	%r6,%r9,-524288(%r5)
diff --git a/gas/testsuite/gas/s390/zarch-z900.d b/gas/testsuite/gas/s390/zarch-z900.d
index d9f4785..f33e43c 100644
--- a/gas/testsuite/gas/s390/zarch-z900.d
+++ b/gas/testsuite/gas/s390/zarch-z900.d
@@ -29,9 +29,6 @@
 .*:	eb 96 5f ff 00 3e [ 	]*cdsg	%r9,%r6,4095\(%r5\)
 .*:	b3 a4 00 96 [ 	]*cegbr	%f9,%r6
 .*:	b3 c4 00 96 [ 	]*cegr	%f9,%r6
-.*:	b3 b9 90 65 [	 ]*cfdr	%r6,9,%f5
-.*:	b3 b8 90 65 [	 ]*cfer	%r6,9,%f5
-.*:	b3 ba 90 65 [	 ]*cfxr	%r6,9,%f5
 .*:	e3 95 af ff 00 20 [ 	]*cg	%r9,4095\(%r5,%r10\)
 .*:	b3 a9 f0 65 [ 	]*cgdbr	%r6,15,%f5
 .*:	b3 c9 f0 65 [ 	]*cgdr	%r6,15,%f5
diff --git a/gas/testsuite/gas/s390/zarch-z900.s b/gas/testsuite/gas/s390/zarch-z900.s
index 3251701..721244a 100644
--- a/gas/testsuite/gas/s390/zarch-z900.s
+++ b/gas/testsuite/gas/s390/zarch-z900.s
@@ -23,9 +23,6 @@
 	cdsg	%r9,%r6,4095(%r5)
 	cegbr	%f9,%r6
 	cegr	%f9,%r6
-	cfdr	%r6,9,%f5
-	cfer	%r6,9,%f5
-	cfxr	%r6,9,%f5
 	cg	%r9,4095(%r5,%r10)
 	cgdbr	%r6,15,%f5
 	cgdr	%r6,15,%f5
diff --git a/gas/testsuite/gas/s390/zarch-z990.d b/gas/testsuite/gas/s390/zarch-z990.d
index c4a7f36..dede971 100644
--- a/gas/testsuite/gas/s390/zarch-z990.d
+++ b/gas/testsuite/gas/s390/zarch-z990.d
@@ -23,7 +23,6 @@
 .*:	e3 65 a0 00 80 20 [	 ]*cg	%r6,-524288\(%r5,%r10\)
 .*:	e3 65 a0 00 80 30 [	 ]*cgf	%r6,-524288\(%r5,%r10\)
 .*:	e3 65 a0 00 80 79 [	 ]*chy	%r6,-524288\(%r5,%r10\)
-.*:	eb 69 50 00 80 8f [	 ]*clclu	%r6,%r9,-524288\(%r5\)
 .*:	e3 65 a0 00 80 21 [	 ]*clg	%r6,-524288\(%r5,%r10\)
 .*:	e3 65 a0 00 80 31 [	 ]*clgf	%r6,-524288\(%r5,%r10\)
 .*:	eb ff 50 00 80 55 [	 ]*cliy	-524288\(%r5\),255
@@ -129,4 +128,3 @@
 .*:	e3 65 a0 00 80 82 [	 ]*xg	%r6,-524288\(%r5,%r10\)
 .*:	eb ff 50 00 80 57 [	 ]*xiy	-524288\(%r5\),255
 .*:	e3 65 a0 00 80 57 [	 ]*xy	%r6,-524288\(%r5,%r10\)
-.*:	07 07 [	 ]*bcr	0,%r7
diff --git a/gas/testsuite/gas/s390/zarch-z990.s b/gas/testsuite/gas/s390/zarch-z990.s
index a53716d..db2dece 100644
--- a/gas/testsuite/gas/s390/zarch-z990.s
+++ b/gas/testsuite/gas/s390/zarch-z990.s
@@ -17,7 +17,6 @@
 	cg	%r6,-524288(%r5,%r10)
 	cgf	%r6,-524288(%r5,%r10)
 	chy	%r6,-524288(%r5,%r10)
-	clclu	%r6,%r9,-524288(%r5)
 	clg	%r6,-524288(%r5,%r10)
 	clgf	%r6,-524288(%r5,%r10)
 	cliy	-524288(%r5),255
diff --git a/gas/testsuite/gas/z80/arith.d b/gas/testsuite/gas/z80/arith.d
new file mode 100644
index 0000000..3a6781c
--- /dev/null
+++ b/gas/testsuite/gas/z80/arith.d
@@ -0,0 +1,149 @@
+#objdump: -d
+#name: arithmetic and logic
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+[ 	]+[0-9a-f]+:[ 	]+87[ 	]+add a,a
+[ 	]+[0-9a-f]+:[ 	]+80[ 	]+add a,b
+[ 	]+[0-9a-f]+:[ 	]+81[ 	]+add a,c
+[ 	]+[0-9a-f]+:[ 	]+82[ 	]+add a,d
+[ 	]+[0-9a-f]+:[ 	]+83[ 	]+add a,e
+[ 	]+[0-9a-f]+:[ 	]+84[ 	]+add a,h
+[ 	]+[0-9a-f]+:[ 	]+85[ 	]+add a,l
+[ 	]+[0-9a-f]+:[ 	]+86[ 	]+add a,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 86 05[ 	]+add a,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 86 05[ 	]+add a,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+c6 11[ 	]+add a,0x11
+[ 	]+[0-9a-f]+:[ 	]+8f[ 	]+adc a,a
+[ 	]+[0-9a-f]+:[ 	]+88[ 	]+adc a,b
+[ 	]+[0-9a-f]+:[ 	]+89[ 	]+adc a,c
+[ 	]+[0-9a-f]+:[ 	]+8a[ 	]+adc a,d
+[ 	]+[0-9a-f]+:[ 	]+8b[ 	]+adc a,e
+[ 	]+[0-9a-f]+:[ 	]+8c[ 	]+adc a,h
+[ 	]+[0-9a-f]+:[ 	]+8d[ 	]+adc a,l
+[ 	]+[0-9a-f]+:[ 	]+8e[ 	]+adc a,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 8e 05[ 	]+adc a,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 8e 05[ 	]+adc a,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+ce 11[ 	]+adc a,0x11
+[ 	]+[0-9a-f]+:[ 	]+97[ 	]+sub a
+[ 	]+[0-9a-f]+:[ 	]+90[ 	]+sub b
+[ 	]+[0-9a-f]+:[ 	]+91[ 	]+sub c
+[ 	]+[0-9a-f]+:[ 	]+92[ 	]+sub d
+[ 	]+[0-9a-f]+:[ 	]+93[ 	]+sub e
+[ 	]+[0-9a-f]+:[ 	]+94[ 	]+sub h
+[ 	]+[0-9a-f]+:[ 	]+95[ 	]+sub l
+[ 	]+[0-9a-f]+:[ 	]+96[ 	]+sub \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 96 05[ 	]+sub \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 96 05[ 	]+sub \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+d6 11[ 	]+sub 0x11
+[ 	]+[0-9a-f]+:[ 	]+9f[ 	]+sbc a,a
+[ 	]+[0-9a-f]+:[ 	]+98[ 	]+sbc a,b
+[ 	]+[0-9a-f]+:[ 	]+99[ 	]+sbc a,c
+[ 	]+[0-9a-f]+:[ 	]+9a[ 	]+sbc a,d
+[ 	]+[0-9a-f]+:[ 	]+9b[ 	]+sbc a,e
+[ 	]+[0-9a-f]+:[ 	]+9c[ 	]+sbc a,h
+[ 	]+[0-9a-f]+:[ 	]+9d[ 	]+sbc a,l
+[ 	]+[0-9a-f]+:[ 	]+9e[ 	]+sbc a,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 9e 05[ 	]+sbc a,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 9e 05[ 	]+sbc a,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+de 11[ 	]+sbc a,0x11
+[ 	]+[0-9a-f]+:[ 	]+a7[ 	]+and a
+[ 	]+[0-9a-f]+:[ 	]+a0[ 	]+and b
+[ 	]+[0-9a-f]+:[ 	]+a1[ 	]+and c
+[ 	]+[0-9a-f]+:[ 	]+a2[ 	]+and d
+[ 	]+[0-9a-f]+:[ 	]+a3[ 	]+and e
+[ 	]+[0-9a-f]+:[ 	]+a4[ 	]+and h
+[ 	]+[0-9a-f]+:[ 	]+a5[ 	]+and l
+[ 	]+[0-9a-f]+:[ 	]+a6[ 	]+and \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd a6 05[ 	]+and \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd a6 05[ 	]+and \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+e6 11[ 	]+and 0x11
+[ 	]+[0-9a-f]+:[ 	]+af[ 	]+xor a
+[ 	]+[0-9a-f]+:[ 	]+a8[ 	]+xor b
+[ 	]+[0-9a-f]+:[ 	]+a9[ 	]+xor c
+[ 	]+[0-9a-f]+:[ 	]+aa[ 	]+xor d
+[ 	]+[0-9a-f]+:[ 	]+ab[ 	]+xor e
+[ 	]+[0-9a-f]+:[ 	]+ac[ 	]+xor h
+[ 	]+[0-9a-f]+:[ 	]+ad[ 	]+xor l
+[ 	]+[0-9a-f]+:[ 	]+ae[ 	]+xor \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd ae 05[ 	]+xor \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd ae 05[ 	]+xor \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+ee 11[ 	]+xor 0x11
+[ 	]+[0-9a-f]+:[ 	]+b7[ 	]+or a
+[ 	]+[0-9a-f]+:[ 	]+b0[ 	]+or b
+[ 	]+[0-9a-f]+:[ 	]+b1[ 	]+or c
+[ 	]+[0-9a-f]+:[ 	]+b2[ 	]+or d
+[ 	]+[0-9a-f]+:[ 	]+b3[ 	]+or e
+[ 	]+[0-9a-f]+:[ 	]+b4[ 	]+or h
+[ 	]+[0-9a-f]+:[ 	]+b5[ 	]+or l
+[ 	]+[0-9a-f]+:[ 	]+b6[ 	]+or \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd b6 05[ 	]+or \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd b6 05[ 	]+or \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+f6 11[ 	]+or 0x11
+[ 	]+[0-9a-f]+:[ 	]+bf[ 	]+cp a
+[ 	]+[0-9a-f]+:[ 	]+b8[ 	]+cp b
+[ 	]+[0-9a-f]+:[ 	]+b9[ 	]+cp c
+[ 	]+[0-9a-f]+:[ 	]+ba[ 	]+cp d
+[ 	]+[0-9a-f]+:[ 	]+bb[ 	]+cp e
+[ 	]+[0-9a-f]+:[ 	]+bc[ 	]+cp h
+[ 	]+[0-9a-f]+:[ 	]+bd[ 	]+cp l
+[ 	]+[0-9a-f]+:[ 	]+be[ 	]+cp \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd be 05[ 	]+cp \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd be 05[ 	]+cp \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fe 11[ 	]+cp 0x11
+[ 	]+[0-9a-f]+:[ 	]+3c[ 	]+inc a
+[ 	]+[0-9a-f]+:[ 	]+04[ 	]+inc b
+[ 	]+[0-9a-f]+:[ 	]+0c[ 	]+inc c
+[ 	]+[0-9a-f]+:[ 	]+14[ 	]+inc d
+[ 	]+[0-9a-f]+:[ 	]+1c[ 	]+inc e
+[ 	]+[0-9a-f]+:[ 	]+24[ 	]+inc h
+[ 	]+[0-9a-f]+:[ 	]+2c[ 	]+inc l
+[ 	]+[0-9a-f]+:[ 	]+34[ 	]+inc \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 34 05[ 	]+inc \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 34 05[ 	]+inc \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+3d[ 	]+dec a
+[ 	]+[0-9a-f]+:[ 	]+05[ 	]+dec b
+[ 	]+[0-9a-f]+:[ 	]+0d[ 	]+dec c
+[ 	]+[0-9a-f]+:[ 	]+15[ 	]+dec d
+[ 	]+[0-9a-f]+:[ 	]+1d[ 	]+dec e
+[ 	]+[0-9a-f]+:[ 	]+25[ 	]+dec h
+[ 	]+[0-9a-f]+:[ 	]+2d[ 	]+dec l
+[ 	]+[0-9a-f]+:[ 	]+35[ 	]+dec \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd 35 05[ 	]+dec \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd 35 05[ 	]+dec \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+09[ 	]+add hl,bc
+[ 	]+[0-9a-f]+:[ 	]+19[ 	]+add hl,de
+[ 	]+[0-9a-f]+:[ 	]+29[ 	]+add hl,hl
+[ 	]+[0-9a-f]+:[ 	]+39[ 	]+add hl,sp
+[ 	]+[0-9a-f]+:[ 	]+dd 09[ 	]+add ix,bc
+[ 	]+[0-9a-f]+:[ 	]+dd 19[ 	]+add ix,de
+[ 	]+[0-9a-f]+:[ 	]+dd 29[ 	]+add ix,ix
+[ 	]+[0-9a-f]+:[ 	]+dd 39[ 	]+add ix,sp
+[ 	]+[0-9a-f]+:[ 	]+fd 09[ 	]+add iy,bc
+[ 	]+[0-9a-f]+:[ 	]+fd 19[ 	]+add iy,de
+[ 	]+[0-9a-f]+:[ 	]+fd 29[ 	]+add iy,iy
+[ 	]+[0-9a-f]+:[ 	]+fd 39[ 	]+add iy,sp
+[ 	]+[0-9a-f]+:[ 	]+ed 4a[ 	]+adc hl,bc
+[ 	]+[0-9a-f]+:[ 	]+ed 5a[ 	]+adc hl,de
+[ 	]+[0-9a-f]+:[ 	]+ed 6a[ 	]+adc hl,hl
+[ 	]+[0-9a-f]+:[ 	]+ed 7a[ 	]+adc hl,sp
+[ 	]+[0-9a-f]+:[ 	]+ed 42[ 	]+sbc hl,bc
+[ 	]+[0-9a-f]+:[ 	]+ed 52[ 	]+sbc hl,de
+[ 	]+[0-9a-f]+:[ 	]+ed 62[ 	]+sbc hl,hl
+[ 	]+[0-9a-f]+:[ 	]+ed 72[ 	]+sbc hl,sp
+[ 	]+[0-9a-f]+:[ 	]+03[ 	]+inc bc
+[ 	]+[0-9a-f]+:[ 	]+13[ 	]+inc de
+[ 	]+[0-9a-f]+:[ 	]+23[ 	]+inc hl
+[ 	]+[0-9a-f]+:[ 	]+33[ 	]+inc sp
+[ 	]+[0-9a-f]+:[ 	]+dd 23[ 	]+inc ix
+[ 	]+[0-9a-f]+:[ 	]+fd 23[ 	]+inc iy
+[ 	]+[0-9a-f]+:[ 	]+0b[ 	]+dec bc
+[ 	]+[0-9a-f]+:[ 	]+1b[ 	]+dec de
+[ 	]+[0-9a-f]+:[ 	]+2b[ 	]+dec hl
+[ 	]+[0-9a-f]+:[ 	]+3b[ 	]+dec sp
+[ 	]+[0-9a-f]+:[ 	]+dd 2b[ 	]+dec ix
+[ 	]+[0-9a-f]+:[ 	]+fd 2b[ 	]+dec iy
+#pass
diff --git a/gas/testsuite/gas/z80/arith.s b/gas/testsuite/gas/z80/arith.s
new file mode 100644
index 0000000..1aa66b7
--- /dev/null
+++ b/gas/testsuite/gas/z80/arith.s
@@ -0,0 +1,162 @@
+	.text
+	.org 0
+;;; 8-bit arithmetic and logic
+	add a,a
+	add a,b
+	add a,c
+	add a,d
+	add a,e
+	add a,h
+	add a,l
+	add a,(hl)
+	add a,(ix+5)
+	add a,(iy+5)
+	add a,17
+
+	adc a,a
+	adc a,b
+	adc a,c
+	adc a,d
+	adc a,e
+	adc a,h
+	adc a,l
+	adc a,(hl)
+	adc a,(ix+5)
+	adc a,(iy+5)
+	adc a,17
+
+	sub a
+	sub b
+	sub c
+	sub d
+	sub e
+	sub h
+	sub l
+	sub (hl)
+	sub (ix+5)
+	sub (iy+5)
+	sub 17
+
+	sbc a,a
+	sbc a,b
+	sbc a,c
+	sbc a,d
+	sbc a,e
+	sbc a,h
+	sbc a,l
+	sbc a,(hl)
+	sbc a,(ix+5)
+	sbc a,(iy+5)
+	sbc a,17
+
+	and a
+	and b
+	and c
+	and d
+	and e
+	and h
+	and l
+	and (hl)
+	and (ix+5)
+	and (iy+5)
+	and 17
+
+	xor a
+	xor b
+	xor c
+	xor d
+	xor e
+	xor h
+	xor l
+	xor (hl)
+	xor (ix+5)
+	xor (iy+5)
+	xor 17
+
+	or a
+	or b
+	or c
+	or d
+	or e
+	or h
+	or l
+	or (hl)
+	or (ix+5)
+	or (iy+5)
+	or 17
+
+	cp a
+	cp b
+	cp c
+	cp d
+	cp e
+	cp h
+	cp l
+	cp (hl)
+	cp (ix+5)
+	cp (iy+5)
+	cp 17
+
+	inc a
+	inc b
+	inc c
+	inc d
+	inc e
+	inc h
+	inc l
+	inc (hl)
+	inc (ix+5)
+	inc (iy+5)
+
+	dec a
+	dec b
+	dec c
+	dec d
+	dec e
+	dec h
+	dec l
+	dec (hl)
+	dec (ix+5)
+	dec (iy+5)
+
+;;; 16-bit arithmetic anmd logic
+	add hl,bc
+	add hl,de
+	add hl,hl
+	add hl,sp
+	
+	add ix,bc
+	add ix,de
+	add ix,ix
+	add ix,sp
+	
+	add iy,bc
+	add iy,de
+	add iy,iy
+	add iy,sp
+	
+	adc hl,bc
+	adc hl,de
+	adc hl,hl
+	adc hl,sp
+
+	sbc hl,bc
+	sbc hl,de
+	sbc hl,hl
+	sbc hl,sp
+
+	inc bc
+	inc de
+	inc hl
+	inc sp
+	inc ix
+	inc iy
+
+	dec bc
+	dec de
+	dec hl
+	dec sp
+	dec ix
+	dec iy
+
+	
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/bit.d b/gas/testsuite/gas/z80/bit.d
new file mode 100644
index 0000000..ccd30fc
--- /dev/null
+++ b/gas/testsuite/gas/z80/bit.d
@@ -0,0 +1,249 @@
+#objdump: -d
+#name: bit manipulations
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+
+[ 	]+[0-9a-f]+:[ 	]+cb 47[ 	]+bit 0,a
+[ 	]+[0-9a-f]+:[ 	]+cb 40[ 	]+bit 0,b
+[ 	]+[0-9a-f]+:[ 	]+cb 41[ 	]+bit 0,c
+[ 	]+[0-9a-f]+:[ 	]+cb 42[ 	]+bit 0,d
+[ 	]+[0-9a-f]+:[ 	]+cb 43[ 	]+bit 0,e
+[ 	]+[0-9a-f]+:[ 	]+cb 44[ 	]+bit 0,h
+[ 	]+[0-9a-f]+:[ 	]+cb 45[ 	]+bit 0,l
+[ 	]+[0-9a-f]+:[ 	]+cb 46[ 	]+bit 0,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 46[ 	]+bit 0,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 46[ 	]+bit 0,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 4f[ 	]+bit 1,a
+[ 	]+[0-9a-f]+:[ 	]+cb 48[ 	]+bit 1,b
+[ 	]+[0-9a-f]+:[ 	]+cb 49[ 	]+bit 1,c
+[ 	]+[0-9a-f]+:[ 	]+cb 4a[ 	]+bit 1,d
+[ 	]+[0-9a-f]+:[ 	]+cb 4b[ 	]+bit 1,e
+[ 	]+[0-9a-f]+:[ 	]+cb 4c[ 	]+bit 1,h
+[ 	]+[0-9a-f]+:[ 	]+cb 4d[ 	]+bit 1,l
+[ 	]+[0-9a-f]+:[ 	]+cb 4e[ 	]+bit 1,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 4e[ 	]+bit 1,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 4e[ 	]+bit 1,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 57[ 	]+bit 2,a
+[ 	]+[0-9a-f]+:[ 	]+cb 50[ 	]+bit 2,b
+[ 	]+[0-9a-f]+:[ 	]+cb 51[ 	]+bit 2,c
+[ 	]+[0-9a-f]+:[ 	]+cb 52[ 	]+bit 2,d
+[ 	]+[0-9a-f]+:[ 	]+cb 53[ 	]+bit 2,e
+[ 	]+[0-9a-f]+:[ 	]+cb 54[ 	]+bit 2,h
+[ 	]+[0-9a-f]+:[ 	]+cb 55[ 	]+bit 2,l
+[ 	]+[0-9a-f]+:[ 	]+cb 56[ 	]+bit 2,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 56[ 	]+bit 2,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 56[ 	]+bit 2,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 5f[ 	]+bit 3,a
+[ 	]+[0-9a-f]+:[ 	]+cb 58[ 	]+bit 3,b
+[ 	]+[0-9a-f]+:[ 	]+cb 59[ 	]+bit 3,c
+[ 	]+[0-9a-f]+:[ 	]+cb 5a[ 	]+bit 3,d
+[ 	]+[0-9a-f]+:[ 	]+cb 5b[ 	]+bit 3,e
+[ 	]+[0-9a-f]+:[ 	]+cb 5c[ 	]+bit 3,h
+[ 	]+[0-9a-f]+:[ 	]+cb 5d[ 	]+bit 3,l
+[ 	]+[0-9a-f]+:[ 	]+cb 5e[ 	]+bit 3,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 5e[ 	]+bit 3,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 5e[ 	]+bit 3,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 67[ 	]+bit 4,a
+[ 	]+[0-9a-f]+:[ 	]+cb 60[ 	]+bit 4,b
+[ 	]+[0-9a-f]+:[ 	]+cb 61[ 	]+bit 4,c
+[ 	]+[0-9a-f]+:[ 	]+cb 62[ 	]+bit 4,d
+[ 	]+[0-9a-f]+:[ 	]+cb 63[ 	]+bit 4,e
+[ 	]+[0-9a-f]+:[ 	]+cb 64[ 	]+bit 4,h
+[ 	]+[0-9a-f]+:[ 	]+cb 65[ 	]+bit 4,l
+[ 	]+[0-9a-f]+:[ 	]+cb 66[ 	]+bit 4,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 66[ 	]+bit 4,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 66[ 	]+bit 4,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 6f[ 	]+bit 5,a
+[ 	]+[0-9a-f]+:[ 	]+cb 68[ 	]+bit 5,b
+[ 	]+[0-9a-f]+:[ 	]+cb 69[ 	]+bit 5,c
+[ 	]+[0-9a-f]+:[ 	]+cb 6a[ 	]+bit 5,d
+[ 	]+[0-9a-f]+:[ 	]+cb 6b[ 	]+bit 5,e
+[ 	]+[0-9a-f]+:[ 	]+cb 6c[ 	]+bit 5,h
+[ 	]+[0-9a-f]+:[ 	]+cb 6d[ 	]+bit 5,l
+[ 	]+[0-9a-f]+:[ 	]+cb 6e[ 	]+bit 5,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 6e[ 	]+bit 5,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 6e[ 	]+bit 5,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 77[ 	]+bit 6,a
+[ 	]+[0-9a-f]+:[ 	]+cb 70[ 	]+bit 6,b
+[ 	]+[0-9a-f]+:[ 	]+cb 71[ 	]+bit 6,c
+[ 	]+[0-9a-f]+:[ 	]+cb 72[ 	]+bit 6,d
+[ 	]+[0-9a-f]+:[ 	]+cb 73[ 	]+bit 6,e
+[ 	]+[0-9a-f]+:[ 	]+cb 74[ 	]+bit 6,h
+[ 	]+[0-9a-f]+:[ 	]+cb 75[ 	]+bit 6,l
+[ 	]+[0-9a-f]+:[ 	]+cb 76[ 	]+bit 6,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 76[ 	]+bit 6,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 76[ 	]+bit 6,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 7f[ 	]+bit 7,a
+[ 	]+[0-9a-f]+:[ 	]+cb 78[ 	]+bit 7,b
+[ 	]+[0-9a-f]+:[ 	]+cb 79[ 	]+bit 7,c
+[ 	]+[0-9a-f]+:[ 	]+cb 7a[ 	]+bit 7,d
+[ 	]+[0-9a-f]+:[ 	]+cb 7b[ 	]+bit 7,e
+[ 	]+[0-9a-f]+:[ 	]+cb 7c[ 	]+bit 7,h
+[ 	]+[0-9a-f]+:[ 	]+cb 7d[ 	]+bit 7,l
+[ 	]+[0-9a-f]+:[ 	]+cb 7e[ 	]+bit 7,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 7e[ 	]+bit 7,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 7e[ 	]+bit 7,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 87[ 	]+res 0,a
+[ 	]+[0-9a-f]+:[ 	]+cb 80[ 	]+res 0,b
+[ 	]+[0-9a-f]+:[ 	]+cb 81[ 	]+res 0,c
+[ 	]+[0-9a-f]+:[ 	]+cb 82[ 	]+res 0,d
+[ 	]+[0-9a-f]+:[ 	]+cb 83[ 	]+res 0,e
+[ 	]+[0-9a-f]+:[ 	]+cb 84[ 	]+res 0,h
+[ 	]+[0-9a-f]+:[ 	]+cb 85[ 	]+res 0,l
+[ 	]+[0-9a-f]+:[ 	]+cb 86[ 	]+res 0,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 86[ 	]+res 0,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 86[ 	]+res 0,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 8f[ 	]+res 1,a
+[ 	]+[0-9a-f]+:[ 	]+cb 88[ 	]+res 1,b
+[ 	]+[0-9a-f]+:[ 	]+cb 89[ 	]+res 1,c
+[ 	]+[0-9a-f]+:[ 	]+cb 8a[ 	]+res 1,d
+[ 	]+[0-9a-f]+:[ 	]+cb 8b[ 	]+res 1,e
+[ 	]+[0-9a-f]+:[ 	]+cb 8c[ 	]+res 1,h
+[ 	]+[0-9a-f]+:[ 	]+cb 8d[ 	]+res 1,l
+[ 	]+[0-9a-f]+:[ 	]+cb 8e[ 	]+res 1,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 8e[ 	]+res 1,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 8e[ 	]+res 1,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 97[ 	]+res 2,a
+[ 	]+[0-9a-f]+:[ 	]+cb 90[ 	]+res 2,b
+[ 	]+[0-9a-f]+:[ 	]+cb 91[ 	]+res 2,c
+[ 	]+[0-9a-f]+:[ 	]+cb 92[ 	]+res 2,d
+[ 	]+[0-9a-f]+:[ 	]+cb 93[ 	]+res 2,e
+[ 	]+[0-9a-f]+:[ 	]+cb 94[ 	]+res 2,h
+[ 	]+[0-9a-f]+:[ 	]+cb 95[ 	]+res 2,l
+[ 	]+[0-9a-f]+:[ 	]+cb 96[ 	]+res 2,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 96[ 	]+res 2,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 96[ 	]+res 2,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 9f[ 	]+res 3,a
+[ 	]+[0-9a-f]+:[ 	]+cb 98[ 	]+res 3,b
+[ 	]+[0-9a-f]+:[ 	]+cb 99[ 	]+res 3,c
+[ 	]+[0-9a-f]+:[ 	]+cb 9a[ 	]+res 3,d
+[ 	]+[0-9a-f]+:[ 	]+cb 9b[ 	]+res 3,e
+[ 	]+[0-9a-f]+:[ 	]+cb 9c[ 	]+res 3,h
+[ 	]+[0-9a-f]+:[ 	]+cb 9d[ 	]+res 3,l
+[ 	]+[0-9a-f]+:[ 	]+cb 9e[ 	]+res 3,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 9e[ 	]+res 3,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 9e[ 	]+res 3,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb a7[ 	]+res 4,a
+[ 	]+[0-9a-f]+:[ 	]+cb a0[ 	]+res 4,b
+[ 	]+[0-9a-f]+:[ 	]+cb a1[ 	]+res 4,c
+[ 	]+[0-9a-f]+:[ 	]+cb a2[ 	]+res 4,d
+[ 	]+[0-9a-f]+:[ 	]+cb a3[ 	]+res 4,e
+[ 	]+[0-9a-f]+:[ 	]+cb a4[ 	]+res 4,h
+[ 	]+[0-9a-f]+:[ 	]+cb a5[ 	]+res 4,l
+[ 	]+[0-9a-f]+:[ 	]+cb a6[ 	]+res 4,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 a6[ 	]+res 4,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 a6[ 	]+res 4,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb af[ 	]+res 5,a
+[ 	]+[0-9a-f]+:[ 	]+cb a8[ 	]+res 5,b
+[ 	]+[0-9a-f]+:[ 	]+cb a9[ 	]+res 5,c
+[ 	]+[0-9a-f]+:[ 	]+cb aa[ 	]+res 5,d
+[ 	]+[0-9a-f]+:[ 	]+cb ab[ 	]+res 5,e
+[ 	]+[0-9a-f]+:[ 	]+cb ac[ 	]+res 5,h
+[ 	]+[0-9a-f]+:[ 	]+cb ad[ 	]+res 5,l
+[ 	]+[0-9a-f]+:[ 	]+cb ae[ 	]+res 5,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 ae[ 	]+res 5,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 ae[ 	]+res 5,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb b7[ 	]+res 6,a
+[ 	]+[0-9a-f]+:[ 	]+cb b0[ 	]+res 6,b
+[ 	]+[0-9a-f]+:[ 	]+cb b1[ 	]+res 6,c
+[ 	]+[0-9a-f]+:[ 	]+cb b2[ 	]+res 6,d
+[ 	]+[0-9a-f]+:[ 	]+cb b3[ 	]+res 6,e
+[ 	]+[0-9a-f]+:[ 	]+cb b4[ 	]+res 6,h
+[ 	]+[0-9a-f]+:[ 	]+cb b5[ 	]+res 6,l
+[ 	]+[0-9a-f]+:[ 	]+cb b6[ 	]+res 6,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 b6[ 	]+res 6,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 b6[ 	]+res 6,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb bf[ 	]+res 7,a
+[ 	]+[0-9a-f]+:[ 	]+cb b8[ 	]+res 7,b
+[ 	]+[0-9a-f]+:[ 	]+cb b9[ 	]+res 7,c
+[ 	]+[0-9a-f]+:[ 	]+cb ba[ 	]+res 7,d
+[ 	]+[0-9a-f]+:[ 	]+cb bb[ 	]+res 7,e
+[ 	]+[0-9a-f]+:[ 	]+cb bc[ 	]+res 7,h
+[ 	]+[0-9a-f]+:[ 	]+cb bd[ 	]+res 7,l
+[ 	]+[0-9a-f]+:[ 	]+cb be[ 	]+res 7,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 be[ 	]+res 7,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 be[ 	]+res 7,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb c7[ 	]+set 0,a
+[ 	]+[0-9a-f]+:[ 	]+cb c0[ 	]+set 0,b
+[ 	]+[0-9a-f]+:[ 	]+cb c1[ 	]+set 0,c
+[ 	]+[0-9a-f]+:[ 	]+cb c2[ 	]+set 0,d
+[ 	]+[0-9a-f]+:[ 	]+cb c3[ 	]+set 0,e
+[ 	]+[0-9a-f]+:[ 	]+cb c4[ 	]+set 0,h
+[ 	]+[0-9a-f]+:[ 	]+cb c5[ 	]+set 0,l
+[ 	]+[0-9a-f]+:[ 	]+cb c6[ 	]+set 0,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 c6[ 	]+set 0,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 c6[ 	]+set 0,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb cf[ 	]+set 1,a
+[ 	]+[0-9a-f]+:[ 	]+cb c8[ 	]+set 1,b
+[ 	]+[0-9a-f]+:[ 	]+cb c9[ 	]+set 1,c
+[ 	]+[0-9a-f]+:[ 	]+cb ca[ 	]+set 1,d
+[ 	]+[0-9a-f]+:[ 	]+cb cb[ 	]+set 1,e
+[ 	]+[0-9a-f]+:[ 	]+cb cc[ 	]+set 1,h
+[ 	]+[0-9a-f]+:[ 	]+cb cd[ 	]+set 1,l
+[ 	]+[0-9a-f]+:[ 	]+cb ce[ 	]+set 1,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 ce[ 	]+set 1,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 ce[ 	]+set 1,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb d7[ 	]+set 2,a
+[ 	]+[0-9a-f]+:[ 	]+cb d0[ 	]+set 2,b
+[ 	]+[0-9a-f]+:[ 	]+cb d1[ 	]+set 2,c
+[ 	]+[0-9a-f]+:[ 	]+cb d2[ 	]+set 2,d
+[ 	]+[0-9a-f]+:[ 	]+cb d3[ 	]+set 2,e
+[ 	]+[0-9a-f]+:[ 	]+cb d4[ 	]+set 2,h
+[ 	]+[0-9a-f]+:[ 	]+cb d5[ 	]+set 2,l
+[ 	]+[0-9a-f]+:[ 	]+cb d6[ 	]+set 2,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 d6[ 	]+set 2,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 d6[ 	]+set 2,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb df[ 	]+set 3,a
+[ 	]+[0-9a-f]+:[ 	]+cb d8[ 	]+set 3,b
+[ 	]+[0-9a-f]+:[ 	]+cb d9[ 	]+set 3,c
+[ 	]+[0-9a-f]+:[ 	]+cb da[ 	]+set 3,d
+[ 	]+[0-9a-f]+:[ 	]+cb db[ 	]+set 3,e
+[ 	]+[0-9a-f]+:[ 	]+cb dc[ 	]+set 3,h
+[ 	]+[0-9a-f]+:[ 	]+cb dd[ 	]+set 3,l
+[ 	]+[0-9a-f]+:[ 	]+cb de[ 	]+set 3,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 de[ 	]+set 3,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 de[ 	]+set 3,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb e7[ 	]+set 4,a
+[ 	]+[0-9a-f]+:[ 	]+cb e0[ 	]+set 4,b
+[ 	]+[0-9a-f]+:[ 	]+cb e1[ 	]+set 4,c
+[ 	]+[0-9a-f]+:[ 	]+cb e2[ 	]+set 4,d
+[ 	]+[0-9a-f]+:[ 	]+cb e3[ 	]+set 4,e
+[ 	]+[0-9a-f]+:[ 	]+cb e4[ 	]+set 4,h
+[ 	]+[0-9a-f]+:[ 	]+cb e5[ 	]+set 4,l
+[ 	]+[0-9a-f]+:[ 	]+cb e6[ 	]+set 4,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 e6[ 	]+set 4,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 e6[ 	]+set 4,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb ef[ 	]+set 5,a
+[ 	]+[0-9a-f]+:[ 	]+cb e8[ 	]+set 5,b
+[ 	]+[0-9a-f]+:[ 	]+cb e9[ 	]+set 5,c
+[ 	]+[0-9a-f]+:[ 	]+cb ea[ 	]+set 5,d
+[ 	]+[0-9a-f]+:[ 	]+cb eb[ 	]+set 5,e
+[ 	]+[0-9a-f]+:[ 	]+cb ec[ 	]+set 5,h
+[ 	]+[0-9a-f]+:[ 	]+cb ed[ 	]+set 5,l
+[ 	]+[0-9a-f]+:[ 	]+cb ee[ 	]+set 5,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 ee[ 	]+set 5,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 ee[ 	]+set 5,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb f7[ 	]+set 6,a
+[ 	]+[0-9a-f]+:[ 	]+cb f0[ 	]+set 6,b
+[ 	]+[0-9a-f]+:[ 	]+cb f1[ 	]+set 6,c
+[ 	]+[0-9a-f]+:[ 	]+cb f2[ 	]+set 6,d
+[ 	]+[0-9a-f]+:[ 	]+cb f3[ 	]+set 6,e
+[ 	]+[0-9a-f]+:[ 	]+cb f4[ 	]+set 6,h
+[ 	]+[0-9a-f]+:[ 	]+cb f5[ 	]+set 6,l
+[ 	]+[0-9a-f]+:[ 	]+cb f6[ 	]+set 6,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 f6[ 	]+set 6,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 f6[ 	]+set 6,\(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb ff[ 	]+set 7,a
+[ 	]+[0-9a-f]+:[ 	]+cb f8[ 	]+set 7,b
+[ 	]+[0-9a-f]+:[ 	]+cb f9[ 	]+set 7,c
+[ 	]+[0-9a-f]+:[ 	]+cb fa[ 	]+set 7,d
+[ 	]+[0-9a-f]+:[ 	]+cb fb[ 	]+set 7,e
+[ 	]+[0-9a-f]+:[ 	]+cb fc[ 	]+set 7,h
+[ 	]+[0-9a-f]+:[ 	]+cb fd[ 	]+set 7,l
+[ 	]+[0-9a-f]+:[ 	]+cb fe[ 	]+set 7,\(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 fe[ 	]+set 7,\(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 fe[ 	]+set 7,\(iy\+5\)
diff --git a/gas/testsuite/gas/z80/bit.s b/gas/testsuite/gas/z80/bit.s
new file mode 100644
index 0000000..40a5f9e
--- /dev/null
+++ b/gas/testsuite/gas/z80/bit.s
@@ -0,0 +1,245 @@
+	.text
+	.org 0
+;;;  bit manipulation
+	bit 0,a
+	bit 0,b
+	bit 0,c
+	bit 0,d
+	bit 0,e
+	bit 0,h
+	bit 0,l
+	bit 0,(hl)
+	bit 0,(ix+5)
+	bit 0,(iy+5)
+	bit 1,a
+	bit 1,b
+	bit 1,c
+	bit 1,d
+	bit 1,e
+	bit 1,h
+	bit 1,l
+	bit 1,(hl)
+	bit 1,(ix+5)
+	bit 1,(iy+5)
+	bit 2,a
+	bit 2,b
+	bit 2,c
+	bit 2,d
+	bit 2,e
+	bit 2,h
+	bit 2,l
+	bit 2,(hl)
+	bit 2,(ix+5)
+	bit 2,(iy+5)
+	bit 3,a
+	bit 3,b
+	bit 3,c
+	bit 3,d
+	bit 3,e
+	bit 3,h
+	bit 3,l
+	bit 3,(hl)
+	bit 3,(ix+5)
+	bit 3,(iy+5)
+	bit 4,a
+	bit 4,b
+	bit 4,c
+	bit 4,d
+	bit 4,e
+	bit 4,h
+	bit 4,l
+	bit 4,(hl)
+	bit 4,(ix+5)
+	bit 4,(iy+5)
+	bit 5,a
+	bit 5,b
+	bit 5,c
+	bit 5,d
+	bit 5,e
+	bit 5,h
+	bit 5,l
+	bit 5,(hl)
+	bit 5,(ix+5)
+	bit 5,(iy+5)
+	bit 6,a
+	bit 6,b
+	bit 6,c
+	bit 6,d
+	bit 6,e
+	bit 6,h
+	bit 6,l
+	bit 6,(hl)
+	bit 6,(ix+5)
+	bit 6,(iy+5)
+	bit 7,a
+	bit 7,b
+	bit 7,c
+	bit 7,d
+	bit 7,e
+	bit 7,h
+	bit 7,l
+	bit 7,(hl)
+	bit 7,(ix+5)
+	bit 7,(iy+5)
+
+	res 0,a
+	res 0,b
+	res 0,c
+	res 0,d
+	res 0,e
+	res 0,h
+	res 0,l
+	res 0,(hl)
+	res 0,(ix+5)
+	res 0,(iy+5)
+	res 1,a
+	res 1,b
+	res 1,c
+	res 1,d
+	res 1,e
+	res 1,h
+	res 1,l
+	res 1,(hl)
+	res 1,(ix+5)
+	res 1,(iy+5)
+	res 2,a
+	res 2,b
+	res 2,c
+	res 2,d
+	res 2,e
+	res 2,h
+	res 2,l
+	res 2,(hl)
+	res 2,(ix+5)
+	res 2,(iy+5)
+	res 3,a
+	res 3,b
+	res 3,c
+	res 3,d
+	res 3,e
+	res 3,h
+	res 3,l
+	res 3,(hl)
+	res 3,(ix+5)
+	res 3,(iy+5)
+	res 4,a
+	res 4,b
+	res 4,c
+	res 4,d
+	res 4,e
+	res 4,h
+	res 4,l
+	res 4,(hl)
+	res 4,(ix+5)
+	res 4,(iy+5)
+	res 5,a
+	res 5,b
+	res 5,c
+	res 5,d
+	res 5,e
+	res 5,h
+	res 5,l
+	res 5,(hl)
+	res 5,(ix+5)
+	res 5,(iy+5)
+	res 6,a
+	res 6,b
+	res 6,c
+	res 6,d
+	res 6,e
+	res 6,h
+	res 6,l
+	res 6,(hl)
+	res 6,(ix+5)
+	res 6,(iy+5)
+	res 7,a
+	res 7,b
+	res 7,c
+	res 7,d
+	res 7,e
+	res 7,h
+	res 7,l
+	res 7,(hl)
+	res 7,(ix+5)
+	res 7,(iy+5)
+
+	set 0,a
+	set 0,b
+	set 0,c
+	set 0,d
+	set 0,e
+	set 0,h
+	set 0,l
+	set 0,(hl)
+	set 0,(ix+5)
+	set 0,(iy+5)
+	set 1,a
+	set 1,b
+	set 1,c
+	set 1,d
+	set 1,e
+	set 1,h
+	set 1,l
+	set 1,(hl)
+	set 1,(ix+5)
+	set 1,(iy+5)
+	set 2,a
+	set 2,b
+	set 2,c
+	set 2,d
+	set 2,e
+	set 2,h
+	set 2,l
+	set 2,(hl)
+	set 2,(ix+5)
+	set 2,(iy+5)
+	set 3,a
+	set 3,b
+	set 3,c
+	set 3,d
+	set 3,e
+	set 3,h
+	set 3,l
+	set 3,(hl)
+	set 3,(ix+5)
+	set 3,(iy+5)
+	set 4,a
+	set 4,b
+	set 4,c
+	set 4,d
+	set 4,e
+	set 4,h
+	set 4,l
+	set 4,(hl)
+	set 4,(ix+5)
+	set 4,(iy+5)
+	set 5,a
+	set 5,b
+	set 5,c
+	set 5,d
+	set 5,e
+	set 5,h
+	set 5,l
+	set 5,(hl)
+	set 5,(ix+5)
+	set 5,(iy+5)
+	set 6,a
+	set 6,b
+	set 6,c
+	set 6,d
+	set 6,e
+	set 6,h
+	set 6,l
+	set 6,(hl)
+	set 6,(ix+5)
+	set 6,(iy+5)
+	set 7,a
+	set 7,b
+	set 7,c
+	set 7,d
+	set 7,e
+	set 7,h
+	set 7,l
+	set 7,(hl)
+	set 7,(ix+5)
+	set 7,(iy+5)
diff --git a/gas/testsuite/gas/z80/block.d b/gas/testsuite/gas/z80/block.d
new file mode 100644
index 0000000..c334656
--- /dev/null
+++ b/gas/testsuite/gas/z80/block.d
@@ -0,0 +1,25 @@
+#objdump: -d
+#name: block instructions
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+[ 	]+0:[ 	]+ed a0[ 	]+ldi
+[ 	]+2:[ 	]+ed b0[ 	]+ldir
+[ 	]+4:[ 	]+ed a8[ 	]+ldd
+[ 	]+6:[ 	]+ed b8[ 	]+lddr
+[ 	]+8:[ 	]+ed a1[ 	]+cpi
+[ 	]+a:[ 	]+ed b1[ 	]+cpir
+[ 	]+c:[ 	]+ed a9[ 	]+cpd
+[ 	]+e:[ 	]+ed b9[ 	]+cpdr
+[ 	]+10:[ 	]+ed a3[ 	]+outi
+[ 	]+12:[ 	]+ed b3[ 	]+otir
+[ 	]+14:[ 	]+ed ab[ 	]+outd
+[ 	]+16:[ 	]+ed bb[ 	]+otdr
+[ 	]+18:[ 	]+ed a2[ 	]+ini
+[ 	]+1a:[ 	]+ed b2[ 	]+inir
+[ 	]+1c:[ 	]+ed aa[ 	]+ind
+[ 	]+1e:[ 	]+ed ba[ 	]+indr
+#pass
diff --git a/gas/testsuite/gas/z80/block.s b/gas/testsuite/gas/z80/block.s
new file mode 100644
index 0000000..259b204
--- /dev/null
+++ b/gas/testsuite/gas/z80/block.s
@@ -0,0 +1,23 @@
+	.text
+	.org 0
+;;;  block instructions
+	ldi
+	ldir
+	ldd
+	lddr
+
+	cpi
+	cpir
+	cpd
+	cpdr
+
+	outi
+	otir
+	outd
+	otdr
+
+	ini
+	inir
+	ind
+	indr
+	
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/branch.d b/gas/testsuite/gas/z80/branch.d
new file mode 100644
index 0000000..c3a47a1
--- /dev/null
+++ b/gas/testsuite/gas/z80/branch.d
@@ -0,0 +1,54 @@
+#objdump: -d
+#name: branch instructions
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+[ 	]+0:[ 	]+c3 05 84[ 	]+jp 0x8405
+[ 	]+3:[ 	]+da 05 84[ 	]+jp c,0x8405
+[ 	]+6:[ 	]+d2 05 84[ 	]+jp nc,0x8405
+[ 	]+9:[ 	]+ca 05 84[ 	]+jp z,0x8405
+[ 	]+c:[ 	]+c2 05 84[ 	]+jp nz,0x8405
+[ 	]+f:[ 	]+ea 05 84[ 	]+jp pe,0x8405
+[ 	]+12:[ 	]+e2 05 84[ 	]+jp po,0x8405
+[ 	]+15:[ 	]+fa 05 84[ 	]+jp m,0x8405
+[ 	]+18:[ 	]+f2 05 84[ 	]+jp p,0x8405
+[ 	]+1b:[ 	]+18 e3[ 	]+jr (0x)?0+
+[ 	]+1d:[ 	]+38 e1[ 	]+jr c,(0x)?0+
+[ 	]+1f:[ 	]+30 df[ 	]+jr nc,(0x)?0+
+[ 	]+21:[ 	]+28 dd[ 	]+jr z,(0x)?0+
+[ 	]+23:[ 	]+20 db[ 	]+jr nz,(0x)?0+
+[ 	]+25:[ 	]+e9[ 	]+jp \(hl\)
+[ 	]+26:[ 	]+dd e9[ 	]+jp \(ix\)
+[ 	]+28:[ 	]+fd e9[ 	]+jp \(iy\)
+[ 	]+2a:[ 	]+cd 05 84[ 	]+call 0x8405
+[ 	]+2d:[ 	]+dc 05 84[ 	]+call c,0x8405
+[ 	]+30:[ 	]+d4 05 84[ 	]+call nc,0x8405
+[ 	]+33:[ 	]+cc 05 84[ 	]+call z,0x8405
+[ 	]+36:[ 	]+c4 05 84[ 	]+call nz,0x8405
+[ 	]+39:[ 	]+ec 05 84[ 	]+call pe,0x8405
+[ 	]+3c:[ 	]+e4 05 84[ 	]+call po,0x8405
+[ 	]+3f:[ 	]+fc 05 84[ 	]+call m,0x8405
+[ 	]+42:[ 	]+f4 05 84[ 	]+call p,0x8405
+[ 	]+45:[ 	]+10 b9[ 	]+djnz (0x)?0+
+[ 	]+47:[ 	]+c9[ 	]+ret
+[ 	]+48:[ 	]+d8[ 	]+ret c
+[ 	]+49:[ 	]+d0[ 	]+ret nc
+[ 	]+4a:[ 	]+c8[ 	]+ret z
+[ 	]+4b:[ 	]+c0[ 	]+ret nz
+[ 	]+4c:[ 	]+e8[ 	]+ret pe
+[ 	]+4d:[ 	]+e0[ 	]+ret po
+[ 	]+4e:[ 	]+f8[ 	]+ret m
+[ 	]+4f:[ 	]+f0[ 	]+ret p
+[ 	]+50:[ 	]+ed 4d[ 	]+reti
+[ 	]+52:[ 	]+ed 45[ 	]+retn
+[ 	]+54:[ 	]+c7[ 	]+rst (0x)?0+
+[ 	]+55:[ 	]+cf[ 	]+rst (0x0?)?8
+[ 	]+56:[ 	]+d7[ 	]+rst 0x10
+[ 	]+57:[ 	]+df[ 	]+rst 0x18
+[ 	]+58:[ 	]+e7[ 	]+rst 0x20
+[ 	]+59:[ 	]+ef[ 	]+rst 0x28
+[ 	]+5a:[ 	]+f7[ 	]+rst 0x30
+[ 	]+5b:[ 	]+ff[ 	]+rst 0x38
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/branch.s b/gas/testsuite/gas/z80/branch.s
new file mode 100644
index 0000000..e240934
--- /dev/null
+++ b/gas/testsuite/gas/z80/branch.s
@@ -0,0 +1,57 @@
+	.text
+	.org 0
+;;; branch instructions
+2:	
+	jp 0x8405
+	jp c,0x8405
+	jp nc,0x8405
+	jp z,0x8405
+	jp nz,0x8405
+	jp pe,0x8405
+	jp po,0x8405
+	jp m,0x8405
+	jp p,0x8405
+
+	jr 2b
+	jr c,2b
+	jr nc,2b
+	jr z,2b
+	jr nz,2b
+
+	jp (hl)
+	jp (ix)
+	jp (iy)
+
+	call 0x8405
+	call c,0x8405
+	call nc,0x8405
+	call z,0x8405
+	call nz,0x8405
+	call pe,0x8405
+	call po,0x8405
+	call m,0x8405
+	call p,0x8405
+	
+	djnz 2b
+
+	ret
+	ret c
+	ret nc
+	ret z
+	ret nz
+	ret pe
+	ret po
+	ret m
+	ret p
+
+	reti
+	retn
+
+	rst 0h
+	rst 8h
+	rst 10h
+	rst 18h
+	rst 20h
+	rst 28h
+	rst 30h
+	rst 38h
diff --git a/gas/testsuite/gas/z80/inout.d b/gas/testsuite/gas/z80/inout.d
new file mode 100644
index 0000000..639a418
--- /dev/null
+++ b/gas/testsuite/gas/z80/inout.d
@@ -0,0 +1,24 @@
+#objdump: -d
+#name: input and output
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+[ 	]+0:[ 	]+db 76[ 	]+in a,\(0x76\)
+[ 	]+2:[ 	]+ed 78[ 	]+in a,\(c\)
+[ 	]+4:[ 	]+ed 40[ 	]+in b,\(c\)
+[ 	]+6:[ 	]+ed 48[ 	]+in c,\(c\)
+[ 	]+8:[ 	]+ed 50[ 	]+in d,\(c\)
+[ 	]+a:[ 	]+ed 58[ 	]+in e,\(c\)
+[ 	]+c:[ 	]+ed 60[ 	]+in h,\(c\)
+[ 	]+e:[ 	]+ed 68[ 	]+in l,\(c\)
+[ 	]+10:[ 	]+d3 76[ 	]+out \(0x76\),a
+[ 	]+12:[ 	]+ed 79[ 	]+out \(c\),a
+[ 	]+14:[ 	]+ed 41[ 	]+out \(c\),b
+[ 	]+16:[ 	]+ed 49[ 	]+out \(c\),c
+[ 	]+18:[ 	]+ed 51[ 	]+out \(c\),d
+[ 	]+1a:[ 	]+ed 59[ 	]+out \(c\),e
+[ 	]+1c:[ 	]+ed 61[ 	]+out \(c\),h
+[ 	]+1e:[ 	]+ed 69[ 	]+out \(c\),l
diff --git a/gas/testsuite/gas/z80/inout.s b/gas/testsuite/gas/z80/inout.s
new file mode 100644
index 0000000..bbe458a
--- /dev/null
+++ b/gas/testsuite/gas/z80/inout.s
@@ -0,0 +1,23 @@
+	.text
+	.org 0
+;;; input
+	in a,(0x76)
+	in a,(c)
+	in b,(c)
+	in c,(c)
+	in d,(c)
+	in e,(c)
+	in h,(c)
+	in l,(c)
+
+;;; output
+	out (0x76),a
+	out (c),a
+	out (c),b
+	out (c),c
+	out (c),d
+	out (c),e
+	out (c),h
+	out (c),l
+	
+	
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/ld-group.d b/gas/testsuite/gas/z80/ld-group.d
new file mode 100644
index 0000000..6da44b07
--- /dev/null
+++ b/gas/testsuite/gas/z80/ld-group.d
@@ -0,0 +1,154 @@
+#objdump: -d
+#name: data transfer instructions
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+
+[ 	]+0:[ 	]+ed 57[ 	]+ld a,i
+[ 	]+2:[ 	]+ed 5f[ 	]+ld a,r
+[ 	]+4:[ 	]+7f[ 	]+ld a,a
+[ 	]+5:[ 	]+78[ 	]+ld a,b
+[ 	]+6:[ 	]+79[ 	]+ld a,c
+[ 	]+7:[ 	]+7a[ 	]+ld a,d
+[ 	]+8:[ 	]+7b[ 	]+ld a,e
+[ 	]+9:[ 	]+7c[ 	]+ld a,h
+[ 	]+a:[ 	]+7d[ 	]+ld a,l
+[ 	]+b:[ 	]+7e[ 	]+ld a,\(hl\)
+[ 	]+c:[ 	]+0a[ 	]+ld a,\(bc\)
+[ 	]+d:[ 	]+1a[ 	]+ld a,\(de\)
+[ 	]+e:[ 	]+dd 7e 05[ 	]+ld a,\(ix\+5\)
+[ 	]+11:[ 	]+fd 7e 05[ 	]+ld a,\(iy\+5\)
+[ 	]+14:[ 	]+3a 05 84[ 	]+ld a,\(0x8405\)
+[ 	]+17:[ 	]+3e 11[ 	]+ld a,0x11
+[ 	]+19:[ 	]+47[ 	]+ld b,a
+[ 	]+1a:[ 	]+40[ 	]+ld b,b
+[ 	]+1b:[ 	]+41[ 	]+ld b,c
+[ 	]+1c:[ 	]+42[ 	]+ld b,d
+[ 	]+1d:[ 	]+43[ 	]+ld b,e
+[ 	]+1e:[ 	]+44[ 	]+ld b,h
+[ 	]+1f:[ 	]+45[ 	]+ld b,l
+[ 	]+20:[ 	]+46[ 	]+ld b,\(hl\)
+[ 	]+21:[ 	]+dd 46 05[ 	]+ld b,\(ix\+5\)
+[ 	]+24:[ 	]+fd 46 05[ 	]+ld b,\(iy\+5\)
+[ 	]+27:[ 	]+06 11[ 	]+ld b,0x11
+[ 	]+29:[ 	]+4f[ 	]+ld c,a
+[ 	]+2a:[ 	]+48[ 	]+ld c,b
+[ 	]+2b:[ 	]+49[ 	]+ld c,c
+[ 	]+2c:[ 	]+4a[ 	]+ld c,d
+[ 	]+2d:[ 	]+4b[ 	]+ld c,e
+[ 	]+2e:[ 	]+4c[ 	]+ld c,h
+[ 	]+2f:[ 	]+4d[ 	]+ld c,l
+[ 	]+30:[ 	]+4e[ 	]+ld c,\(hl\)
+[ 	]+31:[ 	]+dd 4e 05[ 	]+ld c,\(ix\+5\)
+[ 	]+34:[ 	]+fd 4e 05[ 	]+ld c,\(iy\+5\)
+[ 	]+37:[ 	]+0e 11[ 	]+ld c,0x11
+[ 	]+39:[ 	]+57[ 	]+ld d,a
+[ 	]+3a:[ 	]+50[ 	]+ld d,b
+[ 	]+3b:[ 	]+51[ 	]+ld d,c
+[ 	]+3c:[ 	]+52[ 	]+ld d,d
+[ 	]+3d:[ 	]+53[ 	]+ld d,e
+[ 	]+3e:[ 	]+54[ 	]+ld d,h
+[ 	]+3f:[ 	]+55[ 	]+ld d,l
+[ 	]+40:[ 	]+56[ 	]+ld d,\(hl\)
+[ 	]+41:[ 	]+dd 56 05[ 	]+ld d,\(ix\+5\)
+[ 	]+44:[ 	]+fd 56 05[ 	]+ld d,\(iy\+5\)
+[ 	]+47:[ 	]+16 11[ 	]+ld d,0x11
+[ 	]+49:[ 	]+5f[ 	]+ld e,a
+[ 	]+4a:[ 	]+58[ 	]+ld e,b
+[ 	]+4b:[ 	]+59[ 	]+ld e,c
+[ 	]+4c:[ 	]+5a[ 	]+ld e,d
+[ 	]+4d:[ 	]+5b[ 	]+ld e,e
+[ 	]+4e:[ 	]+5c[ 	]+ld e,h
+[ 	]+4f:[ 	]+5d[ 	]+ld e,l
+[ 	]+50:[ 	]+5e[ 	]+ld e,\(hl\)
+[ 	]+51:[ 	]+dd 5e 05[ 	]+ld e,\(ix\+5\)
+[ 	]+54:[ 	]+fd 5e 05[ 	]+ld e,\(iy\+5\)
+[ 	]+57:[ 	]+1e 11[ 	]+ld e,0x11
+[ 	]+59:[ 	]+67[ 	]+ld h,a
+[ 	]+5a:[ 	]+60[ 	]+ld h,b
+[ 	]+5b:[ 	]+61[ 	]+ld h,c
+[ 	]+5c:[ 	]+62[ 	]+ld h,d
+[ 	]+5d:[ 	]+63[ 	]+ld h,e
+[ 	]+5e:[ 	]+64[ 	]+ld h,h
+[ 	]+5f:[ 	]+65[ 	]+ld h,l
+[ 	]+60:[ 	]+66[ 	]+ld h,\(hl\)
+[ 	]+61:[ 	]+dd 66 05[ 	]+ld h,\(ix\+5\)
+[ 	]+64:[ 	]+fd 66 05[ 	]+ld h,\(iy\+5\)
+[ 	]+67:[ 	]+26 11[ 	]+ld h,0x11
+[ 	]+69:[ 	]+6f[ 	]+ld l,a
+[ 	]+6a:[ 	]+68[ 	]+ld l,b
+[ 	]+6b:[ 	]+69[ 	]+ld l,c
+[ 	]+6c:[ 	]+6a[ 	]+ld l,d
+[ 	]+6d:[ 	]+6b[ 	]+ld l,e
+[ 	]+6e:[ 	]+6c[ 	]+ld l,h
+[ 	]+6f:[ 	]+6d[ 	]+ld l,l
+[ 	]+70:[ 	]+6e[ 	]+ld l,\(hl\)
+[ 	]+71:[ 	]+dd 6e 05[ 	]+ld l,\(ix\+5\)
+[ 	]+74:[ 	]+fd 6e 05[ 	]+ld l,\(iy\+5\)
+[ 	]+77:[ 	]+2e 11[ 	]+ld l,0x11
+[ 	]+79:[ 	]+77[ 	]+ld \(hl\),a
+[ 	]+7a:[ 	]+70[ 	]+ld \(hl\),b
+[ 	]+7b:[ 	]+71[ 	]+ld \(hl\),c
+[ 	]+7c:[ 	]+72[ 	]+ld \(hl\),d
+[ 	]+7d:[ 	]+73[ 	]+ld \(hl\),e
+[ 	]+7e:[ 	]+74[ 	]+ld \(hl\),h
+[ 	]+7f:[ 	]+75[ 	]+ld \(hl\),l
+[ 	]+80:[ 	]+36 11[ 	]+ld \(hl\),0x11
+[ 	]+82:[ 	]+02[ 	]+ld \(bc\),a
+[ 	]+83:[ 	]+12[ 	]+ld \(de\),a
+[ 	]+84:[ 	]+dd 77 05[ 	]+ld \(ix\+5\),a
+[ 	]+87:[ 	]+dd 70 05[ 	]+ld \(ix\+5\),b
+[ 	]+8a:[ 	]+dd 71 05[ 	]+ld \(ix\+5\),c
+[ 	]+8d:[ 	]+dd 72 05[ 	]+ld \(ix\+5\),d
+[ 	]+90:[ 	]+dd 73 05[ 	]+ld \(ix\+5\),e
+[ 	]+93:[ 	]+dd 74 05[ 	]+ld \(ix\+5\),h
+[ 	]+96:[ 	]+dd 75 05[ 	]+ld \(ix\+5\),l
+[ 	]+99:[ 	]+dd 36 05 11[ 	]+ld \(ix\+5\),0x11
+[ 	]+9d:[ 	]+fd 77 05[ 	]+ld \(iy\+5\),a
+[ 	]+a0:[ 	]+fd 70 05[ 	]+ld \(iy\+5\),b
+[ 	]+a3:[ 	]+fd 71 05[ 	]+ld \(iy\+5\),c
+[ 	]+a6:[ 	]+fd 72 05[ 	]+ld \(iy\+5\),d
+[ 	]+a9:[ 	]+fd 73 05[ 	]+ld \(iy\+5\),e
+[ 	]+ac:[ 	]+fd 74 05[ 	]+ld \(iy\+5\),h
+[ 	]+af:[ 	]+fd 75 05[ 	]+ld \(iy\+5\),l
+[ 	]+b2:[ 	]+fd 36 05 11[ 	]+ld \(iy\+5\),0x11
+[ 	]+b6:[ 	]+32 07 84[ 	]+ld \(0x8407\),a
+[ 	]+b9:[ 	]+ed 47[ 	]+ld i,a
+[ 	]+bb:[ 	]+ed 4f[ 	]+ld r,a
+[ 	]+bd:[ 	]+f1[ 	]+pop af
+[ 	]+be:[ 	]+01 05 84[ 	]+ld bc,0x8405
+[ 	]+c1:[ 	]+ed 4b 05 84[ 	]+ld bc,\(0x8405\)
+[ 	]+c5:[ 	]+c1[ 	]+pop bc
+[ 	]+c6:[ 	]+11 05 84[ 	]+ld de,0x8405
+[ 	]+c9:[ 	]+ed 5b 05 84[ 	]+ld de,\(0x8405\)
+[ 	]+cd:[ 	]+d1[ 	]+pop de
+[ 	]+ce:[ 	]+21 05 84[ 	]+ld hl,0x8405
+[ 	]+d1:[ 	]+2a 05 84[ 	]+ld hl,\(0x8405\)
+[ 	]+d4:[ 	]+e1[ 	]+pop hl
+[ 	]+d5:[ 	]+f9[ 	]+ld sp,hl
+[ 	]+d6:[ 	]+dd f9[ 	]+ld sp,ix
+[ 	]+d8:[ 	]+fd f9[ 	]+ld sp,iy
+[ 	]+da:[ 	]+31 02 84[ 	]+ld sp,0x8402
+[ 	]+dd:[ 	]+ed 7b 02 83[ 	]+ld sp,\(0x8302\)
+[ 	]+e1:[ 	]+dd 21 05 84[ 	]+ld ix,0x8405
+[ 	]+e5:[ 	]+dd 2a 05 84[ 	]+ld ix,\(0x8405\)
+[ 	]+e9:[ 	]+dd e1[ 	]+pop ix
+[ 	]+eb:[ 	]+fd 21 05 84[ 	]+ld iy,0x8405
+[ 	]+ef:[ 	]+fd 2a 05 84[ 	]+ld iy,\(0x8405\)
+[ 	]+f3:[ 	]+fd e1[ 	]+pop iy
+[ 	]+f5:[ 	]+ed 43 32 84[ 	]+ld \(0x8432\),bc
+[ 	]+f9:[ 	]+ed 53 32 84[ 	]+ld \(0x8432\),de
+[ 	]+fd:[ 	]+22 32 84[ 	]+ld \(0x8432\),hl
+[ 	]+100:[ 	]+ed 73 32 84[ 	]+ld \(0x8432\),sp
+[ 	]+104:[ 	]+dd 22 32 84[ 	]+ld \(0x8432\),ix
+[ 	]+108:[ 	]+fd 22 32 84[ 	]+ld \(0x8432\),iy
+[ 	]+10c:[ 	]+f5[ 	]+push af
+[ 	]+10d:[ 	]+c5[ 	]+push bc
+[ 	]+10e:[ 	]+d5[ 	]+push de
+[ 	]+10f:[ 	]+e5[ 	]+push hl
+[ 	]+110:[ 	]+dd e5[ 	]+push ix
+[ 	]+112:[ 	]+fd e5[ 	]+push iy
+#pass
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/ld-group.s b/gas/testsuite/gas/z80/ld-group.s
new file mode 100644
index 0000000..88ddf33
--- /dev/null
+++ b/gas/testsuite/gas/z80/ld-group.s
@@ -0,0 +1,169 @@
+	.section .text
+	.org 0
+	;; 8-bit load group
+	ld a,i
+	ld a,r
+	ld a,a
+	ld a,b
+	ld a,c
+	ld a,d
+	ld a,e
+	ld a,h
+	ld a,l
+	ld a,(hl)
+	ld a,(bc)
+	ld a,(de)
+	ld a,(ix+5)
+	ld a,(iy+5)
+	ld a,(0x8405)
+	ld a,0x11
+
+	ld b,a
+	ld b,b
+	ld b,c
+	ld b,d
+	ld b,e
+	ld b,h
+	ld b,l
+	ld b,(hl)
+	ld b,(ix+5)
+	ld b,(iy+5)
+	ld b,0x11
+
+	ld c,a
+	ld c,b
+	ld c,c
+	ld c,d
+	ld c,e
+	ld c,h
+	ld c,l
+	ld c,(hl)
+	ld c,(ix+5)
+	ld c,(iy+5)
+	ld c,0x11
+
+	ld d,a
+	ld d,b
+	ld d,c
+	ld d,d
+	ld d,e
+	ld d,h
+	ld d,l
+	ld d,(hl)
+	ld d,(ix+5)
+	ld d,(iy+5)
+	ld d,0x11
+	
+	ld e,a
+	ld e,b
+	ld e,c
+	ld e,d
+	ld e,e
+	ld e,h
+	ld e,l
+	ld e,(hl)
+	ld e,(ix+5)
+	ld e,(iy+5)
+	ld e,0x11
+
+	ld h,a
+	ld h,b
+	ld h,c
+	ld h,d
+	ld h,e
+	ld h,h
+	ld h,l
+	ld h,(hl)
+	ld h,(ix+5)
+	ld h,(iy+5)
+	ld h,0x11
+	
+	ld l,a
+	ld l,b
+	ld l,c
+	ld l,d
+	ld l,e
+	ld l,h
+	ld l,l
+	ld l,(hl)
+	ld l,(ix+5)
+	ld l,(iy+5)
+	ld l,0x11
+
+	ld (hl),a
+	ld (hl),b
+	ld (hl),c
+	ld (hl),d
+	ld (hl),e
+	ld (hl),h
+	ld (hl),l
+	ld (hl),0x11
+	
+	ld (bc),a
+	ld (de),a
+
+	ld (ix+5),a
+	ld (ix+5),b
+	ld (ix+5),c
+	ld (ix+5),d
+	ld (ix+5),e
+	ld (ix+5),h
+	ld (ix+5),l
+	ld (ix+5),0x11
+
+	ld (iy+5),a
+	ld (iy+5),b
+	ld (iy+5),c
+	ld (iy+5),d
+	ld (iy+5),e
+	ld (iy+5),h
+	ld (iy+5),l
+	ld (iy+5),0x11
+
+	ld (0x8407),a
+	ld i,a
+	ld r,a
+
+	;;  16-bit load group --- ld, pop and push
+	pop af
+	
+	ld bc,0x8405
+	ld bc,(0x8405)
+	pop bc
+	
+	ld de,0x8405
+	ld de,(0x8405)
+	pop de
+	
+	ld hl,0x8405
+	ld hl,(0x8405)
+	pop hl
+	
+	ld sp,hl
+	ld sp,ix
+	ld sp,iy
+	ld sp,0x8402
+	ld sp,(0x8302)
+	
+	ld ix,0x8405
+	ld ix,(0x8405)
+	pop ix
+	
+	ld iy,0x8405
+	ld iy,(0x8405)
+	pop iy
+	
+	ld (0x8432),bc
+	ld (0x8432),de
+	ld (0x8432),hl
+	ld (0x8432),sp
+	ld (0x8432),ix
+	ld (0x8432),iy
+
+	push af
+	push bc
+	push de
+	push hl
+	push ix
+	push iy
+
diff --git a/gas/testsuite/gas/z80/misc.d b/gas/testsuite/gas/z80/misc.d
new file mode 100644
index 0000000..a22012d
--- /dev/null
+++ b/gas/testsuite/gas/z80/misc.d
@@ -0,0 +1,26 @@
+#objdump: -d
+#name: miscellaneous instructions
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+[ 	]+[0-9a-f]+:[ 	]+08[ 	]+ex af,af'
+[ 	]+[0-9a-f]+:[ 	]+d9[ 	]+exx
+[ 	]+[0-9a-f]+:[ 	]+eb[ 	]+ex de,hl
+[ 	]+[0-9a-f]+:[ 	]+e3[ 	]+ex \(sp\),hl
+[ 	]+[0-9a-f]+:[ 	]+dd e3[ 	]+ex \(sp\),ix
+[ 	]+[0-9a-f]+:[ 	]+fd e3[ 	]+ex \(sp\),iy
+[ 	]+[0-9a-f]+:[ 	]+27[ 	]+daa
+[ 	]+[0-9a-f]+:[ 	]+2f[ 	]+cpl
+[ 	]+[0-9a-f]+:[ 	]+ed 44[ 	]+neg
+[ 	]+[0-9a-f]+:[ 	]+3f[ 	]+ccf
+[ 	]+[0-9a-f]+:[ 	]+37[ 	]+scf
+[ 	]+[0-9a-f]+:[ 	]+00[ 	]+nop
+[ 	]+[0-9a-f]+:[ 	]+76[ 	]+halt
+[ 	]+[0-9a-f]+:[ 	]+f3[ 	]+di
+[ 	]+[0-9a-f]+:[ 	]+fb[ 	]+ei
+[ 	]+[0-9a-f]+:[ 	]+ed 46[ 	]+im 0
+[ 	]+[0-9a-f]+:[ 	]+ed 56[ 	]+im 1
+[ 	]+[0-9a-f]+:[ 	]+ed 5e[ 	]+im 2
diff --git a/gas/testsuite/gas/z80/misc.s b/gas/testsuite/gas/z80/misc.s
new file mode 100644
index 0000000..0776474
--- /dev/null
+++ b/gas/testsuite/gas/z80/misc.s
@@ -0,0 +1,26 @@
+	.text
+	.org 0
+;;; exchange instructions
+	ex af,af'
+	exx
+	ex de,hl
+	ex (sp),hl
+	ex (sp),ix
+	ex (sp),iy
+	
+;;; AF operations
+	daa
+	cpl
+	neg
+	ccf
+	scf
+
+;;; CPU control
+	nop
+	halt
+	di
+	ei
+	im 0
+	im 1
+	im 2
+	
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/rotate.d b/gas/testsuite/gas/z80/rotate.d
new file mode 100644
index 0000000..f374322
--- /dev/null
+++ b/gas/testsuite/gas/z80/rotate.d
@@ -0,0 +1,86 @@
+#objdump: -d
+#name: rotate and shift
+
+.*: .*
+
+Disassembly of section .text:
+
+0+ <.text>:
+
+[ 	]+[0-9a-f]+:[ 	]+cb 07[ 	]+rlc a
+[ 	]+[0-9a-f]+:[ 	]+cb 00[ 	]+rlc b
+[ 	]+[0-9a-f]+:[ 	]+cb 01[ 	]+rlc c
+[ 	]+[0-9a-f]+:[ 	]+cb 02[ 	]+rlc d
+[ 	]+[0-9a-f]+:[ 	]+cb 03[ 	]+rlc e
+[ 	]+[0-9a-f]+:[ 	]+cb 04[ 	]+rlc h
+[ 	]+[0-9a-f]+:[ 	]+cb 05[ 	]+rlc l
+[ 	]+[0-9a-f]+:[ 	]+cb 06[ 	]+rlc \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 06[ 	]+rlc \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 06[ 	]+rlc \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 0f[ 	]+rrc a
+[ 	]+[0-9a-f]+:[ 	]+cb 08[ 	]+rrc b
+[ 	]+[0-9a-f]+:[ 	]+cb 09[ 	]+rrc c
+[ 	]+[0-9a-f]+:[ 	]+cb 0a[ 	]+rrc d
+[ 	]+[0-9a-f]+:[ 	]+cb 0b[ 	]+rrc e
+[ 	]+[0-9a-f]+:[ 	]+cb 0c[ 	]+rrc h
+[ 	]+[0-9a-f]+:[ 	]+cb 0d[ 	]+rrc l
+[ 	]+[0-9a-f]+:[ 	]+cb 0e[ 	]+rrc \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 0e[ 	]+rrc \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 0e[ 	]+rrc \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 17[ 	]+rl a
+[ 	]+[0-9a-f]+:[ 	]+cb 10[ 	]+rl b
+[ 	]+[0-9a-f]+:[ 	]+cb 11[ 	]+rl c
+[ 	]+[0-9a-f]+:[ 	]+cb 12[ 	]+rl d
+[ 	]+[0-9a-f]+:[ 	]+cb 13[ 	]+rl e
+[ 	]+[0-9a-f]+:[ 	]+cb 14[ 	]+rl h
+[ 	]+[0-9a-f]+:[ 	]+cb 15[ 	]+rl l
+[ 	]+[0-9a-f]+:[ 	]+cb 16[ 	]+rl \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 16[ 	]+rl \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 16[ 	]+rl \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 1f[ 	]+rr a
+[ 	]+[0-9a-f]+:[ 	]+cb 18[ 	]+rr b
+[ 	]+[0-9a-f]+:[ 	]+cb 19[ 	]+rr c
+[ 	]+[0-9a-f]+:[ 	]+cb 1a[ 	]+rr d
+[ 	]+[0-9a-f]+:[ 	]+cb 1b[ 	]+rr e
+[ 	]+[0-9a-f]+:[ 	]+cb 1c[ 	]+rr h
+[ 	]+[0-9a-f]+:[ 	]+cb 1d[ 	]+rr l
+[ 	]+[0-9a-f]+:[ 	]+cb 1e[ 	]+rr \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 1e[ 	]+rr \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 1e[ 	]+rr \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 27[ 	]+sla a
+[ 	]+[0-9a-f]+:[ 	]+cb 20[ 	]+sla b
+[ 	]+[0-9a-f]+:[ 	]+cb 21[ 	]+sla c
+[ 	]+[0-9a-f]+:[ 	]+cb 22[ 	]+sla d
+[ 	]+[0-9a-f]+:[ 	]+cb 23[ 	]+sla e
+[ 	]+[0-9a-f]+:[ 	]+cb 24[ 	]+sla h
+[ 	]+[0-9a-f]+:[ 	]+cb 25[ 	]+sla l
+[ 	]+[0-9a-f]+:[ 	]+cb 26[ 	]+sla \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 26[ 	]+sla \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 26[ 	]+sla \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 2f[ 	]+sra a
+[ 	]+[0-9a-f]+:[ 	]+cb 28[ 	]+sra b
+[ 	]+[0-9a-f]+:[ 	]+cb 29[ 	]+sra c
+[ 	]+[0-9a-f]+:[ 	]+cb 2a[ 	]+sra d
+[ 	]+[0-9a-f]+:[ 	]+cb 2b[ 	]+sra e
+[ 	]+[0-9a-f]+:[ 	]+cb 2c[ 	]+sra h
+[ 	]+[0-9a-f]+:[ 	]+cb 2d[ 	]+sra l
+[ 	]+[0-9a-f]+:[ 	]+cb 2e[ 	]+sra \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 2e[ 	]+sra \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 2e[ 	]+sra \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+cb 3f[ 	]+srl a
+[ 	]+[0-9a-f]+:[ 	]+cb 38[ 	]+srl b
+[ 	]+[0-9a-f]+:[ 	]+cb 39[ 	]+srl c
+[ 	]+[0-9a-f]+:[ 	]+cb 3a[ 	]+srl d
+[ 	]+[0-9a-f]+:[ 	]+cb 3b[ 	]+srl e
+[ 	]+[0-9a-f]+:[ 	]+cb 3c[ 	]+srl h
+[ 	]+[0-9a-f]+:[ 	]+cb 3d[ 	]+srl l
+[ 	]+[0-9a-f]+:[ 	]+cb 3e[ 	]+srl \(hl\)
+[ 	]+[0-9a-f]+:[ 	]+dd cb 05 3e[ 	]+srl \(ix\+5\)
+[ 	]+[0-9a-f]+:[ 	]+fd cb 05 3e[ 	]+srl \(iy\+5\)
+[ 	]+[0-9a-f]+:[ 	]+07[ 	]+rlca
+[ 	]+[0-9a-f]+:[ 	]+0f[ 	]+rrca
+[ 	]+[0-9a-f]+:[ 	]+17[ 	]+rla
+[ 	]+[0-9a-f]+:[ 	]+1f[ 	]+rra
+[ 	]+[0-9a-f]+:[ 	]+ed 6f[ 	]+rld
+[ 	]+[0-9a-f]+:[ 	]+ed 67[ 	]+rrd
+#pass
\ No newline at end of file
diff --git a/gas/testsuite/gas/z80/rotate.s b/gas/testsuite/gas/z80/rotate.s
new file mode 100644
index 0000000..9e963bb
--- /dev/null
+++ b/gas/testsuite/gas/z80/rotate.s
@@ -0,0 +1,81 @@
+	.text
+	.org 0
+;;; Rotates and shifts
+
+	rlc a
+	rlc b
+	rlc c
+	rlc d
+	rlc e
+	rlc h
+	rlc l
+	rlc (hl)
+	rlc (ix+5)
+	rlc (iy+5)
+	rrc a
+	rrc b
+	rrc c
+	rrc d
+	rrc e
+	rrc h
+	rrc l
+	rrc (hl)
+	rrc (ix+5)
+	rrc (iy+5)
+	rl a
+	rl b
+	rl c
+	rl d
+	rl e
+	rl h
+	rl l
+	rl (hl)
+	rl (ix+5)
+	rl (iy+5)
+	rr a
+	rr b
+	rr c
+	rr d
+	rr e
+	rr h
+	rr l
+	rr (hl)
+	rr (ix+5)
+	rr (iy+5)
+	sla a
+	sla b
+	sla c
+	sla d
+	sla e
+	sla h
+	sla l
+	sla (hl)
+	sla (ix+5)
+	sla (iy+5)
+	sra a
+	sra b
+	sra c
+	sra d
+	sra e
+	sra h
+	sra l
+	sra (hl)
+	sra (ix+5)
+	sra (iy+5)
+	srl a
+	srl b
+	srl c
+	srl d
+	srl e
+	srl h
+	srl l
+	srl (hl)
+	srl (ix+5)
+	srl (iy+5)
+
+	rlca
+	rrca
+	rla
+	rra
+	rld
+	rrd
diff --git a/gas/testsuite/gas/z80/z80.exp b/gas/testsuite/gas/z80/z80.exp
index cae83f1..d595f6a 100644
--- a/gas/testsuite/gas/z80/z80.exp
+++ b/gas/testsuite/gas/z80/z80.exp
@@ -9,4 +9,20 @@
     run_dump_test "suffix"
 # test assembling and disassembling instructions involving offsets
     run_dump_test "offset"
+# test for data transfer instructions
+    run_dump_test "ld-group"
+# test for block instructions
+    run_dump_test "block"
+# test for arithmetic and logic
+    run_dump_test "arith"
+# test for rotate and shift
+    run_dump_test "rotate"
+# test for bit manipulations
+    run_dump_test "bit"
+# test for branch instructions
+    run_dump_test "branch"
+# test for input and output instructions
+    run_dump_test "inout"
+#test for other instructions
+    run_dump_test "misc"
 }
diff --git a/gas/write.c b/gas/write.c
index 55c757d..1af81a7 100644
--- a/gas/write.c
+++ b/gas/write.c
@@ -54,26 +54,34 @@
   (! SEG_NORMAL (SEG))
 #endif
 
+#ifndef md_register_arithmetic
+# define md_register_arithmetic 1
+#endif
+
 #ifndef TC_FORCE_RELOCATION_SUB_ABS
-#define TC_FORCE_RELOCATION_SUB_ABS(FIX)	0
+#define TC_FORCE_RELOCATION_SUB_ABS(FIX, SEG)	\
+  (!md_register_arithmetic && (SEG) == reg_section)
 #endif
 
 #ifndef TC_FORCE_RELOCATION_SUB_LOCAL
 #ifdef DIFF_EXPR_OK
-#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX)	0
+#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG)	\
+  (!md_register_arithmetic && (SEG) == reg_section)
 #else
-#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX)	1
+#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG)	1
 #endif
 #endif
 
 #ifndef TC_VALIDATE_FIX_SUB
 #ifdef UNDEFINED_DIFFERENCE_OK
 /* The PA needs this for PIC code generation.  */
-#define TC_VALIDATE_FIX_SUB(FIX) 1
+#define TC_VALIDATE_FIX_SUB(FIX, SEG)			\
+  (md_register_arithmetic || (SEG) != reg_section)
 #else
-#define TC_VALIDATE_FIX_SUB(FIX)		\
-  ((FIX)->fx_r_type == BFD_RELOC_GPREL32	\
-   || (FIX)->fx_r_type == BFD_RELOC_GPREL16)
+#define TC_VALIDATE_FIX_SUB(FIX, SEG)			\
+  ((md_register_arithmetic || (SEG) != reg_section)	\
+   && ((FIX)->fx_r_type == BFD_RELOC_GPREL32		\
+       || (FIX)->fx_r_type == BFD_RELOC_GPREL16))
 #endif
 #endif
 
@@ -924,14 +932,14 @@
 #endif
 	    }
 	  else if (sub_symbol_segment == absolute_section
-		   && !TC_FORCE_RELOCATION_SUB_ABS (fixP))
+		   && !TC_FORCE_RELOCATION_SUB_ABS (fixP, add_symbol_segment))
 	    {
 	      add_number -= S_GET_VALUE (fixP->fx_subsy);
 	      fixP->fx_offset = add_number;
 	      fixP->fx_subsy = NULL;
 	    }
 	  else if (sub_symbol_segment == this_segment
-		   && !TC_FORCE_RELOCATION_SUB_LOCAL (fixP))
+		   && !TC_FORCE_RELOCATION_SUB_LOCAL (fixP, add_symbol_segment))
 	    {
 	      add_number -= S_GET_VALUE (fixP->fx_subsy);
 	      fixP->fx_offset = (add_number + fixP->fx_dot_value
@@ -953,14 +961,20 @@
 	      fixP->fx_subsy = NULL;
 	      fixP->fx_pcrel = 1;
 	    }
-	  else if (!TC_VALIDATE_FIX_SUB (fixP))
+	  else if (!TC_VALIDATE_FIX_SUB (fixP, add_symbol_segment))
 	    {
-	      as_bad_where (fixP->fx_file, fixP->fx_line,
-			    _("can't resolve `%s' {%s section} - `%s' {%s section}"),
-			    fixP->fx_addsy ? S_GET_NAME (fixP->fx_addsy) : "0",
-			    segment_name (add_symbol_segment),
-			    S_GET_NAME (fixP->fx_subsy),
-			    segment_name (sub_symbol_segment));
+	      if (!md_register_arithmetic
+		  && (add_symbol_segment == reg_section
+		      || sub_symbol_segment == reg_section))
+		as_bad_where (fixP->fx_file, fixP->fx_line,
+			      _("register value used as expression"));
+	      else
+		as_bad_where (fixP->fx_file, fixP->fx_line,
+			      _("can't resolve `%s' {%s section} - `%s' {%s section}"),
+			      fixP->fx_addsy ? S_GET_NAME (fixP->fx_addsy) : "0",
+			      segment_name (add_symbol_segment),
+			      S_GET_NAME (fixP->fx_subsy),
+			      segment_name (sub_symbol_segment));
 	    }
 	}
 
@@ -1090,8 +1104,8 @@
       && (sym = *reloc->sym_ptr_ptr) != NULL
       && (sym->flags & BSF_KEEP) == 0
       && ((sym->flags & BSF_SECTION_SYM) == 0
-	  || !EMIT_SECTION_SYMBOLS
-	  || !bfd_is_abs_section (sym->section)))
+	  || (EMIT_SECTION_SYMBOLS
+	      && !bfd_is_abs_section (sym->section))))
     as_bad_where (file, line, _("redefined symbol cannot be used on reloc"));
 
   s = bfd_install_relocation (stdoutput, reloc,
diff --git a/gold/ChangeLog b/gold/ChangeLog
index cac87e6..e13fa98 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,179 @@
+2008-10-07  Cary Coutant  <ccoutant@google.com>
+
+	* options.c (General_options::finalize): Add check for -static and
+	-shared.
+	* gold.cc (queue_middle_tasks): Assert that list of dynamic objects
+	is not empty.
+
+2008-10-02  Cary Coutant  <ccoutant@google.com>
+
+	* plugin.cc (make_sized_plugin_object): Fix conditional
+	compilation to work when not all targets are enabled.
+
+2008-09-29  Cary Coutant  <ccoutant@google.com>
+
+	* archive.cc (Archive::get_file_and_offset): Use filename instead
+	of name to get library path.
+	(Archive::include_member): Unlock external member of a thin archive.
+
+	* testsuite/Makefile.am (TEST_AR): New variable.
+	(thin_archive_test_1): New test.
+	(thin_archive_test_2): New test.
+	* testsuite/Makefile.in: Regenerate.
+	* testsuite/thin_archive_main.cc: New file.
+	* testsuite/thin_archive_test_1.cc: New file.
+	* testsuite/thin_archive_test_2.cc: New file.
+	* testsuite/thin_archive_test_3.cc: New file.
+	* testsuite/thin_archive_test_4.cc: New file.
+
+2008-09-29  Cary Coutant  <ccoutant@google.com>
+
+	* mapfile.cc (Mapfile::print_input_section): Change -1U to -1ULL.
+	* object.cc (Sized_relobj::do_layout): Use constant invalid_address
+	instead of -1U.
+	(Sized_relobj::do_finalize_local_symbols): Likewise.
+	(Sized_relobj::map_to_kept_section): Likewise.
+	* object.h (Sized_relobj::invalid_address): New constant.
+	(Sized_relobj::do_output_section_offset): Check for invalid_address
+	and return -1ULL.
+	* output.cc (Output_reloc::local_section_offset): Use constant
+	invalid_address instead of -1U.
+	(Output_reloc::get_address): Likewise.
+	(Output_section::output_address): Change -1U to -1ULL.
+	* output.h (Output_reloc::invalid_address): New constant.
+	* reloc.cc (Sized_relobj::write_sections): Use constant
+	invalid_address instead of -1U.
+	(Sized_relobj::relocate_sections): Likewise.
+	* symtab.cc (Symbol_table::sized_finalize_symbol): Handle symbol
+	values for merge sections.
+	* target-reloc.h (relocate_for_relocatable): Use constant
+	invalid_address instead of -1U.
+
+2008-09-19  Cary Coutant  <ccoutant@google.com>
+
+	Add plugin functionality for link-time optimization (LTO).
+	* configure.ac (plugins): Add --enable-plugins option.
+	* configure: Regenerate.
+	* config.in: Regenerate.
+	* Makefile.am (LIBDL): New variable.
+	(CCFILES): Add plugin.cc.
+	(HFILES): Add plugin.h.
+	(ldadd_var): Add LIBDL.
+	* Makefile.in: Regenerate.
+
+	* archive.cc: Include "plugin.h".
+	(Archive::setup): Don't preread archive symbols when using a plugin.
+	(Archive::get_file_and_offset): Add memsize parameter.  Change callers.
+	(Archive::get_elf_object_for_member): Call plugin hooks for claiming
+	files.
+	(Archive::include_member): Add symbols from plugin objects.
+	* archive.h (Archive::get_file_and_offset): Add memsize parameter.
+	* descriptors.cc (Descriptors::open): Check for file descriptors
+	abandoned by plugins.
+	(Descriptors::claim_for_plugin): New function.
+	* descriptors.h (Descriptors::claim_for_plugin): New function.
+	(Open_descriptor::is_claimed): New field.
+	(claim_descriptor_for_plugin): New function.
+	* fileread.cc (File_read::claim_for_plugin): New function.
+	* fileread.h (File_read::claim_for_plugin): New function.
+	(File_read::descriptor): New function.
+	* gold.cc: Include "plugin.h".
+	(queue_initial_tasks): Add task to call plugin hooks for generating
+	new object files.
+	* main.cc: Include "plugin.h".
+	(main): Load plugin libraries.
+	* object.h (Pluginobj): Declare.
+	(Object::pluginobj): New function.
+	(Object::do_pluginobj): New function.
+	(Object::set_target): New function.
+	* options.cc: Include "plugin.h".
+	(General_options::parse_plugin): New function.
+	(General_options::General_options): Initialize plugins_ field.
+	(General_options::add_plugin): New function.
+	* options.h (Plugin_manager): Declare.
+	(General_options): Add --plugin option.
+	(General_options::has_plugins): New function.
+	(General_options::plugins): New function.
+	(General_options::add_plugin): New function.
+	(General_options::plugins_): New field.
+	* plugin.cc: New file.
+	* plugin.h: New file.
+	* readsyms.cc: Include "plugin.h".
+	(Read_symbols::do_read_symbols): Check for archive before checking
+	for ELF file.  Call plugin hooks to claim files.
+	* resolve.cc (Symbol_table::resolve): Record when symbol is referenced
+	from a real object file; force override when processing replacement
+	files.
+	* symtab.cc (Symbol::init_fields): Initialize in_real_elf_ field.
+	(Symbol::init_base_object): Likewise.
+	(Symbol::init_base_output_data): Likewise.
+	(Symbol::init_base_output_segment): Likewise.
+	(Symbol::init_base_constant): Likewise.
+	(Symbol::init_base_undefined): Likewise.
+	(Symbol::output_section): Assert that object is not a plugin.
+	(Symbol_table::add_from_pluginobj): New function.
+	(Symbol_table::sized_finalize_symbol): Treat symbols from plugins as
+	undefined.
+	(Symbol_table::sized_write_globals): Likewise.
+	(Symbol_table::add_from_pluginobj): Instantiate template.
+	* symtab.h (Sized_pluginobj): Declare.
+	(Symbol::in_real_elf): New function.
+	(Symbol::set_in_real_elf): New function.
+	(Symbol::in_real_elf_): New field.
+	(Symbol_table::add_from_pluginobj): New function.
+
+	* testsuite/Makefile.am (AM_CFLAGS): New variable.
+	(LIBDL): New variable.
+	(LDADD): Add LIBDL.
+	(check_PROGRAMS): Add plugin_test_1 and plugin_test_2.
+	(check_SCRIPTS): Add plugin_test_1.sh and plugin_test_2.sh.
+	(check_DATA): Add plugin_test_1.err and plugin_test_2.err.
+	(MOSTLYCLEANFILES): Likewise.
+	* testsuite/Makefile.in: Regenerate.
+	* testsuite/plugin_test.c: New file.
+	* testsuite/plugin_test_1.sh: New file.
+	* testsuite/plugin_test_2.sh: New file.
+
+2008-09-16  Ian Lance Taylor  <iant@google.com>
+
+	* target-reloc.h (relocate_section): Check whether a symbol is
+	defined by the ABI before reporting an undefined symbol error.
+	* target.h (Target::is_defined_by_abi): Make parameter const.
+	(Target::do_is_defined_by_abi): Likewise.
+	* i386.cc (Target_i386::do_is_defined_by_abi): Likewise.
+	* powerpc.cc (Target_powerpc::do_is_defined_by_abi): Likewise.
+	* sparc.cc (Target_sparc::do_is_defined_by_abi): Likewise.
+	* x86_64.cc (Target_x86_64::do_is_defined_by_abi): Likewise.
+	* testsuite/Makefile.am (tls_test_shared.so): Add -Wl,-z,defs.
+	* testsuite/Makefile.in: Rebuild.
+
+	* fileread.cc (make_view): Add casts to avoid warning.
+
+2008-09-16  Alexandre Oliva  <aoliva@redhat.com>
+
+	* i386.cc (Target_i386::define_tls_base_symbol): Update comments.
+	* x86_64.cc (Target_x86_64::define_tls_base_symbol): Likewise.
+
+2008-09-16  Alexandre Oliva  <aoliva@redhat.com>
+
+	* options.h (General_options::output_is_executable): New.
+	(General_options::output_is_pie): New.
+	* i386.cc (Target_i386::define_tls_base_symbol): Use SEGMENT_START
+	for shared libraries.
+	* x86_64.cc (Target_x86_64::define_tls_base_symbol): Likewise.
+
+2008-09-11  Chris Demetriou  <cgd@google.com>
+
+	* options.h (origin): New -z option.
+	* layout.cc (Layout:finish_dynamic_section): If "-z origin"
+	is specified, set DF_ORIGIN in DT_FLAGS and set DF_1_ORIGIN
+	in DT_FLAGS_1.
+
+2008-09-05  Cary Coutant  <ccoutant@google.com>
+
+	* fileread.cc (File_read::make_view): Add check for attempt to map
+	beyond end of file.
+
 2008-09-05  Cary Coutant  <ccoutant@google.com>
 
 	* symtab.cc (Symbol_table::add_from_dynobj): Fix typos in
diff --git a/gold/Makefile.am b/gold/Makefile.am
index e706703..74db37a 100644
--- a/gold/Makefile.am
+++ b/gold/Makefile.am
@@ -19,6 +19,10 @@
 
 LIBIBERTY = ../libiberty/libiberty.a
 
+if PLUGINS
+LIBDL = -ldl
+endif
+
 if THREADS
 THREADSLIB = -lpthread
 endif
@@ -53,6 +57,7 @@
 	options.cc \
 	output.cc \
 	parameters.cc \
+	plugin.cc \
 	readsyms.cc \
 	reduced_debug_output.cc \
 	reloc.cc \
@@ -90,6 +95,7 @@
 	options.h \
 	output.h \
 	parameters.h \
+	plugin.h \
 	readsyms.h \
 	reduced_debug_output.h \
 	reloc.h \
@@ -122,7 +128,8 @@
 
 sources_var = main.cc
 deps_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL_DEP)
-ldadd_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL) $(THREADSLIB)
+ldadd_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL) \
+	 $(THREADSLIB) $(LIBDL)
 
 ld_new_SOURCES = $(sources_var)
 ld_new_DEPENDENCIES = $(deps_var) $(LIBOBJS)
diff --git a/gold/Makefile.in b/gold/Makefile.in
index bbc5417..f6a80d0 100644
--- a/gold/Makefile.in
+++ b/gold/Makefile.in
@@ -82,7 +82,7 @@
 	fileread.$(OBJEXT) gold.$(OBJEXT) gold-threads.$(OBJEXT) \
 	layout.$(OBJEXT) mapfile.$(OBJEXT) merge.$(OBJEXT) \
 	object.$(OBJEXT) options.$(OBJEXT) output.$(OBJEXT) \
-	parameters.$(OBJEXT) readsyms.$(OBJEXT) \
+	parameters.$(OBJEXT) plugin.$(OBJEXT) readsyms.$(OBJEXT) \
 	reduced_debug_output.$(OBJEXT) reloc.$(OBJEXT) \
 	resolve.$(OBJEXT) script-sections.$(OBJEXT) script.$(OBJEXT) \
 	stringpool.$(OBJEXT) symtab.$(OBJEXT) target-select.$(OBJEXT) \
@@ -101,7 +101,7 @@
 am__DEPENDENCIES_2 = ../libiberty/libiberty.a
 am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) libgold.a \
 	$(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__DEPENDENCIES_4 = @LIBOBJS@
 am__ld1_SOURCES_DIST = main.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_ld1_OBJECTS = $(am__objects_4)
@@ -227,6 +227,8 @@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PLUGINS_FALSE = @PLUGINS_FALSE@
+PLUGINS_TRUE = @PLUGINS_TRUE@
 POSUB = @POSUB@
 RANDOM_SEED_CFLAGS = @RANDOM_SEED_CFLAGS@
 RANLIB = @RANLIB@
@@ -308,6 +310,7 @@
 	@INCINTL@
 
 LIBIBERTY = ../libiberty/libiberty.a
+@PLUGINS_TRUE@LIBDL = -ldl
 @THREADS_TRUE@THREADSLIB = -lpthread
 AM_YFLAGS = -d
 noinst_LIBRARIES = libgold.a
@@ -336,6 +339,7 @@
 	options.cc \
 	output.cc \
 	parameters.cc \
+	plugin.cc \
 	readsyms.cc \
 	reduced_debug_output.cc \
 	reloc.cc \
@@ -373,6 +377,7 @@
 	options.h \
 	output.h \
 	parameters.h \
+	plugin.h \
 	readsyms.h \
 	reduced_debug_output.h \
 	reloc.h \
@@ -403,7 +408,9 @@
 libgold_a_SOURCES = $(CCFILES) $(HFILES) $(YFILES)
 sources_var = main.cc
 deps_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL_DEP)
-ldadd_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL) $(THREADSLIB)
+ldadd_var = $(TARGETOBJS) libgold.a $(LIBIBERTY) $(LIBINTL) \
+	 $(THREADSLIB) $(LIBDL)
+
 ld_new_SOURCES = $(sources_var)
 ld_new_DEPENDENCIES = $(deps_var) $(LIBOBJS)
 ld_new_LDADD = $(ldadd_var) $(LIBOBJS)
@@ -550,6 +557,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/options.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/output.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parameters.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/powerpc.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readsyms.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/reduced_debug_output.Po@am__quote@
diff --git a/gold/archive.cc b/gold/archive.cc
index f5ad574..7e2d143 100644
--- a/gold/archive.cc
+++ b/gold/archive.cc
@@ -37,6 +37,7 @@
 #include "symtab.h"
 #include "object.h"
 #include "archive.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -126,6 +127,9 @@
                        && parameters->options().preread_archive_symbols());
 #ifndef ENABLE_THREADS
   preread_syms = false;
+#else
+  if (parameters->options().has_plugins())
+    preread_syms = false;
 #endif
   if (preread_syms)
     this->read_all_symbols(input_objects);
@@ -439,11 +443,11 @@
 bool
 Archive::get_file_and_offset(off_t off, Input_objects* input_objects,
                              Input_file** input_file, off_t* memoff,
-                             std::string* member_name)
+                             off_t* memsize, std::string* member_name)
 {
   off_t nested_off;
 
-  this->read_header(off, false, member_name, &nested_off);
+  *memsize = this->read_header(off, false, member_name, &nested_off);
 
   *input_file = this->input_file_;
   *memoff = off + static_cast<off_t>(sizeof(Archive_header));
@@ -455,11 +459,11 @@
   // to the directory containing the archive.
   if (!IS_ABSOLUTE_PATH(member_name->c_str()))
     {
-      const char* arch_path = this->name().c_str();
+      const char* arch_path = this->filename().c_str();
       const char* basename = lbasename(arch_path);
       if (basename > arch_path)
         member_name->replace(0, 0,
-                             this->name().substr(0, basename - arch_path));
+                             this->filename().substr(0, basename - arch_path));
     }
 
   if (nested_off > 0)
@@ -488,8 +492,8 @@
             this->nested_archives_.insert(std::make_pair(*member_name, arch));
           gold_assert(ins.second);
         }
-      return arch->get_file_and_offset(nested_off, input_objects,
-                                       input_file, memoff, member_name);
+      return arch->get_file_and_offset(nested_off, input_objects, input_file,
+                                       memoff, memsize, member_name);
     }
 
   // This is an external member of a thin archive.  Open the
@@ -503,6 +507,7 @@
     return false;
 
   *memoff = 0;
+  *memsize = (*input_file)->file().filesize();
   return true;
 }
 
@@ -515,11 +520,26 @@
   std::string member_name;
   Input_file* input_file;
   off_t memoff;
+  off_t memsize;
 
   if (!this->get_file_and_offset(off, input_objects, &input_file, &memoff,
-                                 &member_name))
+                                 &memsize, &member_name))
     return NULL;
 
+  if (parameters->options().has_plugins())
+    {
+      Object* obj = parameters->options().plugins()->claim_file(input_file,
+                                                                memoff,
+                                                                memsize);
+      if (obj != NULL)
+        {
+          // The input file was claimed by a plugin, and its symbols
+          // have been provided by the plugin.
+	  input_file->file().claim_for_plugin();
+          return obj;
+        }
+    }
+
   off_t filesize = input_file->file().filesize();
   int read_size = elfcpp::Elf_sizes<64>::ehdr_size;
   if (filesize - memoff < read_size)
@@ -753,12 +773,24 @@
   if (mapfile != NULL)
     mapfile->report_include_archive_member(obj->name(), sym, why);
 
+  Pluginobj* pluginobj = obj->pluginobj();
+  if (pluginobj != NULL)
+    {
+      pluginobj->add_symbols(symtab, layout);
+      return;
+    }
+
   if (input_objects->add_object(obj))
     {
       Read_symbols_data sd;
       obj->read_symbols(&sd);
       obj->layout(symtab, layout, &sd);
       obj->add_symbols(symtab, &sd);
+
+      // If this is an external member of a thin archive, unlock the file
+      // for the next task.
+      if (obj->offset() == 0)
+        obj->unlock(this->task_);
     }
   else
     {
diff --git a/gold/archive.h b/gold/archive.h
index 24fdb2b..6b99aed 100644
--- a/gold/archive.h
+++ b/gold/archive.h
@@ -184,7 +184,7 @@
   bool
   get_file_and_offset(off_t off, Input_objects* input_objects,
                       Input_file** input_file, off_t* memoff,
-                      std::string* member_name);
+                      off_t* memsize, std::string* member_name);
 
   // Return an ELF object for the member at offset OFF.  Set *MEMBER_NAME to
   // the name of the member.
diff --git a/gold/config.in b/gold/config.in
index 73cc6e9..309f84b6 100644
--- a/gold/config.in
+++ b/gold/config.in
@@ -4,6 +4,9 @@
    language is requested. */
 #undef ENABLE_NLS
 
+/* Define to enable linker plugins */
+#undef ENABLE_PLUGINS
+
 /* Define to do multi-threaded linking */
 #undef ENABLE_THREADS
 
diff --git a/gold/configure b/gold/configure
index f2ec1ef..d898870 100755
--- a/gold/configure
+++ b/gold/configure
@@ -309,7 +309,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar THREADS_TRUE THREADS_FALSE TARGETOBJS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE YACC RANLIB ac_ct_RANLIB LN_S USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE NATIVE_LINKER_TRUE NATIVE_LINKER_FALSE GCC_TRUE GCC_FALSE FN_PTRS_IN_SO_WITHOUT_PIC_TRUE FN_PTRS_IN_SO_WITHOUT_PIC_FALSE TLS_TRUE TLS_FALSE STATIC_TLS_TRUE STATIC_TLS_FALSE OMP_SUPPORT_TRUE OMP_SUPPORT_FALSE TLS_GNU2_DIALECT_TRUE TLS_GNU2_DIALECT_FALSE TLS_DESCRIPTORS_TRUE TLS_DESCRIPTORS_FALSE CONSTRUCTOR_PRIORITY_TRUE CONSTRUCTOR_PRIORITY_FALSE RANDOM_SEED_CFLAGS WARN_CFLAGS NO_WERROR WARN_CXXFLAGS LFS_CFLAGS LIBOBJS CPP EGREP HAVE_ZLIB_TRUE HAVE_ZLIB_FALSE CXXCPP MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar THREADS_TRUE THREADS_FALSE PLUGINS_TRUE PLUGINS_FALSE TARGETOBJS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE YACC RANLIB ac_ct_RANLIB LN_S USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE NATIVE_LINKER_TRUE NATIVE_LINKER_FALSE GCC_TRUE GCC_FALSE FN_PTRS_IN_SO_WITHOUT_PIC_TRUE FN_PTRS_IN_SO_WITHOUT_PIC_FALSE TLS_TRUE TLS_FALSE STATIC_TLS_TRUE STATIC_TLS_FALSE OMP_SUPPORT_TRUE OMP_SUPPORT_FALSE TLS_GNU2_DIALECT_TRUE TLS_GNU2_DIALECT_FALSE TLS_DESCRIPTORS_TRUE TLS_DESCRIPTORS_FALSE CONSTRUCTOR_PRIORITY_TRUE CONSTRUCTOR_PRIORITY_FALSE RANDOM_SEED_CFLAGS WARN_CFLAGS NO_WERROR WARN_CXXFLAGS LFS_CFLAGS LIBOBJS CPP EGREP HAVE_ZLIB_TRUE HAVE_ZLIB_FALSE CXXCPP MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -866,6 +866,7 @@
   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
   --enable-threads        multi-threaded linking
+  --enable-plugins        linker plugins
   --enable-targets        alternative target configurations
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
@@ -1959,6 +1960,35 @@
 fi
 
 
+# Check whether --enable-plugins or --disable-plugins was given.
+if test "${enable_plugins+set}" = set; then
+  enableval="$enable_plugins"
+  case "${enableval}" in
+  yes | "") plugins=yes ;;
+  no) plugins=no ;;
+  *) plugins=yes ;;
+ esac
+else
+  plugins=no
+fi;
+if test "$plugins" = "yes"; then
+
+cat >>confdefs.h <<\_ACEOF
+#define ENABLE_PLUGINS 1
+_ACEOF
+
+fi
+
+
+if test "$plugins" = "yes"; then
+  PLUGINS_TRUE=
+  PLUGINS_FALSE='#'
+else
+  PLUGINS_TRUE='#'
+  PLUGINS_FALSE=
+fi
+
+
 # Check whether --enable-targets or --disable-targets was given.
 if test "${enable_targets+set}" = set; then
   enableval="$enable_targets"
@@ -6720,6 +6750,13 @@
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
+if test -z "${PLUGINS_TRUE}" && test -z "${PLUGINS_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"PLUGINS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"PLUGINS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
   { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
@@ -7396,6 +7433,8 @@
 s,@am__untar@,$am__untar,;t t
 s,@THREADS_TRUE@,$THREADS_TRUE,;t t
 s,@THREADS_FALSE@,$THREADS_FALSE,;t t
+s,@PLUGINS_TRUE@,$PLUGINS_TRUE,;t t
+s,@PLUGINS_FALSE@,$PLUGINS_FALSE,;t t
 s,@TARGETOBJS@,$TARGETOBJS,;t t
 s,@CC@,$CC,;t t
 s,@CFLAGS@,$CFLAGS,;t t
diff --git a/gold/configure.ac b/gold/configure.ac
index 3fbcd0e..b0efef1 100644
--- a/gold/configure.ac
+++ b/gold/configure.ac
@@ -53,6 +53,20 @@
 fi
 AM_CONDITIONAL(THREADS, test "$threads" = "yes")
 
+AC_ARG_ENABLE([plugins],
+[  --enable-plugins        linker plugins],
+[case "${enableval}" in
+  yes | "") plugins=yes ;;
+  no) plugins=no ;;
+  *) plugins=yes ;;
+ esac],
+[plugins=no])
+if test "$plugins" = "yes"; then
+  AC_DEFINE(ENABLE_PLUGINS, 1,
+	    [Define to enable linker plugins])
+fi
+AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes")
+
 AC_ARG_ENABLE([targets],
 [  --enable-targets        alternative target configurations],
 [case "${enableval}" in
diff --git a/gold/descriptors.cc b/gold/descriptors.cc
index 75a7a86..73c03bf 100644
--- a/gold/descriptors.cc
+++ b/gold/descriptors.cc
@@ -115,7 +115,9 @@
 	  pod->inuse = true;
 	  pod->is_write = (flags & O_ACCMODE) != O_RDONLY;
 
-	  ++this->current_;
+          if (!pod->is_claimed)
+	    ++this->current_;
+          pod->is_claimed = false;
 	  if (this->current_ >= this->limit_)
 	    this->close_some_descriptor();
 
@@ -166,6 +168,24 @@
     }
 }
 
+// Claim the file descriptor DESCRIPTOR for a plugin.  This effectively
+// removes the descriptor from the pool of linker-managed descriptors,
+// as the plugin will assume responsibility for closing it.
+// The IS_CLAIMED flag allows us to recognize when a file descriptor
+// has been reused after being closed by the plugin.
+
+void
+Descriptors::claim_for_plugin(int descriptor)
+{
+  Hold_lock hl(*this->lock_);
+
+  gold_assert(descriptor >= 0
+	      && (static_cast<size_t>(descriptor)
+		  < this->open_descriptors_.size()));
+  Open_descriptor* pod = &this->open_descriptors_[descriptor];
+  pod->is_claimed = true;
+}
+
 // Close some descriptor.  The lock is held when this is called.  We
 // close the descriptor on the top of the free stack.  Note that this
 // is the opposite of an LRU algorithm--we close the most recently
diff --git a/gold/descriptors.h b/gold/descriptors.h
index 6a6ab61..359008c 100644
--- a/gold/descriptors.h
+++ b/gold/descriptors.h
@@ -56,6 +56,12 @@
   void
   release(int descriptor, bool permanent);
 
+  // Claim the file descriptor DESCRIPTOR for a plugin.  This effectively
+  // removes the descriptor from the pool of linker-managed descriptors,
+  // as the plugin will assume responsibility for closing it.
+  void
+  claim_for_plugin(int descriptor);
+
  private:
   // Information kept for a descriptor.
   struct Open_descriptor
@@ -69,6 +75,8 @@
     bool inuse;
     // Whether this is a write descriptor.
     bool is_write;
+    // Whether the descriptor has been claimed for a plugin.
+    bool is_claimed;
   };
 
   bool
@@ -100,6 +108,10 @@
 release_descriptor(int descriptor, bool permanent)
 { descriptors.release(descriptor, permanent); }
 
+inline void
+claim_descriptor_for_plugin(int descriptor)
+{ descriptors.claim_for_plugin(descriptor); }
+
 } // End namespace gold.
 
 #endif // !defined(GOLD_DESCRIPTORS_H)
diff --git a/gold/fileread.cc b/gold/fileread.cc
index 8c2f8f3..72abd6b 100644
--- a/gold/fileread.cc
+++ b/gold/fileread.cc
@@ -191,6 +191,19 @@
   this->released_ = true;
 }
 
+// Claim the file for a plugin.  This effectively releases the file without
+// closing it; the plugin will assume responsibility for closing it.
+
+void
+File_read::claim_for_plugin()
+{
+  gold_assert(this->is_locked());
+  claim_descriptor_for_plugin(this->descriptor_);
+  this->descriptor_ = -1;
+  this->is_descriptor_opened_ = false;
+  this->released_ = true;
+}
+
 // Lock the file.
 
 void
@@ -355,6 +368,16 @@
 {
   gold_assert(size > 0);
 
+  // Check that start and end of the view are within the file.
+  if (start > this->size_
+      || (static_cast<unsigned long long>(size)
+          > static_cast<unsigned long long>(this->size_ - start)))
+    gold_fatal(_("%s: attempt to map %lld bytes at offset %lld exceeds "
+                 "size of file; the file may be corrupt"),
+		   this->filename().c_str(),
+		   static_cast<long long>(size),
+		   static_cast<long long>(start));
+
   off_t poff = File_read::page_offset(start);
 
   section_size_type psize = File_read::pages(size + (start - poff));
diff --git a/gold/fileread.h b/gold/fileread.h
index 4236ce0..1b776f1 100644
--- a/gold/fileread.h
+++ b/gold/fileread.h
@@ -109,6 +109,11 @@
   void
   release();
 
+  // Claim the file for a plugin.  This effectively releases the file without
+  // closing it; the plugin will assume responsibility for closing it.
+  void
+  claim_for_plugin();
+
   // Return the size of the file.
   off_t
   filesize() const
@@ -183,6 +188,14 @@
   static void
   print_stats();
 
+  // Return the open file descriptor (for plugins).
+  int
+  descriptor() const
+  {
+    gold_assert(this->descriptor_ >= 0);
+    return this->descriptor_;
+  }
+
  private:
   // This class may not be copied.
   File_read(const File_read&);
diff --git a/gold/gold.cc b/gold/gold.cc
index 42c6248..ac321be 100644
--- a/gold/gold.cc
+++ b/gold/gold.cc
@@ -40,6 +40,7 @@
 #include "layout.h"
 #include "reloc.h"
 #include "defstd.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -151,6 +152,16 @@
       this_blocker = next_blocker;
     }
 
+  if (options.has_plugins())
+    {
+      Task_token* next_blocker = new Task_token(true);
+      next_blocker->add_blocker();
+      workqueue->queue(new Plugin_hook(options, input_objects, symtab, layout,
+				       &search_path, mapfile, this_blocker,
+				       next_blocker));
+      this_blocker = next_blocker;
+    }
+
   workqueue->queue(new Task_function(new Middle_runner(options,
 						       input_objects,
 						       symtab,
@@ -192,6 +203,7 @@
   if (!doing_static_link && options.is_static())
     {
       // We print out just the first .so we see; there may be others.
+      gold_assert(input_objects->dynobj_begin() != input_objects->dynobj_end());
       gold_error(_("cannot mix -static with dynamic object %s"),
 		 (*input_objects->dynobj_begin())->name().c_str());
     }
diff --git a/gold/i386.cc b/gold/i386.cc
index 54f1233..8a5558e 100644
--- a/gold/i386.cc
+++ b/gold/i386.cc
@@ -135,7 +135,7 @@
 
   // Return whether SYM is defined by the ABI.
   bool
-  do_is_defined_by_abi(Symbol* sym) const
+  do_is_defined_by_abi(const Symbol* sym) const
   { return strcmp(sym->name(), "___tls_get_addr") == 0; }
 
   // Return the size of the GOT section.
@@ -323,7 +323,7 @@
   void
   make_plt_entry(Symbol_table*, Layout*, Symbol*);
 
-  // Define the _TLS_MODULE_BASE_ symbol at the end of the TLS segment.
+  // Define the _TLS_MODULE_BASE_ symbol in the TLS segment.
   void
   define_tls_base_symbol(Symbol_table*, Layout*);
 
@@ -736,7 +736,7 @@
   this->plt_->add_entry(gsym);
 }
 
-// Define the _TLS_MODULE_BASE_ symbol at the end of the TLS segment.
+// Define the _TLS_MODULE_BASE_ symbol in the TLS segment.
 
 void
 Target_i386::define_tls_base_symbol(Symbol_table* symtab, Layout* layout)
@@ -747,12 +747,16 @@
   Output_segment* tls_segment = layout->tls_segment();
   if (tls_segment != NULL)
     {
+      bool is_exec = parameters->options().output_is_executable();
       symtab->define_in_output_segment("_TLS_MODULE_BASE_", NULL,
 				       tls_segment, 0, 0,
 				       elfcpp::STT_TLS,
 				       elfcpp::STB_LOCAL,
 				       elfcpp::STV_HIDDEN, 0,
-				       Symbol::SEGMENT_END, true);
+				       (is_exec
+					? Symbol::SEGMENT_END
+					: Symbol::SEGMENT_START),
+				       true);
     }
   this->tls_base_symbol_defined_ = true;
 }
diff --git a/gold/layout.cc b/gold/layout.cc
index 99819d6..ec9654e 100644
--- a/gold/layout.cc
+++ b/gold/layout.cc
@@ -2753,6 +2753,8 @@
     }
   if (parameters->options().shared() && this->has_static_tls())
     flags |= elfcpp::DF_STATIC_TLS;
+  if (parameters->options().origin())
+    flags |= elfcpp::DF_ORIGIN;
   odyn->add_constant(elfcpp::DT_FLAGS, flags);
 
   flags = 0;
@@ -2774,6 +2776,8 @@
     flags &= ~(elfcpp::DF_1_INITFIRST
 	       | elfcpp::DF_1_NODELETE
 	       | elfcpp::DF_1_NOOPEN);
+  if (parameters->options().origin())
+    flags |= elfcpp::DF_1_ORIGIN;
   if (flags)
     odyn->add_constant(elfcpp::DT_FLAGS_1, flags);
 }
diff --git a/gold/main.cc b/gold/main.cc
index b842159..8e8e8f9 100644
--- a/gold/main.cc
+++ b/gold/main.cc
@@ -42,6 +42,7 @@
 #include "archive.h"
 #include "symtab.h"
 #include "layout.h"
+#include "plugin.h"
 
 using namespace gold;
 
@@ -190,6 +191,10 @@
   if (parameters->options().relocatable())
     command_line.script_options().version_script_info()->clear();
 
+  // Load plugin libraries.
+  if (command_line.options().has_plugins())
+    command_line.options().plugins()->load_plugins();
+
   // The work queue.
   Workqueue workqueue(command_line.options());
 
diff --git a/gold/mapfile.cc b/gold/mapfile.cc
index 9cec366..a3ba52b 100644
--- a/gold/mapfile.cc
+++ b/gold/mapfile.cc
@@ -253,7 +253,7 @@
     {
       os = relobj->output_section(shndx);
       addr = relobj->output_section_offset(shndx);
-      if (addr != -1U)
+      if (addr != -1ULL)
 	addr += os->address();
     }
 
diff --git a/gold/object.cc b/gold/object.cc
index d8f5ec8..f7dcda8 100644
--- a/gold/object.cc
+++ b/gold/object.cc
@@ -926,7 +926,7 @@
 	{
 	  // Do not include this section in the link.
 	  out_sections[i] = NULL;
-          out_section_offsets[i] = -1U;
+          out_section_offsets[i] = invalid_address;
 	  continue;
 	}
 
@@ -967,7 +967,7 @@
 
       out_sections[i] = os;
       if (offset == -1)
-        out_section_offsets[i] = -1U;
+        out_section_offsets[i] = invalid_address;
       else
         out_section_offsets[i] = convert_types<Address, off_t>(offset);
 
@@ -1004,7 +1004,7 @@
       if (data_section == NULL)
 	{
 	  out_sections[i] = NULL;
-          out_section_offsets[i] = -1U;
+          out_section_offsets[i] = invalid_address;
 	  continue;
 	}
 
@@ -1014,7 +1014,7 @@
       Output_section* os = layout->layout_reloc(this, i, shdr, data_section,
 						rr);
       out_sections[i] = os;
-      out_section_offsets[i] = -1U;
+      out_section_offsets[i] = invalid_address;
     }
 
   // Handle the .eh_frame sections at the end.
@@ -1042,7 +1042,7 @@
 						   &offset);
       out_sections[i] = os;
       if (offset == -1)
-        out_section_offsets[i] = -1U;
+        out_section_offsets[i] = invalid_address;
       else
         out_section_offsets[i] = convert_types<Address, off_t>(offset);
 
@@ -1266,7 +1266,7 @@
               // so we leave the input value unchanged here.
 	      continue;
 	    }
-	  else if (out_offsets[shndx] == -1U)
+	  else if (out_offsets[shndx] == invalid_address)
 	    {
 	      // This is a SHF_MERGE section or one which otherwise
 	      // requires special handling.  We get the output address
@@ -1573,7 +1573,7 @@
       *found = true;
       Output_section* os = kept->object_->output_section(kept->shndx_);
       Address offset = kept->object_->get_output_section_offset(kept->shndx_);
-      gold_assert(os != NULL && offset != -1U);
+      gold_assert(os != NULL && offset != invalid_address);
       return os->address() + offset;
     }
   *found = false;
diff --git a/gold/object.h b/gold/object.h
index 188f1f2..fcb5d31 100644
--- a/gold/object.h
+++ b/gold/object.h
@@ -42,6 +42,7 @@
 class Output_section;
 class Output_file;
 class Output_symtab_xindex;
+class Pluginobj;
 class Dynobj;
 class Object_merge_map;
 class Relocatable_relocs;
@@ -214,6 +215,12 @@
   is_dynamic() const
   { return this->is_dynamic_; }
 
+  // Returns NULL for Objects that are not plugin objects.  This method
+  // is overridden in the Pluginobj class.
+  Pluginobj*
+  pluginobj()
+  { return this->do_pluginobj(); }
+
   // Return the target structure associated with this object.
   Target*
   target() const
@@ -431,7 +438,18 @@
 			   size_t* used) const
   { this->do_get_global_symbol_counts(symtab, defined, used); }
 
+  // Set the target.
+  void
+  set_target(Target* target)
+  { this->target_ = target; }
+
  protected:
+  // Returns NULL for Objects that are not plugin objects.  This method
+  // is overridden in the Pluginobj class.
+  virtual Pluginobj*
+  do_pluginobj()
+  { return NULL; }
+
   // Read the symbols--implemented by child class.
   virtual void
   do_read_symbols(Read_symbols_data*) = 0;
@@ -1184,6 +1202,8 @@
   typedef std::vector<Symbol*> Symbols;
   typedef std::vector<Symbol_value<size> > Local_values;
 
+  static const Address invalid_address = static_cast<Address>(0) - 1;
+
   Sized_relobj(const std::string& name, Input_file* input_file, off_t offset,
 	       const typename elfcpp::Ehdr<size, big_endian>&);
 
@@ -1439,7 +1459,12 @@
   // Get the offset of a section.
   uint64_t
   do_output_section_offset(unsigned int shndx) const
-  { return this->get_output_section_offset(shndx); }
+  {
+    Address off = this->get_output_section_offset(shndx);
+    if (off == invalid_address)
+      return -1ULL;
+    return off;
+  }
 
   // Set the offset of a section.
   void
@@ -1681,7 +1706,7 @@
   // for TLS symbols, indexed by symbol number.
   Local_got_offsets local_got_offsets_;
   // For each input section, the offset of the input section in its
-  // output section.  This is -1U if the input section requires a
+  // output section.  This is INVALID_ADDRESS if the input section requires a
   // special mapping.
   std::vector<Address> section_offsets_;
   // Table mapping discarded comdat sections to corresponding kept sections.
diff --git a/gold/options.cc b/gold/options.cc
index 78f0b1a..069c138 100644
--- a/gold/options.cc
+++ b/gold/options.cc
@@ -36,6 +36,7 @@
 #include "script.h"
 #include "target-select.h"
 #include "options.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -296,6 +297,15 @@
   cmdline->inputs().add_file(file);
 }
 
+#ifdef ENABLE_PLUGINS
+void
+General_options::parse_plugin(const char*, const char* arg,
+                              Command_line*)
+{
+  this->add_plugin(arg);
+}
+#endif // ENABLE_PLUGINS
+
 void
 General_options::parse_R(const char* option, const char* arg,
                          Command_line* cmdline)
@@ -594,7 +604,7 @@
 
 General_options::General_options()
   : execstack_status_(General_options::EXECSTACK_FROM_INPUT), static_(false),
-    do_demangle_(false)
+    do_demangle_(false), plugins_()
 {
 }
 
@@ -632,6 +642,16 @@
   free(canonical_sysroot);
 }
 
+// Add a plugin and its arguments to the list of plugins.
+
+void
+General_options::add_plugin(const char* arg)
+{
+  if (this->plugins_ == NULL)
+    this->plugins_ = new Plugin_manager(*this);
+  this->plugins_->add_plugin(arg);
+}
+
 // Set up variables and other state that isn't set up automatically by
 // the parse routine, and ensure options don't contradict each other
 // and are otherwise kosher.
@@ -772,6 +792,9 @@
   this->add_sysroot();
 
   // Now that we've normalized the options, check for contradictory ones.
+  if (this->shared() && this->is_static())
+    gold_fatal(_("-shared and -static are incompatible"));
+
   if (this->shared() && this->relocatable())
     gold_fatal(_("-shared and -r are incompatible"));
 
diff --git a/gold/options.h b/gold/options.h
index 46ad761..167e58a 100644
--- a/gold/options.h
+++ b/gold/options.h
@@ -54,6 +54,7 @@
 class Input_file_group;
 class Position_dependent_options;
 class Target;
+class Plugin_manager;
 
 // The nested namespace is to contain all the global variables and
 // structs that need to be defined in the .h file, but do not need to
@@ -689,8 +690,14 @@
   DEFINE_string(oformat, options::EXACTLY_TWO_DASHES, '\0', "elf",
 		N_("Set output format"), N_("[binary]"));
 
+#ifdef ENABLE_PLUGINS
+  DEFINE_special(plugin, options::TWO_DASHES, '\0',
+                 N_("Load a plugin library"), N_("PLUGIN[,ARG,...]"));
+#endif
+
   DEFINE_bool(preread_archive_symbols, options::TWO_DASHES, '\0', false,
               N_("Preread archive symbols when multi-threaded"), NULL);
+
   DEFINE_string(print_symbol_counts, options::TWO_DASHES, '\0', NULL,
 		N_("Print symbols defined and used for each input"),
 		N_("FILENAME"));
@@ -837,6 +844,9 @@
   DEFINE_bool(relro, options::DASH_Z, '\0', false,
 	      N_("Where possible mark variables read-only after relocation"),
 	      N_("Don't mark variables read-only after relocation"));
+  DEFINE_bool(origin, options::DASH_Z, '\0', false,
+	      N_("Mark DSO to indicate that needs immediate $ORIGIN "
+                 "processing at runtime"), NULL);
 
  public:
   typedef options::Dir_list Dir_list;
@@ -862,6 +872,20 @@
   output_is_position_independent() const
   { return this->shared(); }
 
+  // Return true if the output is something that can be exec()ed, such
+  // as a static executable, or a position-dependent or
+  // position-independent executable, but not a dynamic library or an
+  // object file.
+  bool
+  output_is_executable() const
+  { return !this->shared() || this->output_is_pie(); }
+
+  // Return true if the output is a position-independent executable.
+  // This is currently not supported.
+  bool
+  output_is_pie() const
+  { return false; }
+
   // This would normally be static(), and defined automatically, but
   // since static is a keyword, we need to come up with our own name.
   bool
@@ -899,6 +923,16 @@
   do_demangle() const
   { return this->do_demangle_; }
 
+  // Returns TRUE if any plugin libraries have been loaded.
+  bool
+  has_plugins() const
+  { return this->plugins_ != NULL; }
+
+  // Return a pointer to the plugin manager.
+  Plugin_manager*
+  plugins() const
+  { return this->plugins_; }
+
  private:
   // Don't copy this structure.
   General_options(const General_options&);
@@ -936,12 +970,18 @@
   void
   add_sysroot();
 
+  // Add a plugin and its arguments to the list of plugins.
+  void
+  add_plugin(const char* arg);
+
   // Whether to mark the stack as executable.
   Execstack execstack_status_;
   // Whether to do a static link.
   bool static_;
   // Whether to do demangling.
   bool do_demangle_;
+  // List of plugin libraries.
+  Plugin_manager* plugins_;
 };
 
 // The position-dependent options.  We use this to store the state of
diff --git a/gold/output.cc b/gold/output.cc
index 2a46195..f6a6f1d 100644
--- a/gold/output.cc
+++ b/gold/output.cc
@@ -838,11 +838,11 @@
   Output_section* os = this->u1_.relobj->output_section(lsi);
   gold_assert(os != NULL);
   Address offset = this->u1_.relobj->get_output_section_offset(lsi);
-  if (offset != -1U)
+  if (offset != invalid_address)
     return offset + addend;
   // This is a merge section.
   offset = os->output_address(this->u1_.relobj, lsi, addend);
-  gold_assert(offset != -1U);
+  gold_assert(offset != invalid_address);
   return offset;
 }
 
@@ -858,13 +858,13 @@
       Output_section* os = this->u2_.relobj->output_section(this->shndx_);
       gold_assert(os != NULL);
       Address off = this->u2_.relobj->get_output_section_offset(this->shndx_);
-      if (off != -1U)
+      if (off != invalid_address)
 	address += os->address() + off;
       else
 	{
 	  address = os->output_address(this->u2_.relobj, this->shndx_,
 				       address);
-	  gold_assert(address != -1U);
+	  gold_assert(address != invalid_address);
 	}
     }
   else if (this->u2_.od != NULL)
@@ -2043,7 +2043,7 @@
       if (p->output_offset(object, shndx, offset, &output_offset))
 	{
 	  if (output_offset == -1)
-	    return -1U;
+	    return -1ULL;
 	  return addr + output_offset;
 	}
       addr += p->data_size();
diff --git a/gold/output.h b/gold/output.h
index 1c95881..9f075be 100644
--- a/gold/output.h
+++ b/gold/output.h
@@ -874,6 +874,8 @@
   typedef typename elfcpp::Elf_types<size>::Elf_Addr Address;
   typedef typename elfcpp::Elf_types<size>::Elf_Addr Addend;
 
+  static const Address invalid_address = static_cast<Address>(0) - 1;
+
   // An uninitialized entry.  We need this because we want to put
   // instances of this class into an STL container.
   Output_reloc()
@@ -1915,7 +1917,7 @@
 
   // Add a new input section SHNDX, named NAME, with header SHDR, from
   // object OBJECT.  RELOC_SHNDX is the index of a relocation section
-  // which applies to this section, or 0 if none, or -1U if more than
+  // which applies to this section, or 0 if none, or -1 if more than
   // one.  HAVE_SECTIONS_SCRIPT is true if we have a SECTIONS clause
   // in a linker script; in that case we need to keep track of input
   // sections associated with an output section.  Return the offset
diff --git a/gold/plugin.cc b/gold/plugin.cc
new file mode 100644
index 0000000..a5f7a06
--- /dev/null
+++ b/gold/plugin.cc
@@ -0,0 +1,984 @@
+// plugin.c -- plugin manager for gold      -*- C++ -*-
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+#include <cstdio>
+#include <cstdarg>
+#include <cstring>
+#include <string>
+#include <vector>
+#include <dlfcn.h>
+
+#include "gold.h"
+#include "parameters.h"
+#include "errors.h"
+#include "fileread.h"
+#include "layout.h"
+#include "options.h"
+#include "plugin.h"
+#include "target.h"
+#include "readsyms.h"
+#include "symtab.h"
+#include "elfcpp.h"
+
+namespace gold
+{
+
+#ifdef ENABLE_PLUGINS
+
+// The linker's exported interfaces.
+
+extern "C"
+{
+
+static enum ld_plugin_status
+register_claim_file(ld_plugin_claim_file_handler handler);
+
+static enum ld_plugin_status
+register_all_symbols_read(ld_plugin_all_symbols_read_handler handler);
+
+static enum ld_plugin_status
+register_cleanup(ld_plugin_cleanup_handler handler);
+
+static enum ld_plugin_status
+add_symbols(void *handle, int nsyms, const struct ld_plugin_symbol *syms);
+
+static enum ld_plugin_status
+get_symbols(const void *handle, int nsyms, struct ld_plugin_symbol *syms);
+
+static enum ld_plugin_status
+add_input_file(char *pathname);
+
+static enum ld_plugin_status
+message(int level, char *format, ...);
+
+};
+
+#endif // ENABLE_PLUGINS
+
+static Pluginobj* make_sized_plugin_object(Input_file* input_file,
+                                           off_t offset);
+
+// Plugin methods.
+
+// Load one plugin library.
+
+void
+Plugin::load()
+{
+#ifdef ENABLE_PLUGINS
+  std::string filename;
+  std::vector<std::string> args;
+
+  // Parse the filename and arguments, each separated by commas.
+  // FIXME:  Temporarily allowing semicolon as an argument separator
+  // so args can be passed through gcc's -Wl,... option, which
+  // breaks arguments at the commas.
+  const char* p = this->args_;
+  int n = strcspn(p, ",;");
+  filename.assign(p, n);
+  p += n;
+  while (*p == ',' || *p == ';')
+    {
+      ++p;
+      n = strcspn(p, ",;");
+      args.push_back(std::string(p, n));
+      p += n;
+    }
+
+  // Load the plugin library.
+  // FIXME: Look for the library in standard locations.
+  this->handle_ = dlopen(filename.c_str(), RTLD_NOW);
+  if (this->handle_ == NULL)
+    {
+      gold_error(_("%s: could not load plugin library"), filename.c_str());
+      return;
+    }
+
+  // Find the plugin's onload entry point.
+  ld_plugin_onload onload = reinterpret_cast<ld_plugin_onload>
+    (dlsym(this->handle_, "onload"));
+  if (onload == NULL)
+    {
+      gold_error(_("%s: could not find onload entry point"), filename.c_str());
+      return;
+    }
+
+  // Get the linker's version number.
+  const char* ver = get_version_string();
+  int major = 0;
+  int minor = 0;
+  sscanf(ver, "%d.%d", &major, &minor);
+
+  // Allocate and populate a transfer vector.
+  const int tv_fixed_size = 11;
+  int tv_size = args.size() + tv_fixed_size;
+  ld_plugin_tv *tv = new ld_plugin_tv[tv_size];
+
+  int i = 0;
+  tv[i].tv_tag = LDPT_API_VERSION;
+  tv[i].tv_u.tv_val = LD_PLUGIN_API_VERSION;
+
+  ++i;
+  tv[i].tv_tag = LDPT_GOLD_VERSION;
+  tv[i].tv_u.tv_val = major * 100 + minor;
+
+  ++i;
+  tv[i].tv_tag = LDPT_LINKER_OUTPUT;
+  if (parameters->options().relocatable())
+    tv[i].tv_u.tv_val = LDPO_REL;
+  else if (parameters->options().shared())
+    tv[i].tv_u.tv_val = LDPO_DYN;
+  else
+    tv[i].tv_u.tv_val = LDPO_EXEC;
+
+  for (unsigned int j = 0; j < args.size(); ++j)
+    {
+      ++i;
+      tv[i].tv_tag = LDPT_OPTION;
+      tv[i].tv_u.tv_string = args[j].c_str();
+    }
+
+  ++i;
+  tv[i].tv_tag = LDPT_REGISTER_CLAIM_FILE_HOOK;
+  tv[i].tv_u.tv_register_claim_file = register_claim_file;
+
+  ++i;
+  tv[i].tv_tag = LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK;
+  tv[i].tv_u.tv_register_all_symbols_read = register_all_symbols_read;
+
+  ++i;
+  tv[i].tv_tag = LDPT_REGISTER_CLEANUP_HOOK;
+  tv[i].tv_u.tv_register_cleanup = register_cleanup;
+
+  ++i;
+  tv[i].tv_tag = LDPT_ADD_SYMBOLS;
+  tv[i].tv_u.tv_add_symbols = add_symbols;
+
+  ++i;
+  tv[i].tv_tag = LDPT_GET_SYMBOLS;
+  tv[i].tv_u.tv_get_symbols = get_symbols;
+
+  ++i;
+  tv[i].tv_tag = LDPT_ADD_INPUT_FILE;
+  tv[i].tv_u.tv_add_input_file = add_input_file;
+
+  ++i;
+  tv[i].tv_tag = LDPT_MESSAGE;
+  tv[i].tv_u.tv_message = message;
+
+  ++i;
+  tv[i].tv_tag = LDPT_NULL;
+  tv[i].tv_u.tv_val = 0;
+
+  gold_assert(i == tv_size - 1);
+
+  // Call the onload entry point.
+  (*onload)(tv);
+
+  delete tv;
+#endif // ENABLE_PLUGINS
+}
+
+// Call the plugin claim-file handler.
+
+inline bool
+Plugin::claim_file(struct ld_plugin_input_file *plugin_input_file)
+{
+  int claimed = 0;
+
+  if (this->claim_file_handler_ != NULL)
+    {
+      (*this->claim_file_handler_)(plugin_input_file, &claimed);
+      if (claimed)
+        return true;
+    }
+  return false;
+}
+
+// Call the all-symbols-read handler.
+
+inline void
+Plugin::all_symbols_read()
+{
+  if (this->all_symbols_read_handler_ != NULL)
+    (*this->all_symbols_read_handler_)();
+}
+
+// Call the cleanup handler.
+
+inline void
+Plugin::cleanup()
+{
+  if (this->cleanup_handler_ != NULL)
+    (*this->cleanup_handler_)();
+}
+
+// Plugin_manager methods.
+
+Plugin_manager::~Plugin_manager()
+{
+  for (Plugin_list::iterator p = this->plugins_.begin();
+       p != this->plugins_.end();
+       ++p)
+    delete *p;
+  this->plugins_.clear();
+  for (Object_list::iterator obj = this->objects_.begin();
+       obj != this->objects_.end();
+       ++obj)
+    delete *obj;
+  this->objects_.clear();
+}
+
+// Load all plugin libraries.
+
+void
+Plugin_manager::load_plugins()
+{
+  for (this->current_ = this->plugins_.begin();
+       this->current_ != this->plugins_.end();
+       ++this->current_)
+    (*this->current_)->load();
+}
+
+// Call the plugin claim-file handlers in turn to see if any claim the file.
+
+Pluginobj*
+Plugin_manager::claim_file(Input_file* input_file, off_t offset,
+                           off_t filesize)
+{
+  if (this->in_replacement_phase_)
+    return NULL;
+
+  unsigned int handle = this->objects_.size();
+  this->input_file_ = input_file;
+  this->plugin_input_file_.name = input_file->filename().c_str();
+  this->plugin_input_file_.fd = input_file->file().descriptor();
+  this->plugin_input_file_.offset = offset;
+  this->plugin_input_file_.filesize = filesize;
+  this->plugin_input_file_.handle = reinterpret_cast<void*>(handle);
+
+  for (this->current_ = this->plugins_.begin();
+       this->current_ != this->plugins_.end();
+       ++this->current_)
+    {
+      if ((*this->current_)->claim_file(&this->plugin_input_file_))
+        {
+          if (this->objects_.size() <= handle)
+            {
+              gold_error(_("%s: plugin claimed the file "
+                           "but did not provide any symbols"),
+                         this->plugin_input_file_.name);
+              return NULL;
+            }
+          return this->objects_[handle];
+        }
+    }
+
+  return NULL;
+}
+
+// Call the all-symbols-read handlers.
+
+void
+Plugin_manager::all_symbols_read(Workqueue* workqueue,
+                                 Input_objects* input_objects,
+	                         Symbol_table* symtab, Layout* layout,
+	                         Dirsearch* dirpath, Mapfile* mapfile,
+	                         Task_token** last_blocker)
+{
+  this->in_replacement_phase_ = true;
+  this->workqueue_ = workqueue;
+  this->input_objects_ = input_objects;
+  this->symtab_ = symtab;
+  this->layout_ = layout;
+  this->dirpath_ = dirpath;
+  this->mapfile_ = mapfile;
+  this->this_blocker_ = NULL;
+
+  for (this->current_ = this->plugins_.begin();
+       this->current_ != this->plugins_.end();
+       ++this->current_)
+    (*this->current_)->all_symbols_read();
+
+  *last_blocker = this->this_blocker_;
+}
+
+// Call the cleanup handlers.
+
+void
+Plugin_manager::cleanup()
+{
+  for (this->current_ = this->plugins_.begin();
+       this->current_ != this->plugins_.end();
+       ++this->current_)
+    (*this->current_)->cleanup();
+}
+
+// Make a new Pluginobj object.  This is called when the plugin calls
+// the add_symbols API.
+
+Pluginobj*
+Plugin_manager::make_plugin_object(unsigned int handle)
+{
+  // Make sure we aren't asked to make an object for the same handle twice.
+  if (this->objects_.size() != handle)
+    return NULL;
+
+  Pluginobj* obj = make_sized_plugin_object(this->input_file_,
+                                            this->plugin_input_file_.offset);
+  this->objects_.push_back(obj);
+  return obj;
+}
+
+// Add a new input file.
+
+ld_plugin_status
+Plugin_manager::add_input_file(char *pathname)
+{
+  Input_file_argument file(pathname, false, "", false, this->options_);
+  Input_argument* input_argument = new Input_argument(file);
+  Task_token* next_blocker = new Task_token(true);
+  next_blocker->add_blocker();
+  this->workqueue_->queue_soon(new Read_symbols(this->options_,
+                                                this->input_objects_,
+                                                this->symtab_,
+                                                this->layout_,
+                                                this->dirpath_,
+                                                this->mapfile_,
+                                                input_argument,
+                                                NULL,
+                                                this->this_blocker_,
+                                                next_blocker));
+  this->this_blocker_ = next_blocker;
+  return LDPS_OK;
+}
+
+// Class Pluginobj.
+
+Pluginobj::Pluginobj(const std::string& name, Input_file* input_file,
+                     off_t offset)
+  : Object(name, input_file, false, offset),
+    nsyms_(0), syms_(NULL), symbols_(), comdat_map_()
+{
+}
+
+// Get symbol resolution info.
+
+ld_plugin_status
+Pluginobj::get_symbol_resolution_info(int nsyms, ld_plugin_symbol* syms) const
+{
+  if (this->nsyms_ == 0)
+    return LDPS_NO_SYMS;
+  for (int i = 0; i < nsyms; i++)
+    {
+      ld_plugin_symbol* isym = &syms[i];
+      Symbol* lsym = this->symbols_[i];
+      ld_plugin_symbol_resolution res = LDPR_UNKNOWN;
+
+      if (lsym->is_undefined())
+        // The symbol remains undefined.
+        res = LDPR_UNDEF;
+      else if (isym->def == LDPK_UNDEF
+               || isym->def == LDPK_WEAKUNDEF
+               || isym->def == LDPK_COMMON)
+        {
+          // The original symbol was undefined or common.
+          if (lsym->source() != Symbol::FROM_OBJECT)
+            res = LDPR_RESOLVED_EXEC;
+          else if (lsym->object()->pluginobj() != NULL)
+            res = LDPR_RESOLVED_IR;
+          else if (lsym->object()->is_dynamic())
+            res = LDPR_RESOLVED_DYN;
+          else
+            res = LDPR_RESOLVED_EXEC;
+        }
+      else
+        {
+          // The original symbol was a definition.
+          if (lsym->source() != Symbol::FROM_OBJECT)
+            res = LDPR_PREEMPTED_REG;
+          else if (lsym->object() == static_cast<const Object*>(this))
+            res = (lsym->in_real_elf()
+                   ? LDPR_PREVAILING_DEF
+                   : LDPR_PREVAILING_DEF_IRONLY);
+          else
+            res = (lsym->object()->pluginobj() != NULL
+                   ? LDPR_PREEMPTED_IR
+                   : LDPR_PREEMPTED_REG);
+        }
+      isym->resolution = res;
+    }
+  return LDPS_OK;
+}
+
+// Return TRUE if the comdat group with key COMDAT_KEY from this object
+// should be kept.
+
+bool
+Pluginobj::include_comdat_group(std::string comdat_key, Layout* layout)
+{
+  std::pair<Comdat_map::iterator, bool> ins =
+    this->comdat_map_.insert(std::make_pair(comdat_key, false));
+
+  // If this is the first time we've seen this comdat key, ask the
+  // layout object whether it should be included.
+  if (ins.second)
+    ins.first->second = layout->add_comdat(NULL, 1, comdat_key, true);
+
+  return ins.first->second;
+}
+
+// Class Sized_pluginobj.
+
+template<int size, bool big_endian>
+Sized_pluginobj<size, big_endian>::Sized_pluginobj(
+    const std::string& name,
+    Input_file* input_file,
+    off_t offset)
+  : Pluginobj(name, input_file, offset)
+{
+}
+
+// Read the symbols.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+void
+Sized_pluginobj<size, big_endian>::do_read_symbols(Read_symbols_data*)
+{
+  gold_unreachable();
+}
+
+// Lay out the input sections.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+void
+Sized_pluginobj<size, big_endian>::do_layout(Symbol_table*, Layout*,
+                                             Read_symbols_data*)
+{
+  gold_unreachable();
+}
+
+// Add the symbols to the symbol table.
+
+template<int size, bool big_endian>
+void
+Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table*,
+                                                  Read_symbols_data*)
+{
+  gold_unreachable();
+}
+
+template<int size, bool big_endian>
+void
+Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table* symtab,
+                                                  Layout* layout)
+{
+  const int sym_size = elfcpp::Elf_sizes<size>::sym_size;
+  unsigned char symbuf[sym_size];
+  elfcpp::Sym<size, big_endian> sym(symbuf);
+  elfcpp::Sym_write<size, big_endian> osym(symbuf);
+
+  typedef typename elfcpp::Elf_types<size>::Elf_WXword Elf_size_type;
+
+  this->symbols_.resize(this->nsyms_);
+
+  for (int i = 0; i < this->nsyms_; ++i)
+    {
+      const struct ld_plugin_symbol *isym = &this->syms_[i];
+      const char* name = isym->name;
+      const char* ver = isym->version;
+      elfcpp::Elf_Half shndx;
+      elfcpp::STB bind;
+      elfcpp::STV vis;
+
+      if (name != NULL && name[0] == '\0')
+        name = NULL;
+      if (ver != NULL && ver[0] == '\0')
+        ver = NULL;
+
+      switch (isym->def)
+        {
+        case LDPK_WEAKDEF:
+        case LDPK_WEAKUNDEF:
+          bind = elfcpp::STB_WEAK;
+          break;
+        case LDPK_DEF:
+        case LDPK_UNDEF:
+        case LDPK_COMMON:
+        default:
+          bind = elfcpp::STB_GLOBAL;
+          break;
+        }
+
+      switch (isym->def)
+        {
+        case LDPK_DEF:
+        case LDPK_WEAKDEF:
+          shndx = elfcpp::SHN_ABS;
+          break;
+        case LDPK_COMMON:
+          shndx = elfcpp::SHN_COMMON;
+          break;
+        case LDPK_UNDEF:
+        case LDPK_WEAKUNDEF:
+        default:
+          shndx = elfcpp::SHN_UNDEF;
+          break;
+        }
+
+      switch (isym->visibility)
+        {
+        case LDPV_PROTECTED:
+          vis = elfcpp::STV_DEFAULT;
+          break;
+        case LDPV_INTERNAL:
+          vis = elfcpp::STV_DEFAULT;
+          break;
+        case LDPV_HIDDEN:
+          vis = elfcpp::STV_DEFAULT;
+          break;
+        case LDPV_DEFAULT:
+        default:
+          vis = elfcpp::STV_DEFAULT;
+          break;
+        }
+
+      if (isym->comdat_key != NULL
+          && isym->comdat_key[0] != '\0'
+          && !this->include_comdat_group(isym->comdat_key, layout))
+        shndx = elfcpp::SHN_UNDEF;
+
+      osym.put_st_name(0);
+      osym.put_st_value(0);
+      osym.put_st_size(static_cast<Elf_size_type>(isym->size));
+      osym.put_st_info(bind, elfcpp::STT_NOTYPE);
+      osym.put_st_other(vis, 0);
+      osym.put_st_shndx(shndx);
+
+      this->symbols_[i] =
+        symtab->add_from_pluginobj<size, big_endian>(this, name, ver, &sym);
+    }
+}
+
+// Get the size of a section.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+uint64_t
+Sized_pluginobj<size, big_endian>::do_section_size(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Get the name of a section.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+std::string
+Sized_pluginobj<size, big_endian>::do_section_name(unsigned int)
+{
+  gold_unreachable();
+  return std::string();
+}
+
+// Return a view of the contents of a section.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+Object::Location
+Sized_pluginobj<size, big_endian>::do_section_contents(unsigned int)
+{
+  Location loc(0, 0);
+
+  gold_unreachable();
+  return loc;
+}
+
+// Return section flags.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+uint64_t
+Sized_pluginobj<size, big_endian>::do_section_flags(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return section address.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+uint64_t
+Sized_pluginobj<size, big_endian>::do_section_address(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return section type.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+unsigned int
+Sized_pluginobj<size, big_endian>::do_section_type(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return the section link field.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+unsigned int
+Sized_pluginobj<size, big_endian>::do_section_link(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return the section link field.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+unsigned int
+Sized_pluginobj<size, big_endian>::do_section_info(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return the section alignment.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+uint64_t
+Sized_pluginobj<size, big_endian>::do_section_addralign(unsigned int)
+{
+  gold_unreachable();
+  return 0;
+}
+
+// Return the Xindex structure to use.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+Xindex*
+Sized_pluginobj<size, big_endian>::do_initialize_xindex()
+{
+  gold_unreachable();
+  return NULL;
+}
+
+// Get symbol counts.  Not used for plugin objects.
+
+template<int size, bool big_endian>
+void
+Sized_pluginobj<size, big_endian>::do_get_global_symbol_counts(const Symbol_table*,
+                                                   size_t*, size_t*) const
+{
+  gold_unreachable();
+}
+
+// Class Add_plugin_symbols.
+
+Add_plugin_symbols::~Add_plugin_symbols()
+{
+  if (this->this_blocker_ != NULL)
+    delete this->this_blocker_;
+  // next_blocker_ is deleted by the task associated with the next
+  // input file.
+}
+
+// We are blocked by this_blocker_.  We block next_blocker_.  We also
+// lock the file.
+
+Task_token*
+Add_plugin_symbols::is_runnable()
+{
+  if (this->this_blocker_ != NULL && this->this_blocker_->is_blocked())
+    return this->this_blocker_;
+  if (this->obj_->is_locked())
+    return this->obj_->token();
+  return NULL;
+}
+
+void
+Add_plugin_symbols::locks(Task_locker* tl)
+{
+  tl->add(this, this->next_blocker_);
+  tl->add(this, this->obj_->token());
+}
+
+// Add the symbols in the object to the symbol table.
+
+void
+Add_plugin_symbols::run(Workqueue*)
+{
+  this->obj_->add_symbols(this->symtab_, this->layout_);
+}
+
+// Class Plugin_cleanup.  This task calls the plugin cleanup hooks once all
+// replacement files have been added.
+
+class Plugin_cleanup : public Task
+{
+ public:
+  Plugin_cleanup(Task_token* this_blocker, Task_token* next_blocker)
+    : this_blocker_(this_blocker), next_blocker_(next_blocker)
+  { }
+
+  ~Plugin_cleanup()
+  {
+    if (this->this_blocker_ != NULL)
+      delete this->this_blocker_;
+  }
+
+  Task_token*
+  is_runnable()
+  {
+    if (this->this_blocker_ != NULL && this->this_blocker_->is_blocked())
+      return this->this_blocker_;
+    return NULL;
+  }
+
+  void
+  locks(Task_locker* tl)
+  { tl->add(this, this->next_blocker_); }
+
+  void
+  run(Workqueue*)
+  { parameters->options().plugins()->cleanup(); }
+
+  std::string
+  get_name() const
+  { return "Plugin_cleanup"; }
+
+ private:
+  Task_token* this_blocker_;
+  Task_token* next_blocker_;
+};
+
+// Class Plugin_hook.
+
+Plugin_hook::~Plugin_hook()
+{
+}
+
+// Return whether a Plugin_hook task is runnable.
+
+Task_token*
+Plugin_hook::is_runnable()
+{
+  if (this->this_blocker_ != NULL && this->this_blocker_->is_blocked())
+    return this->this_blocker_;
+  return NULL;
+}
+
+// Return a Task_locker for a Plugin_hook task.  We don't need any
+// locks here.
+
+void
+Plugin_hook::locks(Task_locker*)
+{
+}
+
+// Run a Plugin_hook task.
+
+void
+Plugin_hook::run(Workqueue* workqueue)
+{
+  this->do_plugin_hook(workqueue);
+}
+
+// Run the "all symbols read" plugin hook.
+
+void
+Plugin_hook::do_plugin_hook(Workqueue* workqueue)
+{
+  gold_assert(this->options_.has_plugins());
+  this->options_.plugins()->all_symbols_read(workqueue,
+                                             this->input_objects_,
+                                             this->symtab_,
+                                             this->layout_,
+                                             this->dirpath_,
+                                             this->mapfile_,
+                                             &this->this_blocker_);
+  workqueue->queue_soon(new Plugin_cleanup(this->this_blocker_,
+					   this->next_blocker_));
+}
+
+// The C interface routines called by the plugins.
+
+#ifdef ENABLE_PLUGINS
+
+// Register a claim-file handler.
+
+static enum ld_plugin_status
+register_claim_file(ld_plugin_claim_file_handler handler)
+{
+  gold_assert(parameters->options().has_plugins());
+  parameters->options().plugins()->set_claim_file_handler(handler);
+  return LDPS_OK;
+}
+
+// Register an all-symbols-read handler.
+
+static enum ld_plugin_status
+register_all_symbols_read(ld_plugin_all_symbols_read_handler handler)
+{
+  gold_assert(parameters->options().has_plugins());
+  parameters->options().plugins()->set_all_symbols_read_handler(handler);
+  return LDPS_OK;
+}
+
+// Register a cleanup handler.
+
+static enum ld_plugin_status
+register_cleanup(ld_plugin_cleanup_handler handler)
+{
+  gold_assert(parameters->options().has_plugins());
+  parameters->options().plugins()->set_cleanup_handler(handler);
+  return LDPS_OK;
+}
+
+// Add symbols from a plugin-claimed input file.
+
+static enum ld_plugin_status
+add_symbols(void* handle, int nsyms, const ld_plugin_symbol *syms)
+{
+  gold_assert(parameters->options().has_plugins());
+  Pluginobj* obj = parameters->options().plugins()->make_plugin_object(
+      static_cast<unsigned int>(reinterpret_cast<intptr_t>(handle)));
+  if (obj == NULL)
+    return LDPS_ERR;
+  obj->store_incoming_symbols(nsyms, syms);
+  return LDPS_OK;
+}
+
+// Get the symbol resolution info for a plugin-claimed input file.
+
+static enum ld_plugin_status
+get_symbols(const void * handle, int nsyms, ld_plugin_symbol* syms)
+{
+  gold_assert(parameters->options().has_plugins());
+  Pluginobj* obj = parameters->options().plugins()->object(
+      static_cast<unsigned int>(reinterpret_cast<intptr_t>(handle)));
+  if (obj == NULL)
+    return LDPS_ERR;
+  return obj->get_symbol_resolution_info(nsyms, syms);
+}
+
+// Add a new (real) input file generated by a plugin.
+
+static enum ld_plugin_status
+add_input_file(char *pathname)
+{
+  gold_assert(parameters->options().has_plugins());
+  return parameters->options().plugins()->add_input_file(pathname);
+}
+
+// Issue a diagnostic message from a plugin.
+
+static enum ld_plugin_status
+message(int level, char * format, ...)
+{
+  va_list args;
+  va_start(args, format);
+
+  switch (level)
+    {
+    case LDPL_INFO:
+      parameters->errors()->info(format, args);
+      break;
+    case LDPL_WARNING:
+      parameters->errors()->warning(format, args);
+      break;
+    case LDPL_ERROR:
+    default:
+      parameters->errors()->error(format, args);
+      break;
+    case LDPL_FATAL:
+      parameters->errors()->fatal(format, args);
+      break;
+    }
+
+  va_end(args);
+  return LDPS_OK;
+}
+
+#endif // ENABLE_PLUGINS
+
+// Allocate a Pluginobj object of the appropriate size and endianness.
+
+static Pluginobj*
+make_sized_plugin_object(Input_file* input_file, off_t offset)
+{
+  Target* target;
+  Pluginobj* obj = NULL;
+
+  if (parameters->target_valid())
+    target = const_cast<Target*>(&parameters->target());
+  else
+    target = const_cast<Target*>(&parameters->default_target());
+
+  if (target->get_size() == 32)
+    {
+      if (target->is_big_endian())
+#ifdef HAVE_TARGET_32_BIG
+        obj = new Sized_pluginobj<32, true>(input_file->filename(),
+                                            input_file, offset);
+#else
+        gold_error(_("%s: not configured to support "
+		     "32-bit big-endian object"),
+		   input_file->filename().c_str());
+#endif
+      else
+#ifdef HAVE_TARGET_32_LITTLE
+        obj = new Sized_pluginobj<32, false>(input_file->filename(),
+                                             input_file, offset);
+#else
+        gold_error(_("%s: not configured to support "
+		     "32-bit little-endian object"),
+		   input_file->filename().c_str());
+#endif
+    }
+  else if (target->get_size() == 64)
+    {
+      if (target->is_big_endian())
+#ifdef HAVE_TARGET_64_BIG
+        obj = new Sized_pluginobj<64, true>(input_file->filename(),
+                                            input_file, offset);
+#else
+        gold_error(_("%s: not configured to support "
+		     "64-bit big-endian object"),
+		   input_file->filename().c_str());
+#endif
+      else
+#ifdef HAVE_TARGET_64_LITTLE
+        obj = new Sized_pluginobj<64, false>(input_file->filename(),
+                                             input_file, offset);
+#else
+        gold_error(_("%s: not configured to support "
+		     "64-bit little-endian object"),
+		   input_file->filename().c_str());
+#endif
+    }
+
+  gold_assert(obj != NULL);
+  obj->set_target(target);
+  return obj;
+}
+
+} // End namespace gold.
diff --git a/gold/plugin.h b/gold/plugin.h
new file mode 100644
index 0000000..3f573ce
--- /dev/null
+++ b/gold/plugin.h
@@ -0,0 +1,457 @@
+// plugin.h -- plugin manager for gold      -*- C++ -*-
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+#ifndef GOLD_PLUGIN_H
+#define GOLD_PLUGIN_H
+
+#include <list>
+#include <string>
+
+#include "object.h"
+#include "plugin-api.h"
+#include "workqueue.h"
+
+namespace gold
+{
+
+class General_options;
+class Input_file;
+class Input_objects;
+class Symbol_table;
+class Layout;
+class Dirsearch;
+class Mapfile;
+class Task_token;
+class Pluginobj;
+
+// This class represents a single plugin library.
+
+class Plugin
+{
+ public:
+  Plugin(const char* args)
+    : handle_(NULL),
+      args_(args),
+      claim_file_handler_(NULL),
+      all_symbols_read_handler_(NULL),
+      cleanup_handler_(NULL)      
+  { }
+
+  ~Plugin()
+  { }
+
+  // Load the library and call its entry point.
+  void
+  load();
+
+  // Call the claim-file handler.
+  bool
+  claim_file(struct ld_plugin_input_file *plugin_input_file);
+
+  // Call the all-symbols-read handler.
+  void
+  all_symbols_read();
+
+  // Call the cleanup handler.
+  void
+  cleanup();
+
+  // Register a claim-file handler.
+  void
+  set_claim_file_handler(ld_plugin_claim_file_handler handler)
+  { this->claim_file_handler_ = handler; }
+
+  // Register an all-symbols-read handler.
+  void
+  set_all_symbols_read_handler(ld_plugin_all_symbols_read_handler handler)
+  { this->all_symbols_read_handler_ = handler; }
+
+  // Register a claim-file handler.
+  void
+  set_cleanup_handler(ld_plugin_cleanup_handler handler)
+  { this->cleanup_handler_ = handler; }
+
+ private:
+  Plugin(const Plugin&);
+  Plugin& operator=(const Plugin&);
+
+  // The shared library handle returned by dlopen.
+  void* handle_;
+  // The argument string given to --plugin.
+  const char* args_;
+  // The plugin's event handlers.
+  ld_plugin_claim_file_handler claim_file_handler_;
+  ld_plugin_all_symbols_read_handler all_symbols_read_handler_;
+  ld_plugin_cleanup_handler cleanup_handler_;
+};
+
+// A manager class for plugins.
+
+class Plugin_manager
+{
+ public:
+  Plugin_manager(const General_options& options)
+    : plugins_(), in_replacement_phase_(false), options_(options),
+      workqueue_(NULL), input_objects_(NULL), symtab_(NULL), layout_(NULL),
+      dirpath_(NULL), mapfile_(NULL), this_blocker_(NULL)
+  { this->current_ = plugins_.end(); }
+
+  ~Plugin_manager();
+
+  // Add a plugin library.
+  void
+  add_plugin(const char* args)
+  { this->plugins_.push_back(new Plugin(args)); }
+
+  // Load all plugin libraries.
+  void
+  load_plugins();
+
+  // Call the plugin claim-file handlers in turn to see if any claim the file.
+  Pluginobj*
+  claim_file(Input_file *input_file, off_t offset, off_t filesize);
+
+  // Call the all-symbols-read handlers.
+  void
+  all_symbols_read(Workqueue* workqueue, Input_objects* input_objects,
+                   Symbol_table* symtab, Layout* layout, Dirsearch* dirpath,
+                   Mapfile* mapfile, Task_token** last_blocker);
+
+  // Call the cleanup handlers.
+  void
+  cleanup();
+
+  // Register a claim-file handler.
+  void
+  set_claim_file_handler(ld_plugin_claim_file_handler handler)
+  {
+    gold_assert(this->current_ != plugins_.end());
+    (*this->current_)->set_claim_file_handler(handler);
+  }
+
+  // Register an all-symbols-read handler.
+  void
+  set_all_symbols_read_handler(ld_plugin_all_symbols_read_handler handler)
+  {
+    gold_assert(this->current_ != plugins_.end());
+    (*this->current_)->set_all_symbols_read_handler(handler);
+  }
+
+  // Register a claim-file handler.
+  void
+  set_cleanup_handler(ld_plugin_cleanup_handler handler)
+  {
+    gold_assert(this->current_ != plugins_.end());
+    (*this->current_)->set_cleanup_handler(handler);
+  }
+
+  // Make a new Pluginobj object.  This is called when the plugin calls
+  // the add_symbols API.
+  Pluginobj*
+  make_plugin_object(unsigned int handle);
+
+  // Return the Pluginobj associated with the given HANDLE.
+  Pluginobj*
+  object(unsigned int handle) const
+  {
+    if (handle >= this->objects_.size())
+      return NULL;
+    return this->objects_[handle];
+  }
+
+  // Add a new input file.
+  ld_plugin_status
+  add_input_file(char *pathname);
+
+  // Return TRUE if we are in the replacement phase.
+  bool
+  in_replacement_phase() const
+  { return this->in_replacement_phase_; }
+
+ private:
+  Plugin_manager(const Plugin_manager&);
+  Plugin_manager& operator=(const Plugin_manager&);
+
+  typedef std::list<Plugin*> Plugin_list;
+  typedef std::vector<Pluginobj*> Object_list;
+
+  // The list of plugin libraries.
+  Plugin_list plugins_;
+  // A pointer to the current plugin.  Used while loading plugins.
+  Plugin_list::iterator current_;
+
+  // The list of plugin objects.  The index of an item in this list
+  // serves as the "handle" that we pass to the plugins.
+  Object_list objects_;
+
+  // The file currently up for claim by the plugins.
+  Input_file* input_file_;
+  struct ld_plugin_input_file plugin_input_file_;
+
+  // TRUE after the all symbols read event; indicates that we are
+  // processing replacement files whose symbols should replace the
+  // placeholder symbols from the Pluginobj objects.
+  bool in_replacement_phase_;
+
+  const General_options& options_;
+  Workqueue* workqueue_;
+  Input_objects* input_objects_;
+  Symbol_table* symtab_;
+  Layout* layout_;
+  Dirsearch* dirpath_;
+  Mapfile* mapfile_;
+  Task_token* this_blocker_;
+};
+
+
+// An object file claimed by a plugin.  This is an abstract base class.
+// The implementation is the template class Sized_pluginobj.
+
+class Pluginobj : public Object
+{
+ public:
+
+  typedef std::vector<Symbol*> Symbols;
+
+  Pluginobj(const std::string& name, Input_file* input_file, off_t offset);
+
+  // Fill in the symbol resolution status for the given plugin symbols.
+  ld_plugin_status
+  get_symbol_resolution_info(int nsyms, ld_plugin_symbol* syms) const;
+
+  // Add symbol information to the global symbol table.
+  void
+  add_symbols(Symbol_table* symtab, Layout* layout)
+  { this->do_add_symbols(symtab, layout); }
+
+  // Store the incoming symbols from the plugin for later processing.
+  void
+  store_incoming_symbols(int nsyms, const struct ld_plugin_symbol* syms)
+  {
+    this->nsyms_ = nsyms;
+    this->syms_ = syms;
+  }
+
+  // Return TRUE if the comdat group with key COMDAT_KEY from this object
+  // should be kept.
+  bool
+  include_comdat_group(std::string comdat_key, Layout* layout);
+
+ protected:
+  // Return TRUE if this is an object claimed by a plugin.
+  virtual Pluginobj*
+  do_pluginobj()
+  { return this; }
+
+  // Add symbol information to the global symbol table--implemented by
+  // child class.
+  virtual void
+  do_add_symbols(Symbol_table*, Layout*) = 0;
+
+  // The number of symbols provided by the plugin.
+  int nsyms_;
+  
+  // The symbols provided by the plugin.
+  const struct ld_plugin_symbol* syms_;
+
+  // The entries in the symbol table for the external symbols.
+  Symbols symbols_;
+
+ private:
+  // Map a comdat key symbol to a boolean indicating whether the comdat
+  // group in this object with that key should be kept.
+  typedef Unordered_map<std::string, bool> Comdat_map;
+  Comdat_map comdat_map_;
+};
+
+// A plugin object, size-specific version.
+
+template<int size, bool big_endian>
+class Sized_pluginobj : public Pluginobj
+{
+ public:
+  Sized_pluginobj(const std::string& name, Input_file* input_file,
+                  off_t offset);
+
+  // Read the symbols.
+  void
+  do_read_symbols(Read_symbols_data*);
+
+  // Lay out the input sections.
+  void
+  do_layout(Symbol_table*, Layout*, Read_symbols_data*);
+
+  // Add the symbols to the symbol table.
+  void
+  do_add_symbols(Symbol_table*, Read_symbols_data*);
+
+  void
+  do_add_symbols(Symbol_table*, Layout*);
+
+  // Get the size of a section.
+  uint64_t
+  do_section_size(unsigned int shndx);
+
+  // Get the name of a section.
+  std::string
+  do_section_name(unsigned int shndx);
+
+  // Return a view of the contents of a section.
+  Object::Location
+  do_section_contents(unsigned int shndx);
+
+  // Return section flags.
+  uint64_t
+  do_section_flags(unsigned int shndx);
+
+  // Return section address.
+  uint64_t
+  do_section_address(unsigned int shndx);
+
+  // Return section type.
+  unsigned int
+  do_section_type(unsigned int shndx);
+
+  // Return the section link field.
+  unsigned int
+  do_section_link(unsigned int shndx);
+
+  // Return the section link field.
+  unsigned int
+  do_section_info(unsigned int shndx);
+
+  // Return the section alignment.
+  uint64_t
+  do_section_addralign(unsigned int shndx);
+
+  // Return the Xindex structure to use.
+  Xindex*
+  do_initialize_xindex();
+
+  // Get symbol counts.
+  void
+  do_get_global_symbol_counts(const Symbol_table*, size_t*, size_t*) const;
+
+  // Add placeholder symbols from a claimed file.
+  ld_plugin_status
+  add_symbols_from_plugin(int nsyms, const ld_plugin_symbol* syms);
+
+ protected:
+
+ private:
+};
+
+// This Task handles adding the symbols to the symbol table.  These
+// tasks must be run in the same order as the arguments appear on the
+// command line.
+
+class Add_plugin_symbols : public Task
+{
+ public:
+  // THIS_BLOCKER is used to prevent this task from running before the
+  // one for the previous input file.  NEXT_BLOCKER is used to prevent
+  // the next task from running.
+  Add_plugin_symbols(Symbol_table* symtab,
+	             Layout* layout,
+	             Pluginobj* obj,
+	             Task_token* this_blocker,
+	             Task_token* next_blocker)
+    : symtab_(symtab), layout_(layout), obj_(obj),
+      this_blocker_(this_blocker), next_blocker_(next_blocker)
+  { }
+
+  ~Add_plugin_symbols();
+
+  // The standard Task methods.
+
+  Task_token*
+  is_runnable();
+
+  void
+  locks(Task_locker*);
+
+  void
+  run(Workqueue*);
+
+  std::string
+  get_name() const
+  { return "Add_plugin_symbols " + this->obj_->name(); }
+
+private:
+  Symbol_table* symtab_;
+  Layout* layout_;
+  Pluginobj* obj_;
+  Task_token* this_blocker_;
+  Task_token* next_blocker_;
+};
+
+// This Task handles handles the "all symbols read" event hook.
+// The plugin may add additional input files at this time, which must
+// be queued for reading.
+
+class Plugin_hook : public Task
+{
+ public:
+  Plugin_hook(const General_options& options, Input_objects* input_objects,
+	      Symbol_table* symtab, Layout* layout, Dirsearch* dirpath,
+	      Mapfile* mapfile, Task_token* this_blocker,
+	      Task_token* next_blocker)
+    : options_(options), input_objects_(input_objects), symtab_(symtab),
+      layout_(layout), dirpath_(dirpath), mapfile_(mapfile),
+      this_blocker_(this_blocker), next_blocker_(next_blocker)
+  { }
+
+  ~Plugin_hook();
+
+  // The standard Task methods.
+
+  Task_token*
+  is_runnable();
+
+  void
+  locks(Task_locker*);
+
+  void
+  run(Workqueue*);
+
+  std::string
+  get_name() const
+  { return "Plugin_hook"; }
+
+ private:
+  // Call the plugin hook.
+  void
+  do_plugin_hook(Workqueue*);
+
+  const General_options& options_;
+  Input_objects* input_objects_;
+  Symbol_table* symtab_;
+  Layout* layout_;
+  Dirsearch* dirpath_;
+  Mapfile* mapfile_;
+  Task_token* this_blocker_;
+  Task_token* next_blocker_;
+};
+
+} // End namespace gold.
+
+#endif // !defined(GOLD_PLUGIN_H)
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 421cfdb..05ce4fc 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -129,7 +129,7 @@
 
   // Return whether SYM is defined by the ABI.
   bool
-  do_is_defined_by_abi(Symbol* sym) const
+  do_is_defined_by_abi(const Symbol* sym) const
   {
     return strcmp(sym->name(), "___tls_get_addr") == 0;
   }
diff --git a/gold/readsyms.cc b/gold/readsyms.cc
index 05c80f8..ac646d9 100644
--- a/gold/readsyms.cc
+++ b/gold/readsyms.cc
@@ -32,6 +32,7 @@
 #include "archive.h"
 #include "script.h"
 #include "readsyms.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -159,6 +160,53 @@
   const unsigned char* ehdr = input_file->file().get_view(0, 0, read_size,
 							  true, false);
 
+  if (read_size >= Archive::sarmag)
+    {
+      bool is_thin_archive
+          = memcmp(ehdr, Archive::armagt, Archive::sarmag) == 0;
+      if (is_thin_archive 
+          || memcmp(ehdr, Archive::armag, Archive::sarmag) == 0)
+	{
+	  // This is an archive.
+	  Archive* arch = new Archive(this->input_argument_->file().name(),
+				      input_file, is_thin_archive,
+				      this->dirpath_, this);
+	  arch->setup(this->input_objects_);
+	  
+	  // Unlock the archive so it can be used in the next task.
+	  arch->unlock(this);
+
+	  workqueue->queue_next(new Add_archive_symbols(this->symtab_,
+							this->layout_,
+							this->input_objects_,
+							this->mapfile_,
+							arch,
+							this->input_group_,
+							this->this_blocker_,
+							this->next_blocker_));
+	  return true;
+	}
+    }
+
+  if (parameters->options().has_plugins())
+    {
+      Pluginobj* obj = parameters->options().plugins()->claim_file(input_file,
+                                                                   0, filesize);
+      if (obj != NULL)
+        {
+          // The input file was claimed by a plugin, and its symbols
+          // have been provided by the plugin.
+	  input_file->file().claim_for_plugin();
+	  input_file->file().unlock(this);
+          workqueue->queue_next(new Add_plugin_symbols(this->symtab_,
+                                                       this->layout_,
+                                                       obj,
+                                                       this->this_blocker_,
+                                                       this->next_blocker_));
+          return true;
+        }
+    }
+
   if (read_size >= 4)
     {
       static unsigned char elfmagic[4] =
@@ -201,34 +249,6 @@
 	}
     }
 
-  if (read_size >= Archive::sarmag)
-    {
-      bool is_thin_archive
-          = memcmp(ehdr, Archive::armagt, Archive::sarmag) == 0;
-      if (is_thin_archive 
-          || memcmp(ehdr, Archive::armag, Archive::sarmag) == 0)
-	{
-	  // This is an archive.
-	  Archive* arch = new Archive(this->input_argument_->file().name(),
-				      input_file, is_thin_archive,
-				      this->dirpath_, this);
-	  arch->setup(this->input_objects_);
-	  
-	  // Unlock the archive so it can be used in the next task.
-	  arch->unlock(this);
-
-	  workqueue->queue_next(new Add_archive_symbols(this->symtab_,
-							this->layout_,
-							this->input_objects_,
-							this->mapfile_,
-							arch,
-							this->input_group_,
-							this->this_blocker_,
-							this->next_blocker_));
-	  return true;
-	}
-    }
-
   // Queue up a task to try to parse this file as a script.  We use a
   // separate task so that the script will be read in order with other
   // objects named on the command line.  Also so that we don't try to
diff --git a/gold/reloc.cc b/gold/reloc.cc
index daa0ea8..481617d 100644
--- a/gold/reloc.cc
+++ b/gold/reloc.cc
@@ -586,8 +586,8 @@
       // In the normal case, this input section is simply mapped to
       // the output section at offset OUTPUT_OFFSET.
 
-      // However, if OUTPUT_OFFSET == -1U, then input data is handled
-      // specially--e.g., a .eh_frame section.  The relocation
+      // However, if OUTPUT_OFFSET == INVALID_ADDRESS, then input data is
+      // handled specially--e.g., a .eh_frame section.  The relocation
       // routines need to check for each reloc where it should be
       // applied.  For this case, we need an input/output view for the
       // entire contents of the section in the output file.  We don't
@@ -619,7 +619,7 @@
 
       off_t view_start;
       section_size_type view_size;
-      if (output_offset != -1U)
+      if (output_offset != invalid_address)
 	{
 	  view_start = output_section_offset + output_offset;
 	  view_size = convert_to_section_size_type(shdr.get_sh_size());
@@ -633,7 +633,7 @@
       if (view_size == 0)
 	continue;
 
-      gold_assert(output_offset == -1U
+      gold_assert(output_offset == invalid_address
 		  || output_offset + view_size <= output_section_size);
 
       unsigned char* view;
@@ -641,7 +641,7 @@
 	{
 	  unsigned char* buffer = os->postprocessing_buffer();
 	  view = buffer + view_start;
-	  if (output_offset != -1U)
+	  if (output_offset != invalid_address)
 	    {
 	      off_t sh_offset = shdr.get_sh_offset();
 	      if (!rm.empty() && rm.back().file_offset > sh_offset)
@@ -652,7 +652,7 @@
 	}
       else
 	{
-	  if (output_offset == -1U)
+	  if (output_offset == invalid_address)
 	    view = of->get_input_output_view(view_start, view_size);
 	  else
 	    {
@@ -667,11 +667,11 @@
 
       pvs->view = view;
       pvs->address = os->address();
-      if (output_offset != -1U)
+      if (output_offset != invalid_address)
 	pvs->address += output_offset;
       pvs->offset = view_start;
       pvs->view_size = view_size;
-      pvs->is_input_output_view = output_offset == -1U;
+      pvs->is_input_output_view = output_offset == invalid_address;
       pvs->is_postprocessing_view = os->requires_postprocessing();
     }
 
@@ -772,7 +772,7 @@
 	  continue;
 	}
 
-      gold_assert(output_offset != -1U
+      gold_assert(output_offset != invalid_address
 		  || this->relocs_must_follow_section_writes());
 
       relinfo.reloc_shndx = i;
@@ -784,7 +784,7 @@
 				   prelocs,
 				   reloc_count,
 				   os,
-				   output_offset == -1U,
+				   output_offset == invalid_address,
 				   (*pviews)[index].view,
 				   (*pviews)[index].address,
 				   (*pviews)[index].view_size);
diff --git a/gold/resolve.cc b/gold/resolve.cc
index 0ad990c..17544f8 100644
--- a/gold/resolve.cc
+++ b/gold/resolve.cc
@@ -26,6 +26,7 @@
 #include "target.h"
 #include "object.h"
 #include "symtab.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -240,6 +241,24 @@
       to->set_in_dyn();
     }
 
+  // Record if we've seen this symbol in a real ELF object (i.e., the
+  // symbol is referenced from outside the world known to the plugin).
+  if (object->pluginobj() == NULL)
+    to->set_in_real_elf();
+
+  // If we're processing replacement files, allow new symbols to override
+  // the placeholders from the plugin objects.
+  if (to->source() == Symbol::FROM_OBJECT)
+    {
+      Pluginobj* obj = to->object()->pluginobj();
+      if (obj != NULL
+          && parameters->options().plugins()->in_replacement_phase())
+        {
+          this->override(to, sym, st_shndx, is_ordinary, object, version);
+          return;
+        }
+    }
+
   unsigned int frombits = symbol_to_bits(sym.get_st_bind(),
                                          object->is_dynamic(),
 					 st_shndx, is_ordinary,
diff --git a/gold/sparc.cc b/gold/sparc.cc
index 7da59dd..cca78b7 100644
--- a/gold/sparc.cc
+++ b/gold/sparc.cc
@@ -130,7 +130,7 @@
 			   section_size_type reloc_view_size);
   // Return whether SYM is defined by the ABI.
   bool
-  do_is_defined_by_abi(Symbol* sym) const
+  do_is_defined_by_abi(const Symbol* sym) const
   {
     // XXX Really need to support this better...
     if (sym->type() == elfcpp::STT_SPARC_REGISTER)
diff --git a/gold/symtab.cc b/gold/symtab.cc
index 393d71a..c2de3bc 100644
--- a/gold/symtab.cc
+++ b/gold/symtab.cc
@@ -37,6 +37,7 @@
 #include "target.h"
 #include "workqueue.h"
 #include "symtab.h"
+#include "plugin.h"
 
 namespace gold
 {
@@ -73,6 +74,7 @@
   this->is_copied_from_dynobj_ = false;
   this->is_forced_local_ = false;
   this->is_ordinary_shndx_ = false;
+  this->in_real_elf_ = false;
 }
 
 // Return the demangled version of the symbol's name, but only
@@ -117,6 +119,7 @@
   this->source_ = FROM_OBJECT;
   this->in_reg_ = !object->is_dynamic();
   this->in_dyn_ = object->is_dynamic();
+  this->in_real_elf_ = object->pluginobj() == NULL;
 }
 
 // Initialize the fields in the base class Symbol for a symbol defined
@@ -133,6 +136,7 @@
   this->u_.in_output_data.offset_is_from_end = offset_is_from_end;
   this->source_ = IN_OUTPUT_DATA;
   this->in_reg_ = true;
+  this->in_real_elf_ = true;
 }
 
 // Initialize the fields in the base class Symbol for a symbol defined
@@ -150,6 +154,7 @@
   this->u_.in_output_segment.offset_base = offset_base;
   this->source_ = IN_OUTPUT_SEGMENT;
   this->in_reg_ = true;
+  this->in_real_elf_ = true;
 }
 
 // Initialize the fields in the base class Symbol for a symbol defined
@@ -163,6 +168,7 @@
   this->init_fields(name, version, type, binding, visibility, nonvis);
   this->source_ = IS_CONSTANT;
   this->in_reg_ = true;
+  this->in_real_elf_ = true;
 }
 
 // Initialize the fields in the base class Symbol for an undefined
@@ -177,6 +183,7 @@
   this->dynsym_index_ = -1U;
   this->source_ = IS_UNDEFINED;
   this->in_reg_ = true;
+  this->in_real_elf_ = true;
 }
 
 // Allocate a common symbol in the base.
@@ -357,6 +364,7 @@
 	if (shndx != elfcpp::SHN_UNDEF && this->is_ordinary_shndx_)
 	  {
 	    gold_assert(!this->u_.from_object.object->is_dynamic());
+	    gold_assert(this->u_.from_object.object->pluginobj() == NULL);
 	    Relobj* relobj = static_cast<Relobj*>(this->u_.from_object.object);
 	    return relobj->output_section(shndx);
 	  }
@@ -973,6 +981,68 @@
     }
 }
 
+// Add a symbol from a plugin-claimed file.
+
+template<int size, bool big_endian>
+Symbol*
+Symbol_table::add_from_pluginobj(
+    Sized_pluginobj<size, big_endian>* obj,
+    const char* name,
+    const char* ver,
+    elfcpp::Sym<size, big_endian>* sym)
+{
+  unsigned int st_shndx = sym->get_st_shndx();
+
+  Stringpool::Key ver_key = 0;
+  bool def = false;
+  bool local = false;
+
+  if (ver != NULL)
+    {
+      ver = this->namepool_.add(ver, true, &ver_key);
+    }
+  // We don't want to assign a version to an undefined symbol,
+  // even if it is listed in the version script.  FIXME: What
+  // about a common symbol?
+  else
+    {
+      if (!this->version_script_.empty()
+          && st_shndx != elfcpp::SHN_UNDEF)
+        {
+          // The symbol name did not have a version, but the
+          // version script may assign a version anyway.
+          std::string version;
+          if (this->version_script_.get_symbol_version(name, &version))
+            {
+              // The version can be empty if the version script is
+              // only used to force some symbols to be local.
+              if (!version.empty())
+                {
+                  ver = this->namepool_.add_with_length(version.c_str(),
+                                                        version.length(),
+                                                        true,
+                                                        &ver_key);
+                  def = true;
+                }
+            }
+          else if (this->version_script_.symbol_is_local(name))
+            local = true;
+        }
+    }
+
+  Stringpool::Key name_key;
+  name = this->namepool_.add(name, true, &name_key);
+
+  Sized_symbol<size>* res;
+  res = this->add_from_object(obj, name, name_key, ver, ver_key,
+		              def, *sym, st_shndx, true, st_shndx);
+
+  if (local)
+	this->force_local(res);
+
+  return res;
+}
+
 // Add all the symbols in a dynamic object to the hash table.
 
 template<int size, bool big_endian>
@@ -2043,6 +2113,11 @@
 	    value = 0;
 	    shndx = elfcpp::SHN_UNDEF;
 	  }
+	else if (symobj->pluginobj() != NULL)
+	  {
+	    value = 0;
+	    shndx = elfcpp::SHN_UNDEF;
+	  }
 	else if (shndx == elfcpp::SHN_UNDEF)
 	  value = 0;
 	else if (!is_ordinary
@@ -2061,11 +2136,20 @@
 	      }
 
             uint64_t secoff64 = relobj->output_section_offset(shndx);
-            Value_type secoff = convert_types<Value_type, uint64_t>(secoff64);
-	    if (sym->type() == elfcpp::STT_TLS)
-	      value = sym->value() + os->tls_offset() + secoff;
-	    else
-	      value = sym->value() + os->address() + secoff;
+            if (secoff64 == -1ULL)
+              {
+                // The section needs special handling (e.g., a merge section).
+	        value = os->output_address(relobj, shndx, sym->value());
+	      }
+            else
+              {
+                Value_type secoff =
+                  convert_types<Value_type, uint64_t>(secoff64);
+	        if (sym->type() == elfcpp::STT_TLS)
+	          value = sym->value() + os->tls_offset() + secoff;
+	        else
+	          value = sym->value() + os->address() + secoff;
+	      }
 	  }
       }
       break;
@@ -2261,6 +2345,8 @@
 		      dynsym_value = target.dynsym_value(sym);
 		    shndx = elfcpp::SHN_UNDEF;
 		  }
+		else if (symobj->pluginobj() != NULL)
+		  shndx = elfcpp::SHN_UNDEF;
 		else if (in_shndx == elfcpp::SHN_UNDEF
 			 || (!is_ordinary
 			     && (in_shndx == elfcpp::SHN_ABS
@@ -2703,6 +2789,46 @@
 
 #ifdef HAVE_TARGET_32_LITTLE
 template
+Symbol*
+Symbol_table::add_from_pluginobj<32, false>(
+    Sized_pluginobj<32, false>* obj,
+    const char* name,
+    const char* ver,
+    elfcpp::Sym<32, false>* sym);
+#endif
+
+#ifdef HAVE_TARGET_32_BIG
+template
+Symbol*
+Symbol_table::add_from_pluginobj<32, true>(
+    Sized_pluginobj<32, true>* obj,
+    const char* name,
+    const char* ver,
+    elfcpp::Sym<32, true>* sym);
+#endif
+
+#ifdef HAVE_TARGET_64_LITTLE
+template
+Symbol*
+Symbol_table::add_from_pluginobj<64, false>(
+    Sized_pluginobj<64, false>* obj,
+    const char* name,
+    const char* ver,
+    elfcpp::Sym<64, false>* sym);
+#endif
+
+#ifdef HAVE_TARGET_64_BIG
+template
+Symbol*
+Symbol_table::add_from_pluginobj<64, true>(
+    Sized_pluginobj<64, true>* obj,
+    const char* name,
+    const char* ver,
+    elfcpp::Sym<64, true>* sym);
+#endif
+
+#ifdef HAVE_TARGET_32_LITTLE
+template
 void
 Symbol_table::add_from_dynobj<32, false>(
     Sized_dynobj<32, false>* dynobj,
diff --git a/gold/symtab.h b/gold/symtab.h
index 043fb50f..cfd0c73 100644
--- a/gold/symtab.h
+++ b/gold/symtab.h
@@ -43,6 +43,8 @@
 class Relobj;
 template<int size, bool big_endian>
 class Sized_relobj;
+template<int size, bool big_endian>
+class Sized_pluginobj;
 class Dynobj;
 template<int size, bool big_endian>
 class Sized_dynobj;
@@ -273,6 +275,18 @@
   set_in_dyn()
   { this->in_dyn_ = true; }
 
+  // Return whether this symbol has been seen in a real ELF object.
+  // (IN_REG will return TRUE if the symbol has been seen in either
+  // a real ELF object or an object claimed by a plugin.)
+  bool
+  in_real_elf() const
+  { return this->in_real_elf_; }
+
+  // Mark this symbol as having been seen in a real ELF object.
+  void
+  set_in_real_elf()
+  { this->in_real_elf_ = true; }
+
   // Return the index of this symbol in the output file symbol table.
   // A value of -1U means that this symbol is not going into the
   // output file.  This starts out as zero, and is set to a non-zero
@@ -871,8 +885,10 @@
   bool is_forced_local_ : 1;
   // True if the field u_.from_object.shndx is an ordinary section
   // index, not one of the special codes from SHN_LORESERVE to
-  // SHN_HIRESERVE.
+  // SHN_HIRESERVE (bit 31).
   bool is_ordinary_shndx_ : 1;
+  // True if we've seen this symbol in a real ELF object.
+  bool in_real_elf_ : 1;
 };
 
 // The parts of a symbol which are size specific.  Using a template
@@ -1139,6 +1155,14 @@
 		  typename Sized_relobj<size, big_endian>::Symbols*,
 		  size_t* defined);
 
+  // Add one external symbol from the plugin object OBJ to the symbol table.
+  // Returns a pointer to the resolved symbol in the symbol table.
+  template<int size, bool big_endian>
+  Symbol*
+  add_from_pluginobj(Sized_pluginobj<size, big_endian>* obj,
+                     const char* name, const char* ver,
+                     elfcpp::Sym<size, big_endian>* sym);
+
   // Add COUNT dynamic symbols from the dynamic object DYNOBJ to the
   // symbol table.  SYMS is the symbols.  SYM_NAMES is their names.
   // SYM_NAME_SIZE is the size of SYM_NAMES.  The other parameters are
diff --git a/gold/target-reloc.h b/gold/target-reloc.h
index 6683ddd..935d76b 100644
--- a/gold/target-reloc.h
+++ b/gold/target-reloc.h
@@ -283,6 +283,7 @@
       if (sym != NULL
 	  && sym->is_undefined()
 	  && sym->binding() != elfcpp::STB_WEAK
+          && !target->is_defined_by_abi(sym)
 	  && (!parameters->options().shared()       // -shared
               || parameters->options().defs()))     // -z defs
 	gold_undefined_symbol(sym, relinfo, i, offset);
@@ -449,6 +450,7 @@
   typedef typename Reloc_types<sh_type, size, big_endian>::Reloc_write
     Reltype_write;
   const int reloc_size = Reloc_types<sh_type, size, big_endian>::reloc_size;
+  const Address invalid_address = static_cast<Address>(0) - 1;
 
   Sized_relobj<size, big_endian>* const object = relinfo->object;
   const unsigned int local_count = object->local_symbol_count();
@@ -523,7 +525,7 @@
 
       Address offset = reloc.get_r_offset();
       Address new_offset;
-      if (offset_in_output_section != -1U)
+      if (offset_in_output_section != invalid_address)
 	new_offset = offset + offset_in_output_section;
       else
 	{
@@ -542,7 +544,7 @@
       if (!parameters->options().relocatable())
 	{
 	  new_offset += view_address;
-	  if (offset_in_output_section != -1U)
+	  if (offset_in_output_section != invalid_address)
 	    new_offset -= offset_in_output_section;
 	}
 
diff --git a/gold/target.h b/gold/target.h
index 30fa008..460ac96 100644
--- a/gold/target.h
+++ b/gold/target.h
@@ -164,7 +164,7 @@
   // Return whether SYM is known to be defined by the ABI.  This is
   // used to avoid inappropriate warnings about undefined symbols.
   bool
-  is_defined_by_abi(Symbol* sym) const
+  is_defined_by_abi(const Symbol* sym) const
   { return this->do_is_defined_by_abi(sym); }
 
  protected:
@@ -222,7 +222,7 @@
 
   // Virtual function which may be implemented by the child class.
   virtual bool
-  do_is_defined_by_abi(Symbol*) const
+  do_is_defined_by_abi(const Symbol*) const
   { return false; }
 
  private:
diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am
index c9dd470..57d96cd 100644
--- a/gold/testsuite/Makefile.am
+++ b/gold/testsuite/Makefile.am
@@ -9,6 +9,7 @@
 # The two_file_test tests -fmerge-constants, so we simply always turn
 # it on.  This may need to be controlled by a configure option
 # eventually.
+AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) -fmerge-constants
 AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) -fmerge-constants
 
 INCLUDES = \
@@ -21,6 +22,11 @@
 TEST_OBJDUMP = $(top_builddir)/../binutils/objdump
 TEST_CXXFILT = $(top_builddir)/../binutils/cxxfilt
 TEST_STRIP = $(top_builddir)/../binutils/strip-new
+TEST_AR = $(top_builddir)/../binutils/ar
+
+if PLUGINS
+LIBDL = -ldl
+endif
 
 if THREADS
 THREADSLIB = -lpthread
@@ -57,7 +63,7 @@
 DEPENDENCIES = \
 	libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL_DEP)
 LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL) \
-	$(THREADSLIB)
+	$(THREADSLIB) $(LIBDL)
 
 
 # The unittests themselves
@@ -468,7 +474,7 @@
 tls_test_c_pic.o: tls_test_c.c
 	$(COMPILE) -c -fpic $(TLS_TEST_C_CFLAGS) -o $@ $<
 tls_test_shared.so: tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o gcctestdir/ld
-	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o
+	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o -Wl,-z,defs
 tls_test_shared2.so: tls_test_file2_pic.o gcctestdir/ld
 	$(CXXLINK) -Bgcctestdir/ -shared tls_test_file2_pic.o
 
@@ -897,5 +903,75 @@
 script_test_4.stdout: script_test_4
 	$(TEST_READELF) -SlW script_test_4 > script_test_4.stdout
 
+check_PROGRAMS += thin_archive_test_1
+thin_archive_test_1_SOURCES = thin_archive_main.cc
+thin_archive_test_1_DEPENDENCIES = gcctestdir/ld libthin1.a alt/libthin2.a
+thin_archive_test_1_LDFLAGS = -Bgcctestdir/ -Lalt
+thin_archive_test_1_LDADD = libthin1.a -lthin2
+
+check_PROGRAMS += thin_archive_test_2
+thin_archive_test_2_SOURCES = thin_archive_main.cc
+thin_archive_test_2_DEPENDENCIES = gcctestdir/ld libthinall.a
+thin_archive_test_2_LDFLAGS = -Bgcctestdir/ -L.
+thin_archive_test_2_LDADD = -lthinall
+
+libthin1.a: thin_archive_test_1.o alt/thin_archive_test_2.o
+	rm -f $@
+	$(TEST_AR) crT $@ $^
+alt/libthin2.a: thin_archive_test_3.o alt/thin_archive_test_4.o
+	rm -f $@
+	$(TEST_AR) crT $@ $^
+libthin3.a: thin_archive_test_1.o alt/thin_archive_test_4.o
+	rm -f $@
+	$(TEST_AR) crT $@ $^
+alt/libthin4.a: alt/thin_archive_test_2.o thin_archive_test_3.o
+	rm -f $@
+	$(TEST_AR) crT $@ $^
+libthinall.a: libthin3.a alt/libthin4.a
+	rm -f $@
+	$(TEST_AR) crT $@ $^
+alt/thin_archive_test_2.o: thin_archive_test_2.cc
+	test -d alt || mkdir -p alt
+	$(CXXCOMPILE) -c -o $@ $<
+alt/thin_archive_test_4.o: thin_archive_test_4.cc
+	test -d alt || mkdir -p alt
+	$(CXXCOMPILE) -c -o $@ $<
+
+if PLUGINS
+
+check_PROGRAMS += plugin_test_1
+check_SCRIPTS += plugin_test_1.sh
+check_DATA += plugin_test_1.err
+MOSTLYCLEANFILES += plugin_test_1.err
+plugin_test_1: two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_test_2.syms gcctestdir/ld plugin_test.so
+	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so;_Z4f13iv" two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_test_2.syms 2>plugin_test_1.err
+plugin_test_1.err: plugin_test_1
+	@touch plugin_test_1.err
+
+check_PROGRAMS += plugin_test_2
+check_SCRIPTS += plugin_test_2.sh
+check_DATA += plugin_test_2.err
+MOSTLYCLEANFILES += plugin_test_2.err
+plugin_test_2: two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_shared_2.so gcctestdir/ld plugin_test.so
+	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,-R,.,--plugin,"./plugin_test.so" two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_shared_2.so 2>plugin_test_2.err
+plugin_test_2.err: plugin_test_2
+	@touch plugin_test_2.err
+
+plugin_test.so: plugin_test.o
+	$(LINK) -Bgcctestdir/ -shared plugin_test.o
+plugin_test.o: plugin_test.c
+	$(COMPILE) -O0 -c -fpic -o $@ $<
+
+two_file_test_main.syms: two_file_test_main.o
+	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+two_file_test_1.syms: two_file_test_1.o
+	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+two_file_test_1b.syms: two_file_test_1b.o
+	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+two_file_test_2.syms: two_file_test_2.o
+	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+
+endif PLUGINS
+
 endif GCC
 endif NATIVE_LINKER
diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in
index 9f72b88..54b2364 100644
--- a/gold/testsuite/Makefile.in
+++ b/gold/testsuite/Makefile.in
@@ -47,7 +47,8 @@
 	$(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
 	$(am__EXEEXT_7) $(am__EXEEXT_8) $(am__EXEEXT_9) \
 	$(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12) \
-	$(am__EXEEXT_13) $(am__EXEEXT_14) $(am__EXEEXT_15)
+	$(am__EXEEXT_13) $(am__EXEEXT_14) $(am__EXEEXT_15) \
+	$(am__EXEEXT_16)
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_1 = basic_test \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	basic_static_test basic_pic_test \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	basic_static_pic_test \
@@ -66,33 +67,39 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	two_file_relocatable_test
 @GCC_FALSE@constructor_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@constructor_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@constructor_static_test_DEPENDENCIES = libgoldtest.a \
 @GCC_FALSE@	../libgold.a ../../libiberty/libiberty.a \
-@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+@GCC_FALSE@	$(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@constructor_static_test_DEPENDENCIES =  \
 @NATIVE_LINKER_FALSE@	libgoldtest.a ../libgold.a \
 @NATIVE_LINKER_FALSE@	../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@two_file_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@two_file_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@two_file_static_test_DEPENDENCIES = libgoldtest.a \
 @GCC_FALSE@	../libgold.a ../../libiberty/libiberty.a \
-@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+@GCC_FALSE@	$(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@two_file_static_test_DEPENDENCIES =  \
 @NATIVE_LINKER_FALSE@	libgoldtest.a ../libgold.a \
 @NATIVE_LINKER_FALSE@	../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 
 # The nonpic tests will fail on platforms which can not put non-PIC
@@ -116,32 +123,37 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	weak_test weak_undef_test
 @GCC_FALSE@common_test_1_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@common_test_1_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@exception_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@exception_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@exception_static_test_DEPENDENCIES = libgoldtest.a \
 @GCC_FALSE@	../libgold.a ../../libiberty/libiberty.a \
-@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+@GCC_FALSE@	$(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@exception_static_test_DEPENDENCIES =  \
 @NATIVE_LINKER_FALSE@	libgoldtest.a ../libgold.a \
 @NATIVE_LINKER_FALSE@	../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@weak_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@weak_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @FN_PTRS_IN_SO_WITHOUT_PIC_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_4 = weak_undef_nonpic_test
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_5 = weak_alias_test weak_plt \
@@ -187,10 +199,12 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	many_sections_r_test
 @GCC_FALSE@many_sections_test_DEPENDENCIES = libgoldtest.a \
 @GCC_FALSE@	../libgold.a ../../libiberty/libiberty.a \
-@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+@GCC_FALSE@	$(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@many_sections_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_14 = many_sections_define.h \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	many_sections_check.h
@@ -199,13 +213,15 @@
 @CONSTRUCTOR_PRIORITY_FALSE@	../libgold.a \
 @CONSTRUCTOR_PRIORITY_FALSE@	../../libiberty/libiberty.a \
 @CONSTRUCTOR_PRIORITY_FALSE@	$(am__DEPENDENCIES_1) \
+@CONSTRUCTOR_PRIORITY_FALSE@	$(am__DEPENDENCIES_1) \
 @CONSTRUCTOR_PRIORITY_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@initpri1_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@initpri1_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_16 = debug_msg.err \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	debug_msg_so.err \
@@ -232,35 +248,55 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	relro_test relro_script_test \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_1 script_test_2 \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	justsyms binary_test \
-@GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_3
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_3 \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_test_1 \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_test_2
 @GCC_FALSE@script_test_1_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@script_test_1_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@script_test_2_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@script_test_2_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@justsyms_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@justsyms_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
 @GCC_FALSE@binary_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 @GCC_FALSE@	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-@GCC_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 @NATIVE_LINKER_FALSE@binary_test_DEPENDENCIES = libgoldtest.a \
 @NATIVE_LINKER_FALSE@	../libgold.a ../../libiberty/libiberty.a \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
+@NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1) \
 @NATIVE_LINKER_FALSE@	$(am__DEPENDENCIES_1)
+@GCC_FALSE@thin_archive_test_2_DEPENDENCIES =
+@NATIVE_LINKER_FALSE@thin_archive_test_2_DEPENDENCIES =
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_20 =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_1 \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_2
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_21 =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_1.sh \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_2.sh
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_22 =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_1.err \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_2.err
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_23 =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_1.err \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_2.err
 subdir = testsuite
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -357,32 +393,36 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_2$(EXEEXT) \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	justsyms$(EXEEXT) \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	binary_test$(EXEEXT) \
-@GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_3$(EXEEXT)
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	script_test_3$(EXEEXT) \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_test_1$(EXEEXT) \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_test_2$(EXEEXT)
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__EXEEXT_16 = plugin_test_1$(EXEEXT) \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	plugin_test_2$(EXEEXT)
 basic_pic_test_SOURCES = basic_pic_test.c
 basic_pic_test_OBJECTS = basic_pic_test.$(OBJEXT)
 basic_pic_test_LDADD = $(LDADD)
 am__DEPENDENCIES_1 =
 basic_pic_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 basic_static_pic_test_SOURCES = basic_static_pic_test.c
 basic_static_pic_test_OBJECTS = basic_static_pic_test.$(OBJEXT)
 basic_static_pic_test_LDADD = $(LDADD)
 basic_static_pic_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 basic_static_test_SOURCES = basic_static_test.c
 basic_static_test_OBJECTS = basic_static_test.$(OBJEXT)
 basic_static_test_LDADD = $(LDADD)
 basic_static_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 basic_test_SOURCES = basic_test.c
 basic_test_OBJECTS = basic_test.$(OBJEXT)
 basic_test_LDADD = $(LDADD)
 basic_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__binary_test_SOURCES_DIST = binary_test.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_binary_test_OBJECTS =  \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	binary_test.$(OBJEXT)
@@ -393,7 +433,7 @@
 binary_unittest_LDADD = $(LDADD)
 binary_unittest_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__common_test_1_SOURCES_DIST = common_test_1.c
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_common_test_1_OBJECTS =  \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	common_test_1.$(OBJEXT)
@@ -472,13 +512,13 @@
 flagstest_compress_debug_sections_LDADD = $(LDADD)
 flagstest_compress_debug_sections_DEPENDENCIES = libgoldtest.a \
 	../libgold.a ../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 flagstest_o_specialfile_SOURCES = flagstest_o_specialfile.c
 flagstest_o_specialfile_OBJECTS = flagstest_o_specialfile.$(OBJEXT)
 flagstest_o_specialfile_LDADD = $(LDADD)
 flagstest_o_specialfile_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 flagstest_o_specialfile_and_compress_debug_sections_SOURCES =  \
 	flagstest_o_specialfile_and_compress_debug_sections.c
 flagstest_o_specialfile_and_compress_debug_sections_OBJECTS =  \
@@ -486,7 +526,8 @@
 flagstest_o_specialfile_and_compress_debug_sections_LDADD = $(LDADD)
 flagstest_o_specialfile_and_compress_debug_sections_DEPENDENCIES =  \
 	libgoldtest.a ../libgold.a ../../libiberty/libiberty.a \
-	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+	$(am__DEPENDENCIES_1)
 am__initpri1_SOURCES_DIST = initpri1.c
 @CONSTRUCTOR_PRIORITY_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@am_initpri1_OBJECTS = initpri1.$(OBJEXT)
 initpri1_OBJECTS = $(am_initpri1_OBJECTS)
@@ -501,7 +542,7 @@
 many_sections_r_test_LDADD = $(LDADD)
 many_sections_r_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__many_sections_test_SOURCES_DIST = many_sections_test.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_many_sections_test_OBJECTS =  \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	many_sections_test.$(OBJEXT)
@@ -512,7 +553,19 @@
 object_unittest_LDADD = $(LDADD)
 object_unittest_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+plugin_test_1_SOURCES = plugin_test_1.c
+plugin_test_1_OBJECTS = plugin_test_1.$(OBJEXT)
+plugin_test_1_LDADD = $(LDADD)
+plugin_test_1_DEPENDENCIES = libgoldtest.a ../libgold.a \
+	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+plugin_test_2_SOURCES = plugin_test_2.c
+plugin_test_2_OBJECTS = plugin_test_2.$(OBJEXT)
+plugin_test_2_LDADD = $(LDADD)
+plugin_test_2_DEPENDENCIES = libgoldtest.a ../libgold.a \
+	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__protected_1_SOURCES_DIST = protected_main_1.cc protected_main_2.cc \
 	protected_main_3.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_protected_1_OBJECTS =  \
@@ -551,7 +604,15 @@
 script_test_3_LDADD = $(LDADD)
 script_test_3_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+am__thin_archive_test_1_SOURCES_DIST = thin_archive_main.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@am_thin_archive_test_1_OBJECTS =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_main.$(OBJEXT)
+thin_archive_test_1_OBJECTS = $(am_thin_archive_test_1_OBJECTS)
+am__thin_archive_test_2_SOURCES_DIST = thin_archive_main.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@am_thin_archive_test_2_OBJECTS =  \
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	thin_archive_main.$(OBJEXT)
+thin_archive_test_2_OBJECTS = $(am_thin_archive_test_2_OBJECTS)
 am__tls_pic_test_SOURCES_DIST = tls_test_main.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@am_tls_pic_test_OBJECTS = tls_test_main.$(OBJEXT)
 tls_pic_test_OBJECTS = $(am_tls_pic_test_OBJECTS)
@@ -708,7 +769,7 @@
 two_file_strip_test_LDADD = $(LDADD)
 two_file_strip_test_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__two_file_test_SOURCES_DIST = two_file_test_1.cc \
 	two_file_test_1b.cc two_file_test_2.cc two_file_test_main.cc \
 	two_file_test.h
@@ -748,7 +809,7 @@
 weak_plt_LDADD = $(LDADD)
 weak_plt_DEPENDENCIES = libgoldtest.a ../libgold.a \
 	../../libiberty/libiberty.a $(am__DEPENDENCIES_1) \
-	$(am__DEPENDENCIES_1)
+	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__weak_test_SOURCES_DIST = weak_test.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@am_weak_test_OBJECTS =  \
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	weak_test.$(OBJEXT)
@@ -788,11 +849,12 @@
 	flagstest_o_specialfile_and_compress_debug_sections.c \
 	$(initpri1_SOURCES) $(justsyms_SOURCES) many_sections_r_test.c \
 	$(many_sections_test_SOURCES) $(object_unittest_SOURCES) \
-	$(protected_1_SOURCES) $(protected_2_SOURCES) \
-	$(relro_script_test_SOURCES) $(relro_test_SOURCES) \
-	$(script_test_1_SOURCES) $(script_test_2_SOURCES) \
-	script_test_3.c $(tls_pic_test_SOURCES) \
-	$(tls_shared_gd_to_ie_test_SOURCES) \
+	plugin_test_1.c plugin_test_2.c $(protected_1_SOURCES) \
+	$(protected_2_SOURCES) $(relro_script_test_SOURCES) \
+	$(relro_test_SOURCES) $(script_test_1_SOURCES) \
+	$(script_test_2_SOURCES) script_test_3.c \
+	$(thin_archive_test_1_SOURCES) $(thin_archive_test_2_SOURCES) \
+	$(tls_pic_test_SOURCES) $(tls_shared_gd_to_ie_test_SOURCES) \
 	$(tls_shared_gnu2_gd_to_ie_test_SOURCES) \
 	$(tls_shared_gnu2_test_SOURCES) $(tls_shared_ie_test_SOURCES) \
 	$(tls_shared_nonpic_test_SOURCES) $(tls_shared_test_SOURCES) \
@@ -838,12 +900,15 @@
 	flagstest_o_specialfile_and_compress_debug_sections.c \
 	$(am__initpri1_SOURCES_DIST) $(am__justsyms_SOURCES_DIST) \
 	many_sections_r_test.c $(am__many_sections_test_SOURCES_DIST) \
-	$(object_unittest_SOURCES) $(am__protected_1_SOURCES_DIST) \
+	$(object_unittest_SOURCES) plugin_test_1.c plugin_test_2.c \
+	$(am__protected_1_SOURCES_DIST) \
 	$(am__protected_2_SOURCES_DIST) \
 	$(am__relro_script_test_SOURCES_DIST) \
 	$(am__relro_test_SOURCES_DIST) \
 	$(am__script_test_1_SOURCES_DIST) \
 	$(am__script_test_2_SOURCES_DIST) script_test_3.c \
+	$(am__thin_archive_test_1_SOURCES_DIST) \
+	$(am__thin_archive_test_2_SOURCES_DIST) \
 	$(am__tls_pic_test_SOURCES_DIST) \
 	$(am__tls_shared_gd_to_ie_test_SOURCES_DIST) \
 	$(am__tls_shared_gnu2_gd_to_ie_test_SOURCES_DIST) \
@@ -954,6 +1019,8 @@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PLUGINS_FALSE = @PLUGINS_FALSE@
+PLUGINS_TRUE = @PLUGINS_TRUE@
 POSUB = @POSUB@
 RANDOM_SEED_CFLAGS = @RANDOM_SEED_CFLAGS@
 RANLIB = @RANLIB@
@@ -1027,6 +1094,7 @@
 # The two_file_test tests -fmerge-constants, so we simply always turn
 # it on.  This may need to be controlled by a configure option
 # eventually.
+AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) -fmerge-constants
 AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) -fmerge-constants
 INCLUDES = \
 	-I$(srcdir) -I$(srcdir)/.. -I$(srcdir)/../../include \
@@ -1038,6 +1106,8 @@
 TEST_OBJDUMP = $(top_builddir)/../binutils/objdump
 TEST_CXXFILT = $(top_builddir)/../binutils/cxxfilt
 TEST_STRIP = $(top_builddir)/../binutils/strip-new
+TEST_AR = $(top_builddir)/../binutils/ar
+@PLUGINS_TRUE@LIBDL = -ldl
 @THREADS_TRUE@THREADSLIB = -lpthread
 @OMP_SUPPORT_TRUE@TLS_TEST_C_CFLAGS = -fopenmp
 
@@ -1045,13 +1115,13 @@
 # .o's), but not all of them (such as .so's and .err files).  We
 # improve on that here.  automake-1.9 info docs say "mostlyclean" is
 # the right choice for files 'make' builds that people rebuild.
-MOSTLYCLEANFILES = *.so $(am__append_16)
+MOSTLYCLEANFILES = *.so $(am__append_16) $(am__append_23)
 
 # We will add to these later, for each individual test.  Note
 # that we add each test under check_SCRIPTS or check_PROGRAMS;
 # the TESTS variable is automatically populated from these.
-check_SCRIPTS = $(am__append_6)
-check_DATA = $(am__append_7)
+check_SCRIPTS = $(am__append_6) $(am__append_21)
+check_DATA = $(am__append_7) $(am__append_22)
 BUILT_SOURCES = $(am__append_14)
 TESTS = $(check_SCRIPTS) $(check_PROGRAMS)
 
@@ -1065,7 +1135,7 @@
 	libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL_DEP)
 
 LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL) \
-	$(THREADSLIB)
+	$(THREADSLIB) $(LIBDL)
 
 object_unittest_SOURCES = object_unittest.cc
 binary_unittest_SOURCES = binary_unittest.cc
@@ -1366,6 +1436,14 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@binary_test_SOURCES = binary_test.cc
 @GCC_TRUE@@NATIVE_LINKER_TRUE@binary_test_DEPENDENCIES = gcctestdir/ld binary.txt
 @GCC_TRUE@@NATIVE_LINKER_TRUE@binary_test_LDFLAGS = -Bgcctestdir/ -Wl,--format,binary,binary.txt,--format,elf
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_1_SOURCES = thin_archive_main.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_1_DEPENDENCIES = gcctestdir/ld libthin1.a alt/libthin2.a
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_1_LDFLAGS = -Bgcctestdir/ -Lalt
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_1_LDADD = libthin1.a -lthin2
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_2_SOURCES = thin_archive_main.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_2_DEPENDENCIES = gcctestdir/ld libthinall.a
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_2_LDFLAGS = -Bgcctestdir/ -L.
+@GCC_TRUE@@NATIVE_LINKER_TRUE@thin_archive_test_2_LDADD = -lthinall
 all: $(BUILT_SOURCES)
 	$(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -1515,6 +1593,24 @@
 object_unittest$(EXEEXT): $(object_unittest_OBJECTS) $(object_unittest_DEPENDENCIES) 
 	@rm -f object_unittest$(EXEEXT)
 	$(CXXLINK) $(object_unittest_LDFLAGS) $(object_unittest_OBJECTS) $(object_unittest_LDADD) $(LIBS)
+@GCC_FALSE@plugin_test_1$(EXEEXT): $(plugin_test_1_OBJECTS) $(plugin_test_1_DEPENDENCIES) 
+@GCC_FALSE@	@rm -f plugin_test_1$(EXEEXT)
+@GCC_FALSE@	$(LINK) $(plugin_test_1_LDFLAGS) $(plugin_test_1_OBJECTS) $(plugin_test_1_LDADD) $(LIBS)
+@NATIVE_LINKER_FALSE@plugin_test_1$(EXEEXT): $(plugin_test_1_OBJECTS) $(plugin_test_1_DEPENDENCIES) 
+@NATIVE_LINKER_FALSE@	@rm -f plugin_test_1$(EXEEXT)
+@NATIVE_LINKER_FALSE@	$(LINK) $(plugin_test_1_LDFLAGS) $(plugin_test_1_OBJECTS) $(plugin_test_1_LDADD) $(LIBS)
+@PLUGINS_FALSE@plugin_test_1$(EXEEXT): $(plugin_test_1_OBJECTS) $(plugin_test_1_DEPENDENCIES) 
+@PLUGINS_FALSE@	@rm -f plugin_test_1$(EXEEXT)
+@PLUGINS_FALSE@	$(LINK) $(plugin_test_1_LDFLAGS) $(plugin_test_1_OBJECTS) $(plugin_test_1_LDADD) $(LIBS)
+@GCC_FALSE@plugin_test_2$(EXEEXT): $(plugin_test_2_OBJECTS) $(plugin_test_2_DEPENDENCIES) 
+@GCC_FALSE@	@rm -f plugin_test_2$(EXEEXT)
+@GCC_FALSE@	$(LINK) $(plugin_test_2_LDFLAGS) $(plugin_test_2_OBJECTS) $(plugin_test_2_LDADD) $(LIBS)
+@NATIVE_LINKER_FALSE@plugin_test_2$(EXEEXT): $(plugin_test_2_OBJECTS) $(plugin_test_2_DEPENDENCIES) 
+@NATIVE_LINKER_FALSE@	@rm -f plugin_test_2$(EXEEXT)
+@NATIVE_LINKER_FALSE@	$(LINK) $(plugin_test_2_LDFLAGS) $(plugin_test_2_OBJECTS) $(plugin_test_2_LDADD) $(LIBS)
+@PLUGINS_FALSE@plugin_test_2$(EXEEXT): $(plugin_test_2_OBJECTS) $(plugin_test_2_DEPENDENCIES) 
+@PLUGINS_FALSE@	@rm -f plugin_test_2$(EXEEXT)
+@PLUGINS_FALSE@	$(LINK) $(plugin_test_2_LDFLAGS) $(plugin_test_2_OBJECTS) $(plugin_test_2_LDADD) $(LIBS)
 protected_1$(EXEEXT): $(protected_1_OBJECTS) $(protected_1_DEPENDENCIES) 
 	@rm -f protected_1$(EXEEXT)
 	$(CXXLINK) $(protected_1_LDFLAGS) $(protected_1_OBJECTS) $(protected_1_LDADD) $(LIBS)
@@ -1539,6 +1635,12 @@
 @NATIVE_LINKER_FALSE@script_test_3$(EXEEXT): $(script_test_3_OBJECTS) $(script_test_3_DEPENDENCIES) 
 @NATIVE_LINKER_FALSE@	@rm -f script_test_3$(EXEEXT)
 @NATIVE_LINKER_FALSE@	$(LINK) $(script_test_3_LDFLAGS) $(script_test_3_OBJECTS) $(script_test_3_LDADD) $(LIBS)
+thin_archive_test_1$(EXEEXT): $(thin_archive_test_1_OBJECTS) $(thin_archive_test_1_DEPENDENCIES) 
+	@rm -f thin_archive_test_1$(EXEEXT)
+	$(CXXLINK) $(thin_archive_test_1_LDFLAGS) $(thin_archive_test_1_OBJECTS) $(thin_archive_test_1_LDADD) $(LIBS)
+thin_archive_test_2$(EXEEXT): $(thin_archive_test_2_OBJECTS) $(thin_archive_test_2_DEPENDENCIES) 
+	@rm -f thin_archive_test_2$(EXEEXT)
+	$(CXXLINK) $(thin_archive_test_2_LDFLAGS) $(thin_archive_test_2_OBJECTS) $(thin_archive_test_2_LDADD) $(LIBS)
 tls_pic_test$(EXEEXT): $(tls_pic_test_OBJECTS) $(tls_pic_test_DEPENDENCIES) 
 	@rm -f tls_pic_test$(EXEEXT)
 	$(CXXLINK) $(tls_pic_test_LDFLAGS) $(tls_pic_test_OBJECTS) $(tls_pic_test_LDADD) $(LIBS)
@@ -1692,6 +1794,8 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/many_sections_r_test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/many_sections_test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object_unittest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin_test_1.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin_test_2.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/protected_3.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/protected_main_1.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/protected_main_2.Po@am__quote@
@@ -1705,6 +1809,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testfile.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testmain.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/thin_archive_main.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls_test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls_test_file2.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls_test_main.Po@am__quote@
@@ -2125,7 +2230,7 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@tls_test_c_pic.o: tls_test_c.c
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@	$(COMPILE) -c -fpic $(TLS_TEST_C_CFLAGS) -o $@ $<
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@tls_test_shared.so: tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o gcctestdir/ld
-@GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o -Wl,-z,defs
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@tls_test_shared2.so: tls_test_file2_pic.o gcctestdir/ld
 @GCC_TRUE@@NATIVE_LINKER_TRUE@@TLS_TRUE@	$(CXXLINK) -Bgcctestdir/ -shared tls_test_file2_pic.o
 
@@ -2313,6 +2418,50 @@
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	$(CXXLINK) -Bgcctestdir/ basic_test.o -T $(srcdir)/script_test_4.t
 @GCC_TRUE@@NATIVE_LINKER_TRUE@script_test_4.stdout: script_test_4
 @GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_READELF) -SlW script_test_4 > script_test_4.stdout
+
+@GCC_TRUE@@NATIVE_LINKER_TRUE@libthin1.a: thin_archive_test_1.o alt/thin_archive_test_2.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	rm -f $@
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_AR) crT $@ $^
+@GCC_TRUE@@NATIVE_LINKER_TRUE@alt/libthin2.a: thin_archive_test_3.o alt/thin_archive_test_4.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	rm -f $@
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_AR) crT $@ $^
+@GCC_TRUE@@NATIVE_LINKER_TRUE@libthin3.a: thin_archive_test_1.o alt/thin_archive_test_4.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	rm -f $@
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_AR) crT $@ $^
+@GCC_TRUE@@NATIVE_LINKER_TRUE@alt/libthin4.a: alt/thin_archive_test_2.o thin_archive_test_3.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	rm -f $@
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_AR) crT $@ $^
+@GCC_TRUE@@NATIVE_LINKER_TRUE@libthinall.a: libthin3.a alt/libthin4.a
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	rm -f $@
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(TEST_AR) crT $@ $^
+@GCC_TRUE@@NATIVE_LINKER_TRUE@alt/thin_archive_test_2.o: thin_archive_test_2.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	test -d alt || mkdir -p alt
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(CXXCOMPILE) -c -o $@ $<
+@GCC_TRUE@@NATIVE_LINKER_TRUE@alt/thin_archive_test_4.o: thin_archive_test_4.cc
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	test -d alt || mkdir -p alt
+@GCC_TRUE@@NATIVE_LINKER_TRUE@	$(CXXCOMPILE) -c -o $@ $<
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test_1: two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_test_2.syms gcctestdir/ld plugin_test.so
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so;_Z4f13iv" two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_test_2.syms 2>plugin_test_1.err
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test_1.err: plugin_test_1
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	@touch plugin_test_1.err
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test_2: two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_shared_2.so gcctestdir/ld plugin_test.so
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,-R,.,--plugin,"./plugin_test.so" two_file_test_main.o two_file_test_1.syms two_file_test_1b.syms two_file_shared_2.so 2>plugin_test_2.err
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test_2.err: plugin_test_2
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	@touch plugin_test_2.err
+
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test.so: plugin_test.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(LINK) -Bgcctestdir/ -shared plugin_test.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_test.o: plugin_test.c
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(COMPILE) -O0 -c -fpic -o $@ $<
+
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@two_file_test_main.syms: two_file_test_main.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@two_file_test_1.syms: two_file_test_1.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@two_file_test_1b.syms: two_file_test_1b.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(TEST_READELF) -sW $< >$@ 2>/dev/null
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@two_file_test_2.syms: two_file_test_2.o
+@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@	$(TEST_READELF) -sW $< >$@ 2>/dev/null
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
diff --git a/gold/testsuite/plugin_test.c b/gold/testsuite/plugin_test.c
new file mode 100644
index 0000000..c60c7a1
--- /dev/null
+++ b/gold/testsuite/plugin_test.c
@@ -0,0 +1,427 @@
+/* test_plugin.c -- simple linker plugin test
+
+   Copyright 2008 Free Software Foundation, Inc.
+   Written by Cary Coutant <ccoutant@google.com>.
+
+   This file is part of gold.
+
+   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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "plugin-api.h"
+
+struct claimed_file
+{
+  const char* name;
+  void* handle;
+  int nsyms;
+  struct ld_plugin_symbol* syms;
+  struct claimed_file* next;
+};
+
+static struct claimed_file* first_claimed_file = NULL;
+static struct claimed_file* last_claimed_file = NULL;
+
+static ld_plugin_register_claim_file register_claim_file_hook = NULL;
+static ld_plugin_register_all_symbols_read register_all_symbols_read_hook = NULL;
+static ld_plugin_register_cleanup register_cleanup_hook = NULL;
+static ld_plugin_add_symbols add_symbols = NULL;
+static ld_plugin_get_symbols get_symbols = NULL;
+static ld_plugin_add_input_file add_input_file = NULL;
+static ld_plugin_message message = NULL;
+
+#define MAXOPTS 10
+
+static const char *opts[MAXOPTS];
+static int nopts = 0;
+
+enum ld_plugin_status onload(struct ld_plugin_tv *tv);
+enum ld_plugin_status claim_file_hook(const struct ld_plugin_input_file *file,
+                                      int *claimed);
+enum ld_plugin_status all_symbols_read_hook(void);
+enum ld_plugin_status cleanup_hook(void);
+
+enum ld_plugin_status
+onload(struct ld_plugin_tv *tv)
+{
+  struct ld_plugin_tv *entry;
+  int api_version = 0;
+  int gold_version = 0;
+  int i;
+
+  for (entry = tv; entry->tv_tag != LDPT_NULL; ++entry)
+    {
+      switch (entry->tv_tag)
+        {
+        case LDPT_API_VERSION:
+          api_version = entry->tv_u.tv_val;
+          break;
+        case LDPT_GOLD_VERSION:
+          gold_version = entry->tv_u.tv_val;
+          break;
+        case LDPT_LINKER_OUTPUT:
+          break;
+        case LDPT_OPTION:
+          if (nopts < MAXOPTS)
+            opts[nopts++] = entry->tv_u.tv_string;
+          break;
+        case LDPT_REGISTER_CLAIM_FILE_HOOK:
+          register_claim_file_hook = entry->tv_u.tv_register_claim_file;
+          break;
+        case LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK:
+          register_all_symbols_read_hook =
+            entry->tv_u.tv_register_all_symbols_read;
+          break;
+        case LDPT_REGISTER_CLEANUP_HOOK:
+          register_cleanup_hook = entry->tv_u.tv_register_cleanup;
+          break;
+        case LDPT_ADD_SYMBOLS:
+          add_symbols = entry->tv_u.tv_add_symbols;
+          break;
+        case LDPT_GET_SYMBOLS:
+          get_symbols = entry->tv_u.tv_get_symbols;
+          break;
+        case LDPT_ADD_INPUT_FILE:
+          add_input_file = entry->tv_u.tv_add_input_file;
+          break;
+        case LDPT_MESSAGE:
+          message = entry->tv_u.tv_message;
+          break;
+        default:
+          break;
+        }
+    }
+
+  if (message == NULL)
+    {
+      fprintf(stderr, "tv_message interface missing\n");
+      return LDPS_ERR;
+    }
+
+  if (register_claim_file_hook == NULL)
+    {
+      fprintf(stderr, "tv_register_claim_file_hook interface missing\n");
+      return LDPS_ERR;
+    }
+
+  if (register_all_symbols_read_hook == NULL)
+    {
+      fprintf(stderr, "tv_register_all_symbols_read_hook interface missing\n");
+      return LDPS_ERR;
+    }
+
+  if (register_cleanup_hook == NULL)
+    {
+      fprintf(stderr, "tv_register_cleanup_hook interface missing\n");
+      return LDPS_ERR;
+    }
+
+  (*message)(LDPL_INFO, "API version:   %d", api_version);
+  (*message)(LDPL_INFO, "gold version:  %d", gold_version);
+
+  for (i = 0; i < nopts; ++i)
+    (*message)(LDPL_INFO, "option: %s", opts[i]);
+
+  if ((*register_claim_file_hook)(claim_file_hook) != LDPS_OK)
+    {
+      (*message)(LDPL_ERROR, "error registering claim file hook");
+      return LDPS_ERR;
+    }
+
+  if ((*register_all_symbols_read_hook)(all_symbols_read_hook) != LDPS_OK)
+    {
+      (*message)(LDPL_ERROR, "error registering all symbols read hook");
+      return LDPS_ERR;
+    }
+
+  if ((*register_cleanup_hook)(cleanup_hook) != LDPS_OK)
+    {
+      (*message)(LDPL_ERROR, "error registering cleanup hook");
+      return LDPS_ERR;
+    }
+
+  return LDPS_OK;
+}
+
+enum ld_plugin_status
+claim_file_hook (const struct ld_plugin_input_file* file, int* claimed)
+{
+  int len;
+  char buf[160];
+  struct claimed_file* claimed_file;
+  struct ld_plugin_symbol* syms;
+  int nsyms = 0;
+  int maxsyms = 0;
+  FILE* irfile;
+  char *p;
+  char *pbind;
+  char *pvis;
+  char *psect;
+  int weak;
+  int def;
+  int vis;
+  int size;
+  char* name;
+  int is_comdat;
+  int i;
+
+  (*message)(LDPL_INFO,
+             "%s: claim file hook called (offset = %ld, size = %ld)",
+             file->name, (long)file->offset, (long)file->filesize);
+
+  /* Look for the beginning of output from readelf -s.  */
+  irfile = fdopen(file->fd, "r");
+  (void)fseek(irfile, file->offset, SEEK_SET);
+  len = fread(buf, 1, 13, irfile);
+  if (len < 13 || strncmp(buf, "\nSymbol table", 13) != 0)
+    return LDPS_OK;
+
+  /* Skip the two header lines.  */
+  (void) fgets(buf, sizeof(buf), irfile);
+  (void) fgets(buf, sizeof(buf), irfile);
+
+  if (add_symbols == NULL)
+    {
+      fprintf(stderr, "tv_add_symbols interface missing\n");
+      return LDPS_ERR;
+    }
+
+  /* Parse the output from readelf. The columns are:
+     Index Value Size Type Binding Visibility Section Name.  */
+  syms = (struct ld_plugin_symbol*)malloc(sizeof(struct ld_plugin_symbol) * 8);
+  if (syms == NULL)
+    return LDPS_ERR;
+  maxsyms = 8;
+  while (fgets(buf, sizeof(buf), irfile) != NULL)
+    {
+      p = buf;
+      p += strspn(p, " ");
+
+      /* Index field.  */
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Value field.  */
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Size field.  */
+      size = atoi(p);
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Type field.  */
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Binding field.  */
+      pbind = p;
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Visibility field.  */
+      pvis = p;
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Section field.  */
+      psect = p;
+      p += strcspn(p, " ");
+      p += strspn(p, " ");
+
+      /* Name field.  */
+      /* FIXME:  Look for version.  */
+      len = strlen(p);
+      if (p[len-1] == '\n')
+        p[--len] = '\0';
+      name = malloc(len + 1);
+      strncpy(name, p, len + 1);
+
+      /* Ignore local symbols.  */
+      if (strncmp(pbind, "LOCAL", 5) == 0)
+        continue;
+
+      weak = strncmp(pbind, "WEAK", 4) == 0;
+      if (strncmp(psect, "UND", 3) == 0)
+        def = weak ? LDPK_WEAKUNDEF : LDPK_UNDEF;
+      else if (strncmp(psect, "COM", 3) == 0)
+        def = LDPK_COMMON;
+      else
+        def = weak ? LDPK_WEAKDEF : LDPK_DEF;
+
+      if (strncmp(pvis, "INTERNAL", 8) == 0)
+        vis = LDPV_INTERNAL;
+      else if (strncmp(pvis, "HIDDEN", 6) == 0)
+        vis = LDPV_HIDDEN;
+      else if (strncmp(pvis, "PROTECTED", 9) == 0)
+        vis = LDPV_PROTECTED;
+      else
+        vis = LDPV_DEFAULT;
+
+      /* If the symbol is listed in the options list, special-case
+         it as a comdat symbol.  */
+      is_comdat = 0;
+      for (i = 0; i < nopts; ++i)
+        {
+          if (name != NULL && strcmp(name, opts[i]) == 0)
+            {
+              is_comdat = 1;
+              break;
+            }
+        }
+
+      if (nsyms >= maxsyms)
+        {
+          syms = (struct ld_plugin_symbol*)
+            realloc(syms, sizeof(struct ld_plugin_symbol) * maxsyms * 2);
+          if (syms == NULL)
+            return LDPS_ERR;
+          maxsyms *= 2;
+        }
+
+      syms[nsyms].name = name;
+      syms[nsyms].version = NULL;
+      syms[nsyms].def = def;
+      syms[nsyms].visibility = vis;
+      syms[nsyms].size = size;
+      syms[nsyms].comdat_key = is_comdat ? name : NULL;
+      syms[nsyms].resolution = LDPR_UNKNOWN;
+      ++nsyms;
+    }
+
+  claimed_file = (struct claimed_file*) malloc(sizeof(struct claimed_file));
+  if (claimed_file == NULL)
+    return LDPS_ERR;
+
+  claimed_file->name = file->name;
+  claimed_file->handle = file->handle;
+  claimed_file->nsyms = nsyms;
+  claimed_file->syms = syms;
+  claimed_file->next = NULL;
+  if (last_claimed_file == NULL)
+    first_claimed_file = claimed_file;
+  else
+    last_claimed_file->next = claimed_file;
+  last_claimed_file = claimed_file;
+
+  (*add_symbols)(file->handle, nsyms, syms);
+
+  *claimed = 1;
+  return LDPS_OK;
+}
+
+enum ld_plugin_status
+all_symbols_read_hook(void)
+{
+  int i;
+  const char* res;
+  struct claimed_file* claimed_file;
+  char buf[160];
+  char *p;
+
+  (*message)(LDPL_INFO, "all symbols read hook called");
+
+  if (get_symbols == NULL)
+    {
+      fprintf(stderr, "tv_get_symbols interface missing\n");
+      return LDPS_ERR;
+    }
+
+  for (claimed_file = first_claimed_file;
+       claimed_file != NULL;
+       claimed_file = claimed_file->next)
+    {
+      (*get_symbols)(claimed_file->handle, claimed_file->nsyms,
+                     claimed_file->syms);
+      for (i = 0; i < claimed_file->nsyms; ++i)
+        {
+          switch (claimed_file->syms[i].resolution)
+            {
+            case LDPR_UNKNOWN:
+              res = "UNKNOWN";
+              break;
+            case LDPR_UNDEF:
+              res = "UNDEF";
+              break;
+            case LDPR_PREVAILING_DEF:
+              res = "PREVAILING_DEF_REG";
+              break;
+            case LDPR_PREVAILING_DEF_IRONLY:
+              res = "PREVAILING_DEF_IRONLY";
+              break;
+            case LDPR_PREEMPTED_REG:
+              res = "PREEMPTED_REG";
+              break;
+            case LDPR_PREEMPTED_IR:
+              res = "PREEMPTED_IR";
+              break;
+            case LDPR_RESOLVED_IR:
+              res = "RESOLVED_IR";
+              break;
+            case LDPR_RESOLVED_EXEC:
+              res = "RESOLVED_EXEC";
+              break;
+            case LDPR_RESOLVED_DYN:
+              res = "RESOLVED_DYN";
+              break;
+            default:
+              res = "?";
+              break;
+            }
+          (*message)(LDPL_INFO, "%s: %s: %s", claimed_file->name,
+                     claimed_file->syms[i].name, res);
+        }
+    }
+
+  if (add_input_file == NULL)
+    {
+      fprintf(stderr, "tv_add_input_file interface missing\n");
+      return LDPS_ERR;
+    }
+
+  for (claimed_file = first_claimed_file;
+       claimed_file != NULL;
+       claimed_file = claimed_file->next)
+    {
+      if (strlen(claimed_file->name) >= sizeof(buf))
+        {
+          (*message)(LDPL_FATAL, "%s: filename too long", claimed_file->name);
+          return LDPS_ERR;
+        }
+      strcpy(buf, claimed_file->name);
+      p = strrchr(buf, '.');
+      if (p == NULL || strcmp(p, ".syms") != 0)
+        {
+          (*message)(LDPL_FATAL, "%s: filename must have '.syms' suffix",
+                     claimed_file->name);
+          return LDPS_ERR;
+        }
+      p[1] = 'o';
+      p[2] = '\0';
+      (*add_input_file)(buf);
+    }
+
+  return LDPS_OK;
+}
+
+enum ld_plugin_status
+cleanup_hook(void)
+{
+  (*message)(LDPL_INFO, "cleanup hook called");
+  return LDPS_OK;
+}
diff --git a/gold/testsuite/plugin_test_1.sh b/gold/testsuite/plugin_test_1.sh
new file mode 100755
index 0000000..5e16139
--- /dev/null
+++ b/gold/testsuite/plugin_test_1.sh
@@ -0,0 +1,56 @@
+#!/bin/sh
+
+# plugin_test_1.sh -- a test case for the plugin API.
+
+# Copyright 2008 Free Software Foundation, Inc.
+# Written by Cary Coutant <ccoutant@google.com>.
+
+# This file is part of gold.
+
+# 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+
+# This file goes with plugin_test_1.c, a simple plug-in library that
+# exercises the basic interfaces and prints out version numbers and
+# options passed to the plugin.
+
+check()
+{
+    if ! grep -q "$2" "$1"
+    then
+	echo "Did not find expected output in $1:"
+	echo "   $2"
+	echo ""
+	echo "Actual output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+check plugin_test_1.err "API version:"
+check plugin_test_1.err "gold version:"
+check plugin_test_1.err "option: _Z4f13iv"
+check plugin_test_1.err "two_file_test_main.o: claim file hook called"
+check plugin_test_1.err "two_file_test_1.syms: claim file hook called"
+check plugin_test_1.err "two_file_test_1b.syms: claim file hook called"
+check plugin_test_1.err "two_file_test_2.syms: claim file hook called"
+check plugin_test_1.err "two_file_test_1.syms: _Z4f13iv: PREVAILING_DEF_IRONLY"
+check plugin_test_1.err "two_file_test_1.syms: _Z2t2v: PREVAILING_DEF_REG"
+check plugin_test_1.err "two_file_test_1.syms: v2: RESOLVED_IR"
+check plugin_test_1.err "two_file_test_1.syms: t17data: RESOLVED_IR"
+check plugin_test_1.err "two_file_test_2.syms: _Z4f13iv: PREEMPTED_IR"
+check plugin_test_1.err "cleanup hook called"
+
+exit 0
diff --git a/gold/testsuite/plugin_test_2.sh b/gold/testsuite/plugin_test_2.sh
new file mode 100755
index 0000000..41865ac
--- /dev/null
+++ b/gold/testsuite/plugin_test_2.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+# plugin_test_2.sh -- a test case for the plugin API.
+
+# Copyright 2008 Free Software Foundation, Inc.
+# Written by Cary Coutant <ccoutant@google.com>.
+
+# This file is part of gold.
+
+# 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+
+# This file goes with plugin_test_1.c, a simple plug-in library that
+# exercises the basic interfaces and prints out version numbers and
+# options passed to the plugin.
+
+check()
+{
+    if ! grep -q "$2" "$1"
+    then
+	echo "Did not find expected output in $1:"
+	echo "   $2"
+	echo ""
+	echo "Actual output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+check plugin_test_2.err "API version:"
+check plugin_test_2.err "gold version:"
+check plugin_test_2.err "two_file_test_main.o: claim file hook called"
+check plugin_test_2.err "two_file_test_1.syms: claim file hook called"
+check plugin_test_2.err "two_file_test_1b.syms: claim file hook called"
+check plugin_test_2.err "two_file_shared_2.so: claim file hook called"
+check plugin_test_2.err "two_file_test_1.syms: _Z4f13iv: PREVAILING_DEF_REG"
+check plugin_test_2.err "two_file_test_1.syms: _Z2t2v: PREVAILING_DEF_REG"
+check plugin_test_2.err "two_file_test_1.syms: v2: RESOLVED_DYN"
+check plugin_test_2.err "two_file_test_1.syms: t17data: RESOLVED_DYN"
+check plugin_test_2.err "cleanup hook called"
+
+exit 0
diff --git a/gold/testsuite/thin_archive_main.cc b/gold/testsuite/thin_archive_main.cc
new file mode 100644
index 0000000..6c38715
--- /dev/null
+++ b/gold/testsuite/thin_archive_main.cc
@@ -0,0 +1,39 @@
+// thin_archive_main.cc -- a test case for gold
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// This is the main program for the thin archive tests. It calls a single
+// routine, t1, defined in libthin1.a or libthin3.a, which then references
+// other routines in the same and other libraries, to make sure that all
+// archive members are linked properly.
+
+#include <cassert>
+
+extern int t1();
+
+// Main function.  Call the test function.
+
+int
+main()
+{
+  assert(t1() == 0x4321);
+  return 0;
+}
diff --git a/gold/testsuite/thin_archive_test_1.cc b/gold/testsuite/thin_archive_test_1.cc
new file mode 100644
index 0000000..db23937
--- /dev/null
+++ b/gold/testsuite/thin_archive_test_1.cc
@@ -0,0 +1,37 @@
+// thin_archive_test_1.cc -- part of a test case for thin archives
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// This tests references between files and archives.  This is file 1 of 4.
+// Each of the first three files contains a reference to the next.
+// We test the archives as follows:
+
+// Files 1 and 2 in libthin1.a, files 3 and 4 in libthin2.a.
+// Files 1 and 4 in libthin3.a, files 2 and 3 in libthin4.a, with
+// libthin3.a and libthin4.a nested inside libthinall.a.
+
+extern int t2();
+
+int
+t1()
+{
+  return (t2() << 4) | 1;
+}
diff --git a/gold/testsuite/thin_archive_test_2.cc b/gold/testsuite/thin_archive_test_2.cc
new file mode 100644
index 0000000..2c1ee31
--- /dev/null
+++ b/gold/testsuite/thin_archive_test_2.cc
@@ -0,0 +1,37 @@
+// thin_archive_test_2.cc -- part of a test case for thin archives
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// This tests references between files and archives.  This is file 2 of 4.
+// Each of the first three files contains a reference to the next.
+// We test the archives as follows:
+
+// Files 1 and 2 in libthin1.a, files 3 and 4 in libthin2.a.
+// Files 1 and 4 in libthin3.a, files 2 and 3 in libthin4.a, with
+// libthin3.a and libthin4.a nested inside libthinall.a.
+
+extern int t3();
+
+int
+t2()
+{
+  return (t3() << 4) | 2;
+}
diff --git a/gold/testsuite/thin_archive_test_3.cc b/gold/testsuite/thin_archive_test_3.cc
new file mode 100644
index 0000000..b58c59f
--- /dev/null
+++ b/gold/testsuite/thin_archive_test_3.cc
@@ -0,0 +1,37 @@
+// thin_archive_test_3.cc -- part of a test case for thin archives
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// This tests references between files and archives.  This is file 3 of 4.
+// Each of the first three files contains a reference to the next.
+// We test the archives as follows:
+
+// Files 1 and 2 in libthin1.a, files 3 and 4 in libthin2.a.
+// Files 1 and 4 in libthin3.a, files 2 and 3 in libthin4.a, with
+// libthin3.a and libthin4.a nested inside libthinall.a.
+
+extern int t4();
+
+int
+t3()
+{
+  return (t4() << 4) | 3;
+}
diff --git a/gold/testsuite/thin_archive_test_4.cc b/gold/testsuite/thin_archive_test_4.cc
new file mode 100644
index 0000000..1b67c94
--- /dev/null
+++ b/gold/testsuite/thin_archive_test_4.cc
@@ -0,0 +1,35 @@
+// thin_archive_test_4.cc -- part of a test case for thin archives
+
+// Copyright 2008 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// This tests references between files and archives.  This is file 4 of 4.
+// Each of the first three files contains a reference to the next.
+// We test the archives as follows:
+
+// Files 1 and 2 in libthin1.a, files 3 and 4 in libthin2.a.
+// Files 1 and 4 in libthin3.a, files 2 and 3 in libthin4.a, with
+// libthin3.a and libthin4.a nested inside libthinall.a.
+
+int
+t4()
+{
+  return 4;
+}
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index 2daa9bf..69f76a0 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -139,7 +139,7 @@
 
   // Return whether SYM is defined by the ABI.
   bool
-  do_is_defined_by_abi(Symbol* sym) const
+  do_is_defined_by_abi(const Symbol* sym) const
   { return strcmp(sym->name(), "__tls_get_addr") == 0; }
 
   // Return the size of the GOT section.
@@ -330,7 +330,7 @@
   void
   make_plt_entry(Symbol_table*, Layout*, Symbol*);
 
-  // Define the _TLS_MODULE_BASE_ symbol at the end of the TLS segment.
+  // Define the _TLS_MODULE_BASE_ symbol in the TLS segment.
   void
   define_tls_base_symbol(Symbol_table*, Layout*);
 
@@ -796,7 +796,7 @@
   this->plt_->add_entry(gsym);
 }
 
-// Define the _TLS_MODULE_BASE_ symbol at the end of the TLS segment.
+// Define the _TLS_MODULE_BASE_ symbol in the TLS segment.
 
 void
 Target_x86_64::define_tls_base_symbol(Symbol_table* symtab, Layout* layout)
@@ -807,12 +807,16 @@
   Output_segment* tls_segment = layout->tls_segment();
   if (tls_segment != NULL)
     {
+      bool is_exec = parameters->options().output_is_executable();
       symtab->define_in_output_segment("_TLS_MODULE_BASE_", NULL,
 				       tls_segment, 0, 0,
 				       elfcpp::STT_TLS,
 				       elfcpp::STB_LOCAL,
 				       elfcpp::STV_HIDDEN, 0,
-				       Symbol::SEGMENT_END, true);
+				       (is_exec
+					? Symbol::SEGMENT_END
+					: Symbol::SEGMENT_START),
+				       true);
     }
   this->tls_base_symbol_defined_ = true;
 }
diff --git a/gprof/ChangeLog b/gprof/ChangeLog
index b750058..8665143 100644
--- a/gprof/ChangeLog
+++ b/gprof/ChangeLog
@@ -1,3 +1,24 @@
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+	    Steve Ellcey  <sje@cup.hp.com>
+
+	* configure: Regenerate for new libtool.
+	* aclocal.m4: Ditto.
+	* Makefile.in: Ditto.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* po/vi.po: Updated Vietnamese translation.
+
+2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* configure.in: Call AC_SYS_LARGEFILE.
+	* gconfig.in: Regenerate.
+	* configure: Regenerate.
+
+2008-09-11  Alan Modra  <amodra@bigpond.net.au>
+
+	* po/ro.po: New file.
+
 2008-08-25  Alan Modra  <amodra@bigpond.net.au>
 
 	* gmon_io.h: Don't include sysdep.h here.
diff --git a/gprof/Makefile.in b/gprof/Makefile.in
index bfaf485..98b7020 100644
--- a/gprof/Makefile.in
+++ b/gprof/Makefile.in
@@ -60,7 +60,7 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -139,6 +139,7 @@
 DATADIRNAME = @DATADIRNAME@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -164,6 +165,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -174,8 +176,12 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -195,7 +201,13 @@
 XGETTEXT = @XGETTEXT@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
diff --git a/gprof/aclocal.m4 b/gprof/aclocal.m4
index e8d6ce9..0d693ff 100644
--- a/gprof/aclocal.m4
+++ b/gprof/aclocal.m4
@@ -870,3 +870,4 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
diff --git a/gprof/configure b/gprof/configure
index 369289f..05adcc6 100755
--- a/gprof/configure
+++ b/gprof/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE WARN_CFLAGS NO_WERROR datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE WARN_CFLAGS NO_WERROR datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -1002,6 +1002,7 @@
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
+  --disable-largefile     omit support for large files
   --enable-shared[=PKGS]
                           build shared libraries [default=yes]
   --enable-static[=PKGS]
@@ -4732,6 +4733,370 @@
 _ACEOF
 
 
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
@@ -4824,10 +5189,17 @@
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -4842,124 +5214,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi;
-
-
-
-
-
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5180,7 +5434,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5342,13 +5595,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5345: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5598: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5348: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5601: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5351: output\"" >&5)
+  (eval echo "\"\$as_me:5604: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5394,7 +5647,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5455,8 +5708,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5503,7 +5756,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5514,7 +5766,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5594,6 +5848,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5648,6 +5991,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -6070,7 +6419,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6150,7 +6499,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6194,6 +6543,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6333,7 +6683,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6372,6 +6722,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6403,7 +6758,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6406 "configure"' > conftest.$ac_ext
+  echo '#line 6761 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6578,7 +6933,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6590,6 +6949,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6652,6 +7564,128 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+            # Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_shared=yes ;;
+    no) enable_shared=no ;;
+    *)
+      enable_shared=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_shared=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_shared=yes
+fi;
+
+
+
+
+
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -6998,7 +8032,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -7030,11 +8064,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7033: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8067: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7037: \$? = $ac_status" >&5
+   echo "$as_me:8071: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7084,19 +8118,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7111,10 +8151,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7163,18 +8204,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7204,11 +8235,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7221,6 +8266,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7336,10 +8387,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7352,27 +8403,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7355: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8406: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7359: \$? = $ac_status" >&5
+   echo "$as_me:8410: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7395,10 +8446,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7411,20 +8462,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7457,11 +8508,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7460: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8511: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7464: \$? = $ac_status" >&5
+   echo "$as_me:8515: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7512,11 +8563,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7515: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8566: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7519: \$? = $ac_status" >&5
+   echo "$as_me:8570: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7606,16 +8657,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7677,19 +8729,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7703,7 +8754,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7754,6 +8805,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7768,6 +8820,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7776,8 +8834,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7787,6 +8843,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -7982,6 +9054,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8134,20 +9207,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8169,73 +9247,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8317,7 +9352,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8435,25 +9470,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -8892,8 +9931,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -9019,13 +10058,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -9048,14 +10092,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -9078,7 +10122,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9344,7 +10388,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9365,7 +10409,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9549,7 +10593,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9575,6 +10619,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9719,7 +10770,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -9966,7 +11017,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10260,7 +11311,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10309,7 +11360,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10312 "configure"
+#line 11363 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10350,10 +11401,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10369,7 +11416,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10409,7 +11456,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10412 "configure"
+#line 11459 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10450,10 +11497,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10469,7 +11512,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -12162,6 +13205,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12178,6 +13222,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12188,6 +13233,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12261,6 +13311,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -12273,6 +13324,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -12281,6 +13333,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -12535,11 +13592,23 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@AR@,$AR,;t t
 s,@ac_ct_AR@,$ac_ct_AR,;t t
 s,@RANLIB@,$RANLIB,;t t
 s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@USE_NLS@,$USE_NLS,;t t
 s,@LIBINTL@,$LIBINTL,;t t
 s,@LIBINTL_DEP@,$LIBINTL_DEP,;t t
@@ -13265,36 +14334,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -13371,6 +14440,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -13404,6 +14476,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -13419,6 +14494,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -13659,6 +14749,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -13676,6 +14767,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -13705,10 +14817,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -13729,6 +14862,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -13761,6 +14895,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -13785,6 +14939,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/gprof/configure.in b/gprof/configure.in
index 904e051..2ae1aa1 100644
--- a/gprof/configure.in
+++ b/gprof/configure.in
@@ -20,6 +20,7 @@
 AC_PROG_CC
 AC_GNU_SOURCE
 AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
 AC_PROG_INSTALL
 
 LT_INIT
diff --git a/gprof/gconfig.in b/gprof/gconfig.in
index 705872c..7fa1362 100644
--- a/gprof/gconfig.in
+++ b/gprof/gconfig.in
@@ -71,11 +71,17 @@
 /* Version number of package */
 #undef VERSION
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
 #endif
 
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to 1 if on MINIX. */
 #undef _MINIX
 
diff --git a/gprof/po/ro.po b/gprof/po/ro.po
new file mode 100644
index 0000000..6ae459a
--- /dev/null
+++ b/gprof/po/ro.po
@@ -0,0 +1,548 @@
+# Mesajele în limba românã pentru gprof-2.14rel030712
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Acest fi?ier este distribuit sub aceea?i licen?? ca pachetul gprof
+# Eugen Hoanca <eugenh@urban-grafx.ro>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gprof 2.14rel030712\n"
+"POT-Creation-Date: 2003-07-11 13:58+0930\n"
+"PO-Revision-Date: 2003-08-23 09:02+0300\n"
+"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
+"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: alpha.c:103 mips.c:57
+msgid "<indirect child>"
+msgstr "<copil indirect>"
+
+#: alpha.c:120 mips.c:74
+#, c-format
+msgid "[find_call] %s: 0x%lx to 0x%lx\n"
+msgstr "[find_call] %s: 0x%lx spre 0x%lx\n"
+
+#: alpha.c:142
+#, c-format
+msgid "[find_call] 0x%lx: jsr%s <indirect_child>\n"
+msgstr "[find_call] 0x%lx: jsr%s <copil indirect>\n"
+
+#: alpha.c:152
+#, c-format
+msgid "[find_call] 0x%lx: bsr"
+msgstr "[find_call] 0x%lx: bsr"
+
+#: basic_blocks.c:134 call_graph.c:94 hist.c:98
+#, c-format
+msgid "%s: %s: unexpected end of file\n"
+msgstr "%s: %s: sfârºit brusc de fiºier\n"
+
+#: basic_blocks.c:202
+#, c-format
+msgid "%s: warning: ignoring basic-block exec counts (use -l or --line)\n"
+msgstr "%s: avertisment: se ignorã numãrãtoarea de blocuri executabile de bazã (folosiþi -l or --line)\n"
+
+#. FIXME: This only works if bfd_vma is unsigned long.
+#: basic_blocks.c:295 basic_blocks.c:305
+#, c-format
+msgid "%s:%d: (%s:0x%lx) %lu executions\n"
+msgstr "%s:%d: (%s:0x%lx) %lu execuþii\n"
+
+#: basic_blocks.c:296 basic_blocks.c:306
+msgid "<unknown>"
+msgstr "<necunoscut>"
+
+#: basic_blocks.c:553
+#, c-format
+msgid ""
+"\n"
+"\n"
+"Top %d Lines:\n"
+"\n"
+"     Line      Count\n"
+"\n"
+msgstr ""
+"\n"
+"\n"
+"Cele mai dese %d linii\n"
+"\n"
+"     Linie      Repetãri\n"
+"\n"
+
+#: basic_blocks.c:577
+msgid ""
+"\n"
+"Execution Summary:\n"
+"\n"
+msgstr ""
+"\n"
+"Cuprins al Execuþiei:\n"
+"\n"
+
+#: basic_blocks.c:578
+#, c-format
+msgid "%9ld   Executable lines in this file\n"
+msgstr "%9ld   Linii executanile în acest fiºier\n"
+
+#: basic_blocks.c:580
+#, c-format
+msgid "%9ld   Lines executed\n"
+msgstr "%9ld   Linii executate\n"
+
+#: basic_blocks.c:581
+#, c-format
+msgid "%9.2f   Percent of the file executed\n"
+msgstr "%9.2f   Procent de fiºier executat\n"
+
+#: basic_blocks.c:585
+#, c-format
+msgid ""
+"\n"
+"%9lu   Total number of line executions\n"
+msgstr ""
+"\n"
+"%9lu   Numãr total de execuþii de linii\n"
+
+#: basic_blocks.c:587
+#, c-format
+msgid "%9.2f   Average executions per line\n"
+msgstr "%9.2f   Mediu de execuþii pe linie\n"
+
+#: call_graph.c:71
+#, c-format
+msgid "[cg_tally] arc from %s to %s traversed %lu times\n"
+msgstr "[cg_tally] arc din %s spre %s a trecut de %lu ori\n"
+
+#: cg_print.c:73
+msgid ""
+"\t\t     Call graph (explanation follows)\n"
+"\n"
+msgstr ""
+"\t\t     Grafic de apelãri (urmeazã explicaþia)\n"
+"\n"
+
+#: cg_print.c:75
+msgid ""
+"\t\t\tCall graph\n"
+"\n"
+msgstr ""
+"\t\t\tGrafic de apelãri\n"
+"\n"
+
+#: cg_print.c:78 hist.c:363
+#, c-format
+msgid ""
+"\n"
+"granularity: each sample hit covers %ld byte(s)"
+msgstr ""
+"\n"
+"granularitate: fiecare exemplu de potrivire(hit) acoperã %ld octet(þi)"
+
+#: cg_print.c:82
+#, c-format
+msgid ""
+" for %.2f%% of %.2f seconds\n"
+"\n"
+msgstr ""
+" pentru %.2f%% din %.2f secunde\n"
+"\n"
+
+#: cg_print.c:86
+msgid ""
+" no time propagated\n"
+"\n"
+msgstr ""
+" nici un timp propagat\n"
+"\n"
+
+#: cg_print.c:95 cg_print.c:98 cg_print.c:100
+msgid "called"
+msgstr "apel"
+
+#: cg_print.c:95 cg_print.c:100
+msgid "total"
+msgstr "total"
+
+#: cg_print.c:95
+msgid "parents"
+msgstr "pãrinþi"
+
+#: cg_print.c:97 cg_print.c:98
+msgid "index"
+msgstr "index"
+
+#: cg_print.c:97
+#, c-format
+msgid "%time"
+msgstr "%timp"
+
+#: cg_print.c:97 cg_print.c:98
+msgid "self"
+msgstr "propriu"
+
+#: cg_print.c:97
+msgid "descendants"
+msgstr "descendenþi"
+
+#: cg_print.c:98 hist.c:389
+msgid "name"
+msgstr "nume"
+
+#: cg_print.c:100
+msgid "children"
+msgstr "copil"
+
+#: cg_print.c:105
+#, c-format
+msgid "index %% time    self  children    called     name\n"
+msgstr "index %% timp    propriu  copil    apel     nume\n"
+
+#: cg_print.c:129
+#, c-format
+msgid " <cycle %d as a whole> [%d]\n"
+msgstr " <trecere prin %d ca un întreg> [%d]\n"
+
+#: cg_print.c:363
+#, c-format
+msgid "%6.6s %5.5s %7.7s %11.11s %7.7s %7.7s     <spontaneous>\n"
+msgstr "%6.6s %5.5s %7.7s %11.11s %7.7s %7.7s     <spontan>\n"
+
+#: cg_print.c:364
+#, c-format
+msgid "%6.6s %5.5s %7.7s %7.7s %7.7s %7.7s     <spontaneous>\n"
+msgstr "%6.6s %5.5s %7.7s %7.7s %7.7s %7.7s     <spontan>\n"
+
+#: cg_print.c:604
+msgid ""
+"Index by function name\n"
+"\n"
+msgstr ""
+"Indexare dupã numele funcþiei\n"
+"\n"
+
+#: cg_print.c:661 cg_print.c:670
+#, c-format
+msgid "<cycle %d>"
+msgstr "<trecere prin %d>"
+
+#: corefile.c:64
+#, c-format
+msgid "%s: could not open %s.\n"
+msgstr "%s: nu am putut deschide %s.\n"
+
+#: corefile.c:78 corefile.c:112
+#, c-format
+msgid "%s: unable to parse mapping file %s.\n"
+msgstr "%s: nu s-a putut analiza(parse) fiºierul de mapping %s.\n"
+
+#: corefile.c:155
+#, c-format
+msgid "%s: %s: not in a.out format\n"
+msgstr "%s: %s: nu este în format a.out\n"
+
+#: corefile.c:166
+#, c-format
+msgid "%s: can't find .text section in %s\n"
+msgstr "%s: nu pot gãsi secþiunea .text %s\n"
+
+#: corefile.c:225
+#, c-format
+msgid "%s: ran out room for %lu bytes of text space\n"
+msgstr "%s: locaþie(room) plinã pentru %lu octeþi de spaþiu de text\n"
+
+#: corefile.c:239
+#, c-format
+msgid "%s: can't do -c\n"
+msgstr "%s: nu pot face -c\n"
+
+#: corefile.c:276
+#, c-format
+msgid "%s: -c not supported on architecture %s\n"
+msgstr "%s: -c nu este suportat pe arhitectura %s\n"
+
+#: corefile.c:447
+#, c-format
+msgid "%s: file `%s' has no symbols\n"
+msgstr "%s: fiºierul `%s' nu are simboluri\n"
+
+#: corefile.c:758
+#, c-format
+msgid "%s: somebody miscounted: ltab.len=%d instead of %ld\n"
+msgstr "%s: cineva a numãrat greºit: ltab.len=%d în loc de %ld\n"
+
+#: gmon_io.c:82
+#, c-format
+msgid "%s: address size has unexpected value of %u\n"
+msgstr "%s: mãrimea adresei are valoarea neaºteptatã de %u\n"
+
+#: gmon_io.c:345 gmon_io.c:440
+#, c-format
+msgid "%s: file too short to be a gmon file\n"
+msgstr "%s: fiºier prea scurt pentru a fi un fiºier gmon\n"
+
+#: gmon_io.c:355 gmon_io.c:483
+#, c-format
+msgid "%s: file `%s' has bad magic cookie\n"
+msgstr "%s: fiºierul `%s' are un magic cookie eronat\n"
+
+#: gmon_io.c:366
+#, c-format
+msgid "%s: file `%s' has unsupported version %d\n"
+msgstr "%s: fiºierul `%s' are versiunea nesuportatã %d\n"
+
+#: gmon_io.c:396
+#, c-format
+msgid "%s: %s: found bad tag %d (file corrupted?)\n"
+msgstr "%s: %s: s-a gãsit marcaj(tag) greºit %d (fiºier corupt?)\n"
+
+#: gmon_io.c:462
+#, c-format
+msgid "%s: profiling rate incompatible with first gmon file\n"
+msgstr "%s: ratã profilatã incompatibilã cu primul fiºier gmon\n"
+
+#: gmon_io.c:510
+#, c-format
+msgid "%s: incompatible with first gmon file\n"
+msgstr "%s: incompatibil cu primul fiºier gmon\n"
+
+#: gmon_io.c:538
+#, c-format
+msgid "%s: file '%s' does not appear to be in gmon.out format\n"
+msgstr "%s: fiºierul '%s' nupare sã fie în format gmon.out\n"
+
+#: gmon_io.c:559
+#, c-format
+msgid "%s: unexpected EOF after reading %d/%d bins\n"
+msgstr "%s: EOF neaºteptat dupã citirea a %d/%d bin-uri\n"
+
+#: gmon_io.c:592
+msgid "time is in ticks, not seconds\n"
+msgstr "timpul este în bãtãi(ticks), nu în secunde\n"
+
+#: gmon_io.c:598 gmon_io.c:775
+#, c-format
+msgid "%s: don't know how to deal with file format %d\n"
+msgstr "%s: nu ºtiu cum sã mã descurc cu formatul de fiºier %d\n"
+
+#: gmon_io.c:605
+#, c-format
+msgid "File `%s' (version %d) contains:\n"
+msgstr "Fiºierul `%s' (versiunea %d) conþine:\n"
+
+#: gmon_io.c:608
+#, c-format
+msgid "\t%d histogram record\n"
+msgstr "\t%d înregistrare histogramã\n"
+
+#: gmon_io.c:609
+#, c-format
+msgid "\t%d histogram records\n"
+msgstr "\t%d înregistrãri histogramã\n"
+
+#: gmon_io.c:611
+#, c-format
+msgid "\t%d call-graph record\n"
+msgstr "\t%d înregistrare grafic apelãri\n"
+
+#: gmon_io.c:612
+#, c-format
+msgid "\t%d call-graph records\n"
+msgstr "\t%d înregistrãri grafic apelãri\n"
+
+#: gmon_io.c:614
+#, c-format
+msgid "\t%d basic-block count record\n"
+msgstr "\t%d înregistrare repetãri de blocuri de bazã\n"
+
+#: gmon_io.c:615
+#, c-format
+msgid "\t%d basic-block count records\n"
+msgstr "\t%d înregistrãri repetãri de blocuri de bazã\n"
+
+#: gprof.c:163
+#, c-format
+msgid ""
+"Usage: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n"
+"\t[-d[num]] [-k from/to] [-m min-count] [-t table-length]\n"
+"\t[--[no-]annotated-source[=name]] [--[no-]exec-counts[=name]]\n"
+"\t[--[no-]flat-profile[=name]] [--[no-]graph[=name]]\n"
+"\t[--[no-]time=name] [--all-lines] [--brief] [--debug[=level]]\n"
+"\t[--function-ordering] [--file-ordering]\n"
+"\t[--directory-path=dirs] [--display-unused-functions]\n"
+"\t[--file-format=name] [--file-info] [--help] [--line] [--min-count=n]\n"
+"\t[--no-static] [--print-path] [--separate-files]\n"
+"\t[--static-call-graph] [--sum] [--table-length=len] [--traditional]\n"
+"\t[--version] [--width=n] [--ignore-non-functions]\n"
+"\t[--demangle[=STYLE]] [--no-demangle]\n"
+"\t[image-file] [profile-file...]\n"
+msgstr ""
+"Folosiree: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n"
+"\t[-d[num]] [-k from/to] [-m min-count] [-t table-length]\n"
+"\t[--[no-]annotated-source[=nume]] [--[no-]exec-counts[=nume]]\n"
+"\t[--[no-]flat-profile[=nume]] [--[no-]graph[=nume]]\n"
+"\t[--[no-]time=nume] [--all-lines] [--brief] [--debug[=nivel]]\n"
+"\t[--function-ordering] [--file-ordering]\n"
+"\t[--directory-path=dirs] [--display-unused-functions]\n"
+"\t[--file-format=nume] [--file-info] [--help] [--line] [--min-count=n]\n"
+"\t[--no-static] [--print-path] [--separate-files]\n"
+"\t[--static-call-graph] [--sum] [--table-length=lun] [--traditional]\n"
+"\t[--version] [--width=n] [--ignore-non-functions]\n"
+"\t[--demangle[=STIL]] [--no-demangle]\n"
+"\t[image-file] [profile-file...]\n"
+
+#: gprof.c:179
+#, c-format
+msgid "Report bugs to %s\n"
+msgstr "Raportaþi erorile(bugs) la %s\n"
+
+#: gprof.c:253
+#, c-format
+msgid "%s: debugging not supported; -d ignored\n"
+msgstr "%s: debugging nesuportat; -d ignorat\n"
+
+#: gprof.c:333
+#, c-format
+msgid "%s: unknown file format %s\n"
+msgstr "%s: format fiºier necunoscut %s\n"
+
+#. This output is intended to follow the GNU standards document.
+#: gprof.c:417
+#, c-format
+msgid "GNU gprof %s\n"
+msgstr "GNU gprof %s\n"
+
+#: gprof.c:418
+msgid "Based on BSD gprof, copyright 1983 Regents of the University of California.\n"
+msgstr "Bazat pe BSD gprof, copyright 1983 Regents of the University of California.\n"
+
+#: gprof.c:419
+msgid "This program is free software.  This program has absolutely no warranty.\n"
+msgstr "Acest program este software liber.  Acest program nu are absolut nici o garanþie.\n"
+
+#: gprof.c:460
+#, c-format
+msgid "%s: unknown demangling style `%s'\n"
+msgstr "%s: stil necunoscut de îmbinare (demangling) `%s'\n"
+
+#: gprof.c:480
+#, c-format
+msgid "%s: Only one of --function-ordering and --file-ordering may be specified.\n"
+msgstr "%s: Doar unul dintre --function-ordering sau --file-ordering poate fi specificat.\n"
+
+#: gprof.c:578
+#, c-format
+msgid "%s: sorry, file format `prof' is not yet supported\n"
+msgstr "%s: nu pare rãu, formatul de fiºier `prof' nu este încã suportat\n"
+
+#: gprof.c:639
+#, c-format
+msgid "%s: gmon.out file is missing histogram\n"
+msgstr "%s: Fiºierului gmon.out îi lipseºte histograma\n"
+
+#: gprof.c:646
+#, c-format
+msgid "%s: gmon.out file is missing call-graph data\n"
+msgstr "%s: Fiºierului gmon.out îi lipsesc datele graficului de apelãri\n"
+
+#: hist.c:127
+#, c-format
+msgid "%s: `%s' is incompatible with first gmon file\n"
+msgstr "%s: `%s' este incompatibil cu primul fiºier gmon\n"
+
+#: hist.c:143
+#, c-format
+msgid "%s: %s: unexpected EOF after reading %d of %d samples\n"
+msgstr "%s: %s: EOF neaºteptat dupã citirea a %d din %d exemple\n"
+
+#: hist.c:359
+#, c-format
+msgid "%c%c/call"
+msgstr "%c%c/apel"
+
+#: hist.c:367
+#, c-format
+msgid ""
+" for %.2f%% of %.2f %s\n"
+"\n"
+msgstr ""
+"pentru %.2f%% din %.2f %s\n"
+"\n"
+
+#: hist.c:373
+#, c-format
+msgid ""
+"\n"
+"Each sample counts as %g %s.\n"
+msgstr ""
+"\n"
+"Fiecare exemplu conteazã ca ºi %g %s.\n"
+
+#: hist.c:378
+msgid ""
+" no time accumulated\n"
+"\n"
+msgstr ""
+" nici un timp acumulat\n"
+"\n"
+
+#: hist.c:385
+msgid "cumulative"
+msgstr "cumulativ"
+
+#: hist.c:385
+msgid "self  "
+msgstr "propriu  "
+
+#: hist.c:385
+msgid "total "
+msgstr "total "
+
+#: hist.c:388
+msgid "time"
+msgstr "timp"
+
+#: hist.c:388
+msgid "calls"
+msgstr "apelãri"
+
+#: hist.c:481
+msgid ""
+"\n"
+"\n"
+"\n"
+"flat profile:\n"
+msgstr ""
+"\n"
+"\n"
+"\n"
+"profil clar:\n"
+
+#: hist.c:487
+msgid "Flat profile:\n"
+msgstr "Profil clar:\n"
+
+#: mips.c:85
+#, c-format
+msgid "[find_call] 0x%lx: jal"
+msgstr "[find_call] 0x%lx: jal"
+
+#: mips.c:110
+#, c-format
+msgid "[find_call] 0x%lx: jalr\n"
+msgstr "[find_call] 0x%lx: jalr\n"
+
+#: source.c:166
+#, c-format
+msgid "%s: could not locate `%s'\n"
+msgstr "%s: nu am putut localiza `%s'\n"
+
+#: source.c:241
+#, c-format
+msgid "*** File %s:\n"
+msgstr "*** Fiºier %s:\n"
+
+#: utils.c:109
+#, c-format
+msgid " <cycle %d>"
+msgstr " <trecere prin %d>"
diff --git a/gprof/po/vi.po b/gprof/po/vi.po
index 7c39964..2ca27dc 100644
--- a/gprof/po/vi.po
+++ b/gprof/po/vi.po
@@ -1,20 +1,21 @@
 # Vietnamese Translation for GProf.
-# Copyright © 2007 Free Software Foundation, Inc.
-# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
-# 
+# Copyright © 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: gprof 2.17.90\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-05-15 16:49+0930\n"
-"PO-Revision-Date: 2007-08-07 21:11+0930\n"
+"Project-Id-Version: gprof 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-09-22 19:22+0930\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
-"Language-Team: Vietnamese <vi-VN@googlegroups.com> \n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.7b1\n"
+"X-Generator: LocFactoryEditor 1.7b3\n"
 
 #: alpha.c:102 mips.c:54
 msgid "<indirect child>"
@@ -233,137 +234,137 @@
 msgid "<cycle %d>"
 msgstr "<chu kỳ %d>"
 
-#: corefile.c:59
+#: corefile.c:60
 #, c-format
 msgid "%s: unable to parse mapping file %s.\n"
 msgstr "%s: không thể phân tách tập tin ánh xạ %s.\n"
 
-#: corefile.c:72
+#: corefile.c:73
 #, c-format
 msgid "%s: could not open %s.\n"
 msgstr "%s: không thể mở %s.\n"
 
-#: corefile.c:166
+#: corefile.c:167
 #, c-format
 msgid "%s: %s: not in executable format\n"
 msgstr "%s: %s: không phải theo định dạng có thể thực hiện\n"
 
-#: corefile.c:177
+#: corefile.c:178
 #, c-format
 msgid "%s: can't find .text section in %s\n"
 msgstr "%s: không tìm thấy phần văn bản « .text » trong %s\n"
 
-#: corefile.c:252
+#: corefile.c:253
 #, c-format
 msgid "%s: ran out room for %lu bytes of text space\n"
 msgstr "%s: không đủ sức chứa đối với vùng văn bản %lu byte\n"
 
-#: corefile.c:266
+#: corefile.c:267
 #, c-format
 msgid "%s: can't do -c\n"
 msgstr "%s: không thể làm « -c »\n"
 
-#: corefile.c:305
+#: corefile.c:306
 #, c-format
 msgid "%s: -c not supported on architecture %s\n"
 msgstr "%s: tùy chọn « -c »  không được hỗ trợ trên kiến trúc %s\n"
 
-#: corefile.c:470
+#: corefile.c:479
 #, c-format
 msgid "%s: file `%s' has no symbols\n"
 msgstr "%s: tập tin « %s » không có ký hiệu\n"
 
-#: corefile.c:772
+#: corefile.c:781
 #, c-format
 msgid "%s: somebody miscounted: ltab.len=%d instead of %ld\n"
 msgstr "%s: sai đếm: ltab.len=%d thay cho %ld\n"
 
-#: gmon_io.c:83
+#: gmon_io.c:84
 #, c-format
 msgid "%s: address size has unexpected value of %u\n"
 msgstr "%s: kích cỡ địa chỉ có giá trị bất thường %u\n"
 
-#: gmon_io.c:320 gmon_io.c:416
+#: gmon_io.c:319 gmon_io.c:415
 #, c-format
 msgid "%s: file too short to be a gmon file\n"
 msgstr "%s: tập tin quá ngắn cho tập tin kiểu gmon\n"
 
-#: gmon_io.c:330 gmon_io.c:459
+#: gmon_io.c:329 gmon_io.c:458
 #, c-format
 msgid "%s: file `%s' has bad magic cookie\n"
 msgstr "%s: tập tin « %s » có cookie ma thuật sai\n"
 
-#: gmon_io.c:341
+#: gmon_io.c:340
 #, c-format
 msgid "%s: file `%s' has unsupported version %d\n"
 msgstr "%s: tập tin « %s » có phiên bản không được hỗ trợ %d\n"
 
-#: gmon_io.c:371
+#: gmon_io.c:370
 #, c-format
 msgid "%s: %s: found bad tag %d (file corrupted?)\n"
 msgstr "%s: %s: tìm thế thẻ sai %d (tập tin bị hỏng?)\n"
 
-#: gmon_io.c:438
+#: gmon_io.c:437
 #, c-format
 msgid "%s: profiling rate incompatible with first gmon file\n"
 msgstr "%s: tỷ lệ tính hiện trạng không tương thích với tập tin gmon thứ nhất\n"
 
-#: gmon_io.c:489
+#: gmon_io.c:488
 #, c-format
 msgid "%s: incompatible with first gmon file\n"
 msgstr "%s: không tương thích với tập tin gmon thứ nhất\n"
 
-#: gmon_io.c:516
+#: gmon_io.c:518
 #, c-format
 msgid "%s: file '%s' does not appear to be in gmon.out format\n"
 msgstr "%s: tập tin « %s » có vẻ là không theo định dạng « gmon.out »\n"
 
-#: gmon_io.c:529
+#: gmon_io.c:531
 #, c-format
 msgid "%s: unexpected EOF after reading %d/%d bins\n"
 msgstr "%s: gặp kết thúc tập tin bất thường sau khi đọc %d/%d thùng\n"
 
-#: gmon_io.c:563
+#: gmon_io.c:565
 #, c-format
 msgid "time is in ticks, not seconds\n"
 msgstr "tính thời gian theo tích, không phải theo giây\n"
 
-#: gmon_io.c:569 gmon_io.c:746
+#: gmon_io.c:571 gmon_io.c:748
 #, c-format
 msgid "%s: don't know how to deal with file format %d\n"
 msgstr "%s: không biết xử lý định dạng tập tin %d như thế nào\n"
 
-#: gmon_io.c:576
+#: gmon_io.c:578
 #, c-format
 msgid "File `%s' (version %d) contains:\n"
 msgstr "Tập tin « %s » (phiên bản %d) chứa:\n"
 
-#: gmon_io.c:579
+#: gmon_io.c:581
 #, c-format
 msgid "\t%d histogram record\n"
 msgstr "\t%d mục ghi biểu đồ tần xuất\n"
 
-#: gmon_io.c:580
+#: gmon_io.c:582
 #, c-format
 msgid "\t%d histogram records\n"
 msgstr "\t%d mục ghi biểu đồ tần xuất\n"
 
-#: gmon_io.c:582
+#: gmon_io.c:584
 #, c-format
 msgid "\t%d call-graph record\n"
 msgstr "\t%d mục ghi đồ thị gọi\n"
 
-#: gmon_io.c:583
+#: gmon_io.c:585
 #, c-format
 msgid "\t%d call-graph records\n"
 msgstr "\t%d mục ghi đồ thị gọi\n"
 
-#: gmon_io.c:585
+#: gmon_io.c:587
 #, c-format
 msgid "\t%d basic-block count record\n"
 msgstr "\t%d mục ghi tổng khối cơ bản\n"
 
-#: gmon_io.c:586
+#: gmon_io.c:588
 #, c-format
 msgid "\t%d basic-block count records\n"
 msgstr "\t%d mục ghi tổng khối cơ bản\n"
@@ -619,6 +620,3 @@
 #, c-format
 msgid " <cycle %d>"
 msgstr " <chu kỳ %d>"
-
-#~ msgid "%s: `%s' is incompatible with first gmon file\n"
-#~ msgstr "%s: « %s » không tương thích với tập tin gmon thứ nhất\n"
diff --git a/include/ChangeLog b/include/ChangeLog
index f70cebd..beb78b7 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,35 @@
+2008-10-21  Alan Modra  <amodra@bigpond.net.au>
+
+	* obstack.h (obstack_finish <!__GNUC__>): Cast result to void *.
+
+2008-10-06  Jason Merrill  <jason@redhat.com>
+
+	* demangle.h (enum demangle_component_type): Add
+	DEMANGLE_COMPONENT_PACK_EXPANSION.
+
+2008-09-24  Richard Henderson  <rth@redhat.com>
+
+	* elf/dwarf2.h (DW_OP_GNU_encoded_addr): New.
+
+2008-09-22 Rafael Espindola  <espindola@google.com>
+
+	* plugin-api.h (ld_plugin_status): Remove comma from the last item.
+	Use C style comment.
+	(ld_plugin_api_version, ld_plugin_output_file_type,
+	ld_plugin_symbol_kind, ld_plugin_symbol_visibility,
+	ld_plugin_symbol_resolution, ld_plugin_level, ld_plugin_tag): Remove
+	comma from the last item.
+
+2008-09-18  Cary Coutant  <ccoutant@google.com>
+
+	Add plugin functionality for link-time optimization (LTO).
+	* plugin-api.h: New file.
+
+2008-09-09  Jason Merrill  <jason@redhat.com>
+
+	* demangle.h (enum demangle_component_type): Add
+	DEMANGLE_COMPONENT_DECLTYPE.
+
 2008-08-25  Alan Modra  <amodra@bigpond.net.au>
 
 	* binary-io.h: New file, imported from gnulib, but don't
diff --git a/include/demangle.h b/include/demangle.h
index 78e022d..0ea639d 100644
--- a/include/demangle.h
+++ b/include/demangle.h
@@ -370,7 +370,11 @@
      subtree is the first part and the right subtree the second.  */
   DEMANGLE_COMPONENT_COMPOUND_NAME,
   /* A name formed by a single character.  */
-  DEMANGLE_COMPONENT_CHARACTER
+  DEMANGLE_COMPONENT_CHARACTER,
+  /* A decltype type.  */
+  DEMANGLE_COMPONENT_DECLTYPE,
+  /* A pack expansion.  */
+  DEMANGLE_COMPONENT_PACK_EXPANSION
 };
 
 /* Types which are only used internally.  */
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index ae259dc..964f6cf 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,14 @@
+2008-10-10  Nathan Froyd  <froydnj@codesourcery.com>
+
+	* ppc.h: Add Tag_GNU_Power_ABI_Struct_Return.
+
+2008-10-04  Hans-Peter Nilsson  <hp@axis.com>
+
+	* cris.h (R_CRIS_32_GOT_GD, R_CRIS_16_GOT_GD, R_CRIS_32_GD)
+	(R_CRIS_DTP, R_CRIS_32_DTPREL, R_CRIS_16_DTPREL, R_CRIS_DTPMOD)
+	(R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL, R_CRIS_32_TPREL)
+	(R_CRIS_16_TPREL): New relocations.
+
 2008-08-20  Bob Wilson  <bob.wilson@acm.org>
 
 	* xtensa.h (R_XTENSA_TLSDESC_FN, R_XTENSA_TLSDESC_ARG)
diff --git a/include/elf/cris.h b/include/elf/cris.h
index 8225baa..550955d 100644
--- a/include/elf/cris.h
+++ b/include/elf/cris.h
@@ -91,6 +91,82 @@
      The BFD equivalent is BFD_RELOC_CRIS_32_PLT_PCREL.  */
   RELOC_NUMBER (R_CRIS_32_PLT_PCREL, 19)
 
+  /* An assembler-generated-only relocation, instructing the linker to
+     reserve two GOT slots, carrying the R_CRIS_DTP relocation for the
+     symbol (pointing to the first slot, the relocation fills in
+     both).  The value is a 32-bit-value, relative to the start of the
+     GOT.  Assembly syntax: "sym:GDGOTREL".  */
+  RELOC_NUMBER (R_CRIS_32_GOT_GD, 20)
+
+  /* Similar to R_CRIS_32_GOT_GD, but the value is a 16-bit unsigned
+     number, limiting access to 65536/4 global symbols per module (or
+     65536/8 thread variables; loosely speaking G*4+T*8 < 65536, where
+     T is the number of thread variables and G is the number of other
+     external global variables and functions).  Assembly syntax:
+     "sym:GDGOTREL16".  */
+  RELOC_NUMBER (R_CRIS_16_GOT_GD, 21)
+
+  /* Similar to R_CRIS_32_GOT_GD, but the value is the absolute
+     address of the GOT entry.  Disallowed in DSOs created with
+     -shared.  Assembly syntax: "sym:GD".  */
+  RELOC_NUMBER (R_CRIS_32_GD, 22)
+
+  /* A linker-generated-only relocation, instructing the dynamic
+     linker to fill in the module ID and module-relative-TLS-block
+     offset of the symbol in question, used for GOT entries.  Note
+     that this relocation instructs to fill in two 32-bit values.  */
+  RELOC_NUMBER (R_CRIS_DTP, 23)
+
+  /* An assembler-generated-only relocation, instructing the linker to
+     reserve the first two GOT slots, and attach the R_CRIS_DTPMOD
+     relocation(*) for the module to the first slot, the second
+     containing zero.  The value is 32 bits, the offset from the start
+     of the TLS block of the module to the thread-local symbol
+     mentioned in the relocation.  This relocation must only be applied
+     to module-local symbols.  Assembly syntax: "expr:DTPREL".  */
+  RELOC_NUMBER (R_CRIS_32_DTPREL, 24)
+
+  /* Similar to R_CRIS_32_DTPREL, but the value is a 16-bit signed
+     number, limiting the size of thread-variables of the DSO to 32768
+     bytes.  (Note: matches both model 1 and 2 and allows use of addo.w
+     as the instruction where this relocation is used.)  Assembly
+     syntax: "expr:DTPREL16".  */
+  RELOC_NUMBER (R_CRIS_16_DTPREL, 25)
+
+  /* An assembler-generated-only relocation, instructing the linker to
+     reserve a GOT slot and attach the R_CRIS_32_TPREL relocation for
+     the symbol in question.  The value is 32 bits, which is the
+     GOT-relative offset of the slot.  Assembly syntax:
+     "sym:TPOFFGOT".  */
+  RELOC_NUMBER (R_CRIS_32_GOT_TPREL, 26)
+
+  /* Similar to R_CRIS_32_TPREL, but the value is a 16-bit positive
+     number, limiting the number of thread- and global variables of
+     the DSO to 32768/4.  Assembly syntax: "sym:TPOFFGOT16".  */
+  RELOC_NUMBER (R_CRIS_16_GOT_TPREL, 27)
+
+  /* An assembler- and linker-generated relocation, instructing to
+     resolve the symbol in question yielding the TLS offset of the
+     thread variable; relative to the module's TLS data if in a DSO,
+     but relative to the executable's thread data if in an
+     executable. Not allowed as input when generating a DSO.  Assembly
+     syntax: "expr:TPOFF".  */
+  RELOC_NUMBER (R_CRIS_32_TPREL, 28)
+
+  /* Similar to R_CRIS_32_TPREL, but only applicable to executables
+     compiled with -msmall-tls. Not allowed in a DSO. The value is a
+     16-bit signed number, limiting the size of thread-variables of
+     the executable to 32768 bytes. (Note: being signed makes it match
+     both model 1 and 2 and allows use of addo.w as the instruction
+     where this relocation is applied.)  Assembly syntax:
+     "expr:TPOFF16".  */
+  RELOC_NUMBER (R_CRIS_16_TPREL, 29)
+
+  /* A linker-generated-only relocation, instructing the dynamic
+     linker to fill in the current module ID, used for GOT entries
+     (always the fourth one).  */
+  RELOC_NUMBER (R_CRIS_DTPMOD, 30)
+
   /* No other relocs must be visible outside the assembler.  */
 
 END_RELOC_NUMBERS (R_CRIS_max)
diff --git a/include/elf/dwarf2.h b/include/elf/dwarf2.h
index 648658d..f8d010b 100644
--- a/include/elf/dwarf2.h
+++ b/include/elf/dwarf2.h
@@ -544,6 +544,7 @@
     /* GNU extensions.  */
     DW_OP_GNU_push_tls_address = 0xe0,
     DW_OP_GNU_uninit     = 0xf0,
+    DW_OP_GNU_encoded_addr = 0xf1,
     /* HP extensions.  */
     DW_OP_HP_unknown     = 0xe0, /* Ouch, the same as GNU_push_tls_address.  */
     DW_OP_HP_is_value    = 0xe1,
diff --git a/include/elf/ppc.h b/include/elf/ppc.h
index 95cccce..a0c16f1 100644
--- a/include/elf/ppc.h
+++ b/include/elf/ppc.h
@@ -186,6 +186,11 @@
      registers, 3 for SPE registers; 0 for not tagged or not using any
      ABIs affected by the differences.  */
   Tag_GNU_Power_ABI_Vector = 8,
+
+  /* Value 1 for ABIs using r3/r4 for returning structures <= 8 bytes,
+     2 for ABIs using memory; 0 for not tagged or not using any ABIs
+     affected by the differences.  */
+  Tag_GNU_Power_ABI_Struct_Return = 12
 };
 
 #endif /* _ELF_PPC_H */
diff --git a/include/obstack.h b/include/obstack.h
index 88c2a26..4aec3a4 100644
--- a/include/obstack.h
+++ b/include/obstack.h
@@ -1,6 +1,6 @@
 /* obstack.h - object stack macros
    Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004, 2005
+   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
    Free Software Foundation, Inc.
 
 
@@ -527,7 +527,7 @@
     > (h)->chunk_limit - (char *) (h)->chunk)				\
    ? ((h)->next_free = (h)->chunk_limit) : 0),				\
   (h)->object_base = (h)->next_free,					\
-  __INT_TO_PTR ((h)->temp))
+  (void *) __INT_TO_PTR ((h)->temp))
 
 # define obstack_free(h,obj)						\
 ( (h)->temp = (char *) (obj) - (char *) (h)->chunk,			\
diff --git a/include/plugin-api.h b/include/plugin-api.h
new file mode 100644
index 0000000..45b5820
--- /dev/null
+++ b/include/plugin-api.h
@@ -0,0 +1,242 @@
+/* plugin-api.h -- External linker plugin API.  */
+
+/* Copyright 2008 Free Software Foundation, Inc.
+   Written by Cary Coutant <ccoutant@google.com>.
+
+   This file is part of binutils.
+
+   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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
+
+/* This file defines the interface for writing a linker plugin, which is
+   described at < http://gcc.gnu.org/wiki/whopr/driver >.  */
+
+#ifndef PLUGIN_API_H
+#define PLUGIN_API_H
+
+#include <stdint.h>
+#include <sys/types.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* Status code returned by most API routines.  */
+
+enum ld_plugin_status
+{
+  LDPS_OK = 0,
+  LDPS_NO_SYMS,         /* Attempt to get symbols that haven't been added. */
+  LDPS_ERR
+  /* Additional Error codes TBD.  */
+};
+
+/* The version of the API specification.  */
+
+enum ld_plugin_api_version
+{
+  LD_PLUGIN_API_VERSION = 1
+};
+
+/* The type of output file being generated by the linker.  */
+
+enum ld_plugin_output_file_type
+{
+  LDPO_REL,
+  LDPO_EXEC,
+  LDPO_DYN
+};
+
+/* An input file managed by the plugin library.  */
+
+struct ld_plugin_input_file
+{
+  const char *name;
+  int fd;
+  off_t offset;
+  off_t filesize;
+  void *handle;
+};
+
+/* A symbol belonging to an input file managed by the plugin library.  */
+
+struct ld_plugin_symbol
+{
+  char *name;
+  char *version;
+  int def;
+  int visibility;
+  uint64_t size;
+  char *comdat_key;
+  int resolution;
+};
+
+/* Whether the symbol is a definition, reference, or common, weak or not.  */
+
+enum ld_plugin_symbol_kind
+{
+  LDPK_DEF,
+  LDPK_WEAKDEF,
+  LDPK_UNDEF,
+  LDPK_WEAKUNDEF,
+  LDPK_COMMON
+};
+
+/* The visibility of the symbol.  */
+
+enum ld_plugin_symbol_visibility
+{
+  LDPV_DEFAULT,
+  LDPV_PROTECTED,
+  LDPV_INTERNAL,
+  LDPV_HIDDEN
+};
+
+/* How a symbol is resolved.  */
+
+enum ld_plugin_symbol_resolution
+{
+  LDPR_UNKNOWN = 0,
+  LDPR_UNDEF,
+  LDPR_PREVAILING_DEF,
+  LDPR_PREVAILING_DEF_IRONLY,
+  LDPR_PREEMPTED_REG,
+  LDPR_PREEMPTED_IR,
+  LDPR_RESOLVED_IR,
+  LDPR_RESOLVED_EXEC,
+  LDPR_RESOLVED_DYN
+};
+
+/* The plugin library's "claim file" handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_claim_file_handler) (
+  const struct ld_plugin_input_file *file, int *claimed);
+
+/* The plugin library's "all symbols read" handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_all_symbols_read_handler) (void);
+
+/* The plugin library's cleanup handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_cleanup_handler) (void);
+
+/* The linker's interface for registering the "claim file" handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_register_claim_file) (ld_plugin_claim_file_handler handler);
+
+/* The linker's interface for registering the "all symbols read" handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_register_all_symbols_read) (
+  ld_plugin_all_symbols_read_handler handler);
+
+/* The linker's interface for registering the cleanup handler.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_register_cleanup) (ld_plugin_cleanup_handler handler);
+
+/* The linker's interface for adding symbols from a claimed input file.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_add_symbols) (void *handle, int nsyms,
+                          const struct ld_plugin_symbol *syms);
+
+/* The linker's interface for retrieving symbol resolution information.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_get_symbols) (const void *handle, int nsyms,
+                          struct ld_plugin_symbol *syms);
+
+/* The linker's interface for adding a compiled input file.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_add_input_file) (char *pathname);
+
+/* The linker's interface for issuing a warning or error message.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_message) (int level, char *format, ...);
+
+enum ld_plugin_level
+{
+  LDPL_INFO,
+  LDPL_WARNING,
+  LDPL_ERROR,
+  LDPL_FATAL
+};
+
+/* Values for the tv_tag field of the transfer vector.  */
+
+enum ld_plugin_tag
+{
+  LDPT_NULL = 0,
+  LDPT_API_VERSION,
+  LDPT_GOLD_VERSION,
+  LDPT_LINKER_OUTPUT,
+  LDPT_OPTION,
+  LDPT_REGISTER_CLAIM_FILE_HOOK,
+  LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK,
+  LDPT_REGISTER_CLEANUP_HOOK,
+  LDPT_ADD_SYMBOLS,
+  LDPT_GET_SYMBOLS,
+  LDPT_ADD_INPUT_FILE,
+  LDPT_MESSAGE
+};
+
+/* The plugin transfer vector.  */
+
+struct ld_plugin_tv
+{
+  enum ld_plugin_tag tv_tag;
+  union
+  {
+    int tv_val;
+    const char *tv_string;
+    ld_plugin_register_claim_file tv_register_claim_file;
+    ld_plugin_register_all_symbols_read tv_register_all_symbols_read;
+    ld_plugin_register_cleanup tv_register_cleanup;
+    ld_plugin_add_symbols tv_add_symbols;
+    ld_plugin_get_symbols tv_get_symbols;
+    ld_plugin_add_input_file tv_add_input_file;
+    ld_plugin_message tv_message;
+  } tv_u;
+};
+
+/* The plugin library's "onload" entry point.  */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_onload) (struct ld_plugin_tv *tv);
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif /* !defined(PLUGIN_API_H) */
diff --git a/ld/ChangeLog b/ld/ChangeLog
index df1510b..3fec7a5 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,178 @@
+2008-10-25  Nick Clifton  <nickc@redhat.com>
+
+	PR 6945
+	* ldlang.c (lang_size_sections_1): Do not update the VMAs of
+	output sections when performing a relocatable link on COFF
+	objects.
+
+2008-10-22  Nick Clifton  <nickc@redhat.com>
+
+	* emultempl/armelf.em (arm_elf_after_open): Move check for using a
+	non-arm output target from here...
+	(arm_elf_create_output_section_statements): ... to here, so that
+	the check is made at the earliest possible opportunity.
+
+2008-10-22  Alan Modra  <amodra@bigpond.net.au>
+
+	* emulparams/elf32_i960.sh (TEMPLATE_NAME): "generic", not "elf32".
+	(EXTRA_EM_FILE): Define.
+
+2008-10-22  Alan Modra  <amodra@bigpond.net.au>
+
+	* scripttempl/elf.sc (NO_REL_RELOCS, NO_RELA_RELOCS, NON_ALLOC_DYN): 
+	Handle these defines.
+	* emulparams/criself.sh, * emulparams/crislinux.sh,
+	* emulparams/elf32am33lin.sh, * emulparams/elf32fr30.sh,
+	* emulparams/elf32_i860.sh, * emulparams/elf32ip2k.sh,
+	* emulparams/elf32mcore.sh, * emulparams/elf32ppccommon.sh,
+	* emulparams/elf32ppcwindiss.sh, * emulparams/elf32_sparc.sh,
+	* emulparams/elf32_spu.sh, * emulparams/elf32vax.sh,
+	* emulparams/elf64alpha.sh, * emulparams/elf64mmix.sh,
+	* emulparams/elf64ppc.sh, * emulparams/elf64_s390.sh,
+	* emulparams/elf64_sparc.sh, * emulparams/elf_s390.sh,
+	* emulparams/elf_x86_64.sh, * emulparams/h8300elf.sh,
+	* emulparams/hppa64linux.sh, * emulparams/hppalinux.sh,
+	* emulparams/m68kelf.sh, * emulparams/mn10200.sh,
+	* emulparams/pjelf.sh, * emulparams/ppclynx.sh,
+	* emulparams/shelf32.sh, * emulparams/shelf_nto.sh,
+	* emulparams/shelf.sh, * emulparams/shelf_vxworks.sh,
+	* emulparams/shlelf32_linux.sh, * emulparams/shlelf_linux.sh,
+	* emulparams/shlelf_nto.sh (NO_REL_RELOCS): Set.
+	* emulparams/arcelf.sh, * emulparams/elf32_i960.sh,
+	* emulparams/elf32openrisc.sh, * emulparams/elf_i386_be.sh,
+	* emulparams/elf_i386_ldso.sh, * emulparams/elf_i386.sh,
+	* emulparams/elf_i386_vxworks.sh, * emulparams/i386lynx.sh,
+	* emulparams/i386moss.sh, * emulparams/i386nto.sh,
+	* emulparams/or32elf.sh, * emulparams/scoreelf.sh (NO_RELA_RELOCS): Set.
+
+2008-10-22  Alan Modra  <amodra@bigpond.net.au>
+
+	* ldlang.c (lang_output_section_find_by_flags): Handle non-alloc
+	sections.
+	* emultempl/elf32.em (enum orphan_save_index): Add orphan_nonalloc.
+	(hold): Likewise.
+	(gld${EMULATION_NAME}_place_orphan): Handle non-alloc orphans.
+
+2008-10-22  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+	* emultempl/armelf.em (PARSE_AND_LIST_OPTIONS): Correct typo in
+	help text of --be8.
+
+2008-10-20  Alan Modra  <amodra@bigpond.net.au>
+
+	* ldemul.h (ldemul_place_orphan): Update prototype.
+	(struct ld_emulation_xfer_struct <place_orphan>): Likewise.
+	* ldemul.c (ldemul_place_orphan): Return pointer to output
+	section statement.
+	* emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Likewise.
+	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
+	* emultempl/mmo.em (mmo_place_orphan): Likewise.
+	* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
+	* emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
+
+2008-10-08  Nick Clifton  <nickc@redhat.com>
+
+	* configure.in (ALL_LINGUAS): Add "id".
+	* configure: Regenerate.
+	* po/id.po: New Indonesian translation.
+
+2008-10-05  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6943
+	* scripttempl/avr.sc (.bss): Set lma when relocating.
+	(.bss, .noinit): No need to set vma when relocating.
+	(.text, .bss, ,noinit): Set vma to zero when not relocating.
+
+2008-10-04  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6931
+	* ldemul.c (ldemul_place_orphan): Add "constraint" param.
+	* ldemul.h (ldemul_place_orphan): Update prototype.
+	(struct ld_emulation_xfer_struct <place_orphan>): Likewise add param.
+	* ldlang.c (unique_section_p): Make static.
+	(lang_output_section_statement_lookup): Optimise creation of SPECIAL
+	sections.
+	(lang_insert_orphan): Add "constraint" param.  Pass to
+	lang_enter_output_section_statement.
+	(init_os): Don't use an existing bfd section for SPECIAL sections.
+	(lang_place_orphans): Don't rename unique output sections, instead
+	mark their output section statements SPECIAL.
+	* ldlang.h (lang_insert_orphan): Update prototype.
+	(unique_section_p): Delete.
+	* emultempl/beos.em (place_orphan): Add "constraint" param.
+	* emultempl/elf32.em (place_orphan): Likewise.  Don't match existing
+	output sections if set.
+	* emultempl/pe.em (place_orphan): Likewise.
+	* emultempl/pep.em (place_orphan): Likewise.
+	* emultempl/mmo.em (mmo_place_orphan): Update.
+	* emultempl/spuelf.em (spu_place_special_section): Update.
+
+2008-10-03  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6931
+	* ldemul.c (ldemul_place_orphan): Add "name" param.
+	* ldemul.h (ldemul_place_orphan): Update prototype.
+	(struct ld_emulation_xfer_struct <place_orphan>): Likewise.
+	* ldlang.c (lang_place_orphans): Generate unique section names here..
+	* emultempl/elf32.em (place_orphan): ..rather than here.  Don't
+	directly use an existing output section statement that has no
+	bfd section.
+	* emultempl/pe.em (place_orphan): Likewise.
+	* emultempl/pep.em (place_orphan): Likewise.
+	* emultempl/beos.em (place_orphan): Adjust.
+	* emultempl/spuelf.em (spu_place_special_section): Adjust
+	place_orphan call.
+	* emultempl/genelf.em (gld${EMULATION_NAME}_after_open): New function.
+	(LDEMUL_AFTER_OPEN): Define.
+
+2008-09-30  Joseph Myers  <joseph@codesourcery.com>
+
+	* emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd
+	and .rela.branch_lt.
+
+2008-09-30  Alan Modra  <amodra@bigpond.net.au>
+
+	* Makefile.am: Run "make dep-am".
+	* Makefile.in: Regenerate.
+
+2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
+	    Steve Ellcey  <sje@cup.hp.com>
+
+	* configure: Regenerate for new libtool.
+	* aclocal.m4: Ditto.
+	* Makefile.in: Ditto.
+
+2008-09-29  Kai Tietz  <kai.tietz@onevision.com>
+
+	* pe-dll.c (make_import_fixup_entry): Make sure reloc is addend.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* po/vi.po: Updated Vietnamese translation.
+
+2008-09-25  Alan Modra  <amodra@bigpond.net.au>
+
+	* ldexp.c (fold_binary): Evaluate rhs when lhs not valid.
+
+2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* configure.in: Call AC_SYS_LARGEFILE.
+	* config.in: Regenerate.
+	* configure: Regenerate.
+
+2008-09-09  Peter Rosin  <peda@lysator.liu.se>  (tiny change)
+
+	* emultempl/pe.em (pe_find_data_imports): Add trailing newline
+	to warning message.
+	* emultempl/pep.em (pep_find_data_imports): Likewise.
+
+2008-09-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+	2008-09-07  Alan Modra  <amodra@bigpond.net.au>
+
+	* emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Updated.
+	* emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Likewise.
+
 2008-09-08  Tristan Gingold  <gingold@adacore.com>
 
 	* NEWS: Add a marker for the 2.19 features.
@@ -350,7 +525,7 @@
 	* NEWS: Mention new feature.
 
 2008-05-28  Christophe Lyon  <christophe.lyon@st.com>
-	
+
 	* ld.texinfo: State that farcalls stubs are supported for ARM-EABI
 	only.
 
@@ -391,7 +566,7 @@
 	(PARSE_AND_LIST_OPTIONS): Define shell variable.  Print help string
 	for --got option.
 	(PARSE_AND_LIST_ARGS_CASES): Define shell variable.  Handle --got
-	option.	
+	option.
 	* ld.texinfo: Document --got=<type> option.
 	* gen-doc.texi: Add M68K.
 	* NEWS: Mention the new feature.
@@ -411,7 +586,7 @@
 	* NEWS: Mention the support for long function calls.
 
 2008-05-15  Christophe Lyon  <christophe.lyon@st.com>
-	
+
 	* emultempl/armelf.em (build_section_lists): New function.
 	(stub_file): Define.
 	(need_laying_out): Define.
diff --git a/ld/Makefile.am b/ld/Makefile.am
index 1584a24..0093c88 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -2021,7 +2021,7 @@
   $(INCDIR)/demangle.h $(INCDIR)/libiberty.h ld.h ldmisc.h \
   ldexp.h ldlang.h ldgram.h ldlex.h ldmain.h ldfile.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
+  $(INCDIR)/elf/internal.h
 ldver.o: ldver.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   ../bfd/bfdver.h ld.h ldver.h ldexp.h ldlang.h ldfile.h \
@@ -2051,14 +2051,13 @@
   $(INCDIR)/bfdlink.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/safe-ctype.h ld.h ldexp.h ldlang.h ldwrite.h \
   ldmisc.h ldgram.h ldmain.h ldfile.h ldemul.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h deffile.h pe-dll.h
+  $(BFDDIR)/libcoff.h deffile.h pe-dll.h
 pep-dll.o: pep-dll.c pe-dll.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/safe-ctype.h ld.h ldexp.h ldlang.h ldwrite.h \
   ldmisc.h ldgram.h ldmain.h ldfile.h ldemul.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h deffile.h pe-dll.h \
-  pep-dll.h
+  $(BFDDIR)/libcoff.h deffile.h pe-dll.h pep-dll.h
 ldgram.o: ldgram.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/bfdlink.h ld.h ldexp.h ldver.h ldlang.h ldfile.h \
diff --git a/ld/Makefile.in b/ld/Makefile.in
index 9b087dd..f2e1030 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -66,7 +66,7 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -149,6 +149,7 @@
 DATADIRNAME = @DATADIRNAME@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -195,6 +196,7 @@
 # which may have the form: LIB_PATH=/lib:/usr/local/lib.  This can be set
 # when the linker is configured via the --with-lib-path configure switch.
 LIB_PATH = @LIB_PATH@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -206,8 +208,12 @@
 MSGMERGE = @MSGMERGE@
 NATIVE_LIB_DIRS = @NATIVE_LIB_DIRS@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -234,7 +240,13 @@
 YACC = `if [ -f ../bison/bison ]; then echo ../bison/bison -y -L$(srcdir)/../bison/; else echo @YACC@; fi`
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@@ -2812,7 +2824,7 @@
   $(INCDIR)/demangle.h $(INCDIR)/libiberty.h ld.h ldmisc.h \
   ldexp.h ldlang.h ldgram.h ldlex.h ldmain.h ldfile.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
+  $(INCDIR)/elf/internal.h
 ldver.o: ldver.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   ../bfd/bfdver.h ld.h ldver.h ldexp.h ldlang.h ldfile.h \
@@ -2842,14 +2854,13 @@
   $(INCDIR)/bfdlink.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/safe-ctype.h ld.h ldexp.h ldlang.h ldwrite.h \
   ldmisc.h ldgram.h ldmain.h ldfile.h ldemul.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h deffile.h pe-dll.h
+  $(BFDDIR)/libcoff.h deffile.h pe-dll.h
 pep-dll.o: pep-dll.c pe-dll.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/safe-ctype.h ld.h ldexp.h ldlang.h ldwrite.h \
   ldmisc.h ldgram.h ldmain.h ldfile.h ldemul.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h deffile.h pe-dll.h \
-  pep-dll.h
+  $(BFDDIR)/libcoff.h deffile.h pe-dll.h pep-dll.h
 ldgram.o: ldgram.c sysdep.h config.h $(INCDIR)/fopen-same.h \
   ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/bfdlink.h ld.h ldexp.h ldver.h ldlang.h ldfile.h \
diff --git a/ld/aclocal.m4 b/ld/aclocal.m4
index 4317ce3..95c2a5c 100644
--- a/ld/aclocal.m4
+++ b/ld/aclocal.m4
@@ -892,3 +892,4 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
diff --git a/ld/config.in b/ld/config.in
index 5321a12..e3d4f71 100644
--- a/ld/config.in
+++ b/ld/config.in
@@ -143,11 +143,17 @@
    `char[]'. */
 #undef YYTEXT_POINTER
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
 /* Enable GNU extensions on systems that have them.  */
 #ifndef _GNU_SOURCE
 # undef _GNU_SOURCE
 #endif
 
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to 1 if on MINIX. */
 #undef _MINIX
 
diff --git a/ld/configure b/ld/configure
index c0ad08b..d828eef 100755
--- a/ld/configure
+++ b/ld/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE use_sysroot TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE WARN_CFLAGS NO_WERROR CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE YACC LEX LEXLIB LEX_OUTPUT_ROOT MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE HDEFINES HOSTING_CRT0 HOSTING_LIBS NATIVE_LIB_DIRS STRINGIFY EMUL EMULATION_OFILES EMUL_EXTRA_OFILES LIB_PATH EMULATION_LIBPATH TESTBFDLIB datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE use_sysroot TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE WARN_CFLAGS NO_WERROR CPP EGREP LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP AR ac_ct_AR RANLIB ac_ct_RANLIB lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE YACC LEX LEXLIB LEX_OUTPUT_ROOT MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT GENINSRC_NEVER_TRUE GENINSRC_NEVER_FALSE HDEFINES HOSTING_CRT0 HOSTING_LIBS NATIVE_LIB_DIRS STRINGIFY EMUL EMULATION_OFILES EMUL_EXTRA_OFILES LIB_PATH EMULATION_LIBPATH TESTBFDLIB datarootdir docdir htmldir LIBOBJS LTLIBOBJS'
 ac_subst_files='TDIRS'
 ac_pwd=`pwd`
 
@@ -1008,6 +1008,7 @@
                           multigot)
   --enable-werror         treat compile warnings as errors
   --enable-build-warnings enable build-time compiler warnings
+  --disable-largefile     omit support for large files
   --enable-shared[=PKGS]
                           build shared libraries [default=yes]
   --enable-static[=PKGS]
@@ -4932,6 +4933,370 @@
 _ACEOF
 
 
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
@@ -5024,10 +5389,17 @@
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -5042,124 +5414,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi;
-
-
-
-
-
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5380,7 +5634,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5542,13 +5795,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5545: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5798: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5548: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5801: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5551: output\"" >&5)
+  (eval echo "\"\$as_me:5804: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5594,7 +5847,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5655,8 +5908,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5703,7 +5956,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5714,7 +5966,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5794,6 +6048,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5848,6 +6191,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -6270,7 +6619,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6350,7 +6699,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6394,6 +6743,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6533,7 +6883,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6572,6 +6922,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6603,7 +6958,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6606 "configure"' > conftest.$ac_ext
+  echo '#line 6961 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6778,7 +7133,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6790,6 +7149,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6852,6 +7764,128 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+            # Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_shared=yes ;;
+    no) enable_shared=no ;;
+    *)
+      enable_shared=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_shared=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_shared=yes
+fi;
+
+
+
+
+
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -7198,7 +8232,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -7230,11 +8264,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7233: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8267: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7237: \$? = $ac_status" >&5
+   echo "$as_me:8271: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7284,19 +8318,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7311,10 +8351,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7363,18 +8404,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7404,11 +8435,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7421,6 +8466,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7536,10 +8587,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7552,27 +8603,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7555: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8606: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7559: \$? = $ac_status" >&5
+   echo "$as_me:8610: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7595,10 +8646,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7611,20 +8662,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7657,11 +8708,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7660: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8711: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7664: \$? = $ac_status" >&5
+   echo "$as_me:8715: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7712,11 +8763,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7715: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8766: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7719: \$? = $ac_status" >&5
+   echo "$as_me:8770: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7806,16 +8857,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7877,19 +8929,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7903,7 +8954,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7954,6 +9005,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7968,6 +9020,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7976,8 +9034,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7987,6 +9043,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -8182,6 +9254,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8334,20 +9407,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8369,73 +9447,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8517,7 +9552,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8635,25 +9670,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -9092,8 +10131,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -9219,13 +10258,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -9248,14 +10292,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -9278,7 +10322,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9544,7 +10588,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9565,7 +10609,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9749,7 +10793,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9775,6 +10819,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9919,7 +10970,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -10166,7 +11217,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10460,7 +11511,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10509,7 +11560,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10512 "configure"
+#line 11563 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10550,10 +11601,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10569,7 +11616,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10609,7 +11656,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10612 "configure"
+#line 11659 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10650,10 +11697,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10669,7 +11712,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10841,7 +11884,7 @@
 
 
 
-ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi"
+ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id"
 # If we haven't got the data from the intl directory,
 # assume NLS is disabled.
 USE_NLS=no
@@ -14091,6 +15134,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14107,6 +15151,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14117,6 +15162,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -14190,6 +15240,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -14202,6 +15253,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -14210,6 +15262,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -14469,11 +15526,23 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@AR@,$AR,;t t
 s,@ac_ct_AR@,$ac_ct_AR,;t t
 s,@RANLIB@,$RANLIB,;t t
 s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@USE_NLS@,$USE_NLS,;t t
 s,@LIBINTL@,$LIBINTL,;t t
 s,@LIBINTL_DEP@,$LIBINTL_DEP,;t t
@@ -15214,36 +16283,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -15320,6 +16389,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -15353,6 +16425,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -15368,6 +16443,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -15608,6 +16698,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -15625,6 +16716,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -15654,10 +16766,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -15678,6 +16811,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -15710,6 +16844,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -15734,6 +16888,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/ld/configure.in b/ld/configure.in
index 8ec534f..d466e3d 100644
--- a/ld/configure.in
+++ b/ld/configure.in
@@ -109,11 +109,12 @@
 AC_PROG_CC
 AC_GNU_SOURCE
 AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
 AC_PROG_INSTALL
 
 LT_INIT
 
-ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi"
+ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id"
 ZW_GNU_GETTEXT_SISTER_DIR
 AM_PO_SUBDIRS
 
diff --git a/ld/emulparams/arcelf.sh b/ld/emulparams/arcelf.sh
index 31db4a9..cd334d6 100644
--- a/ld/emulparams/arcelf.sh
+++ b/ld/emulparams/arcelf.sh
@@ -4,6 +4,7 @@
 OUTPUT_FORMAT="elf32-littlearc"
 LITTLE_OUTPUT_FORMAT="elf32-littlearc"
 BIG_OUTPUT_FORMAT="elf32-bigarc"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x0
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=arc
diff --git a/ld/emulparams/criself.sh b/ld/emulparams/criself.sh
index 1d374ae..f709a1b 100644
--- a/ld/emulparams/criself.sh
+++ b/ld/emulparams/criself.sh
@@ -5,6 +5,7 @@
 
 # Symbols have underscore prepended.
 OUTPUT_FORMAT="elf32-us-cris"
+NO_REL_RELOCS=yes
 ARCH=cris
 MAXPAGESIZE=32
 ENTRY=__start
diff --git a/ld/emulparams/crislinux.sh b/ld/emulparams/crislinux.sh
index e41024c..8a1a5b8 100644
--- a/ld/emulparams/crislinux.sh
+++ b/ld/emulparams/crislinux.sh
@@ -2,6 +2,7 @@
 MACHINE=
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-cris"
+NO_REL_RELOCS=yes
 ARCH=cris
 TEMPLATE_NAME=elf32
 
diff --git a/ld/emulparams/elf32_i860.sh b/ld/emulparams/elf32_i860.sh
index 589067f..482e3d1 100644
--- a/ld/emulparams/elf32_i860.sh
+++ b/ld/emulparams/elf32_i860.sh
@@ -5,6 +5,7 @@
 OUTPUT_FORMAT="elf32-i860-little"
 BIG_OUTPUT_FORMAT="elf32-i860"
 LITTLE_OUTPUT_FORMAT="elf32-i860-little"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0
 PAGE_SIZE=0x1000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/elf32_i960.sh b/ld/emulparams/elf32_i960.sh
index 1ef7292..dd05a8f 100644
--- a/ld/emulparams/elf32_i960.sh
+++ b/ld/emulparams/elf32_i960.sh
@@ -1,6 +1,8 @@
 SCRIPT_NAME=elf
-TEMPLATE_NAME=elf32
+TEMPLATE_NAME=generic
+EXTRA_EM_FILE=genelf
 OUTPUT_FORMAT="elf32-i960"
+NO_RELA_RELOCS=yes
 ARCH=i960
 MACHINE=
 TEXT_START_ADDR=0
diff --git a/ld/emulparams/elf32_sparc.sh b/ld/emulparams/elf32_sparc.sh
index 3db6d88..aef813e 100644
--- a/ld/emulparams/elf32_sparc.sh
+++ b/ld/emulparams/elf32_sparc.sh
@@ -3,6 +3,7 @@
 
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-sparc"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf32_spu.sh b/ld/emulparams/elf32_spu.sh
index 8248d5d..1ed58c3 100644
--- a/ld/emulparams/elf32_spu.sh
+++ b/ld/emulparams/elf32_spu.sh
@@ -2,6 +2,7 @@
 TEMPLATE_NAME=elf32
 EXTRA_EM_FILE=spuelf
 OUTPUT_FORMAT="elf32-spu"
+NO_REL_RELOCS=yes
 ARCH=spu
 MACHINE=
 ALIGNMENT=16
diff --git a/ld/emulparams/elf32am33lin.sh b/ld/emulparams/elf32am33lin.sh
index 2f8b962..b34d2b8 100644
--- a/ld/emulparams/elf32am33lin.sh
+++ b/ld/emulparams/elf32am33lin.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-am33lin"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x8000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=mn10300
diff --git a/ld/emulparams/elf32fr30.sh b/ld/emulparams/elf32fr30.sh
index d078155..1764a32 100755
--- a/ld/emulparams/elf32fr30.sh
+++ b/ld/emulparams/elf32fr30.sh
@@ -3,6 +3,7 @@
 TEMPLATE_NAME=generic
 EXTRA_EM_FILE=genelf
 OUTPUT_FORMAT="elf32-fr30"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000
 ARCH=fr30
 MAXPAGESIZE=256
diff --git a/ld/emulparams/elf32ip2k.sh b/ld/emulparams/elf32ip2k.sh
index 17fb7ab..0db227f 100644
--- a/ld/emulparams/elf32ip2k.sh
+++ b/ld/emulparams/elf32ip2k.sh
@@ -2,6 +2,7 @@
 MACHINE=
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-ip2k"
+NO_REL_RELOCS=yes
 # See also `include/elf/ip2k.h'
 DATA_ADDR=0x01000100
 TEXT_START_ADDR=0x02010000
diff --git a/ld/emulparams/elf32mcore.sh b/ld/emulparams/elf32mcore.sh
index 31d65dc..6047950 100644
--- a/ld/emulparams/elf32mcore.sh
+++ b/ld/emulparams/elf32mcore.sh
@@ -2,6 +2,7 @@
 OUTPUT_FORMAT="elf32-mcore-little"
 BIG_OUTPUT_FORMAT="elf32-mcore-big"
 LITTLE_OUTPUT_FORMAT="elf32-mcore-little"
+NO_REL_RELOCS=yes
 PAGE_SIZE=0x1000
 TARGET_PAGE_SIZE=0x400
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/elf32openrisc.sh b/ld/emulparams/elf32openrisc.sh
index 53e88dd..bbe9a3e 100755
--- a/ld/emulparams/elf32openrisc.sh
+++ b/ld/emulparams/elf32openrisc.sh
@@ -1,6 +1,7 @@
 MACHINE=
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-openrisc"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x10000
 ARCH=openrisc
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/elf32ppccommon.sh b/ld/emulparams/elf32ppccommon.sh
index 1a12890..15cb3b1 100644
--- a/ld/emulparams/elf32ppccommon.sh
+++ b/ld/emulparams/elf32ppccommon.sh
@@ -5,6 +5,7 @@
 GENERATE_PIE_SCRIPT=yes
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-powerpc"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x01800000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf32ppcwindiss.sh b/ld/emulparams/elf32ppcwindiss.sh
index d217de9..b40d782 100644
--- a/ld/emulparams/elf32ppcwindiss.sh
+++ b/ld/emulparams/elf32ppcwindiss.sh
@@ -1,6 +1,7 @@
 TEMPLATE_NAME=elf32
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-powerpc"
+NO_REL_RELOCS=yes
 ARCH=powerpc
 MACHINE=
 EMBEDDED=yes
diff --git a/ld/emulparams/elf32vax.sh b/ld/emulparams/elf32vax.sh
index 4c6ef39..9ddc754 100644
--- a/ld/emulparams/elf32vax.sh
+++ b/ld/emulparams/elf32vax.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-vax"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000
 case ${LD_FLAG} in
     n|N)	TEXT_START_ADDR=0x1000 ;;
diff --git a/ld/emulparams/elf64_s390.sh b/ld/emulparams/elf64_s390.sh
index ede836c..ae8f26e 100644
--- a/ld/emulparams/elf64_s390.sh
+++ b/ld/emulparams/elf64_s390.sh
@@ -1,6 +1,7 @@
 SCRIPT_NAME=elf
 ELFSIZE=64
 OUTPUT_FORMAT="elf64-s390"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x80000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf64_sparc.sh b/ld/emulparams/elf64_sparc.sh
index 03cab9e..9397b87 100644
--- a/ld/emulparams/elf64_sparc.sh
+++ b/ld/emulparams/elf64_sparc.sh
@@ -2,6 +2,7 @@
 ELFSIZE=64
 TEMPLATE_NAME=elf32
 OUTPUT_FORMAT="elf64-sparc"
+NO_REL_RELOCS=yes
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
 ARCH="sparc:v9"
diff --git a/ld/emulparams/elf64alpha.sh b/ld/emulparams/elf64alpha.sh
index a42e75d..82f505d 100644
--- a/ld/emulparams/elf64alpha.sh
+++ b/ld/emulparams/elf64alpha.sh
@@ -4,6 +4,7 @@
 TEMPLATE_NAME=elf32
 EXTRA_EM_FILE=alphaelf
 OUTPUT_FORMAT="elf64-alpha"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR="0x120000000"
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf64mmix.sh b/ld/emulparams/elf64mmix.sh
index 7f867fb..787b50d 100644
--- a/ld/emulparams/elf64mmix.sh
+++ b/ld/emulparams/elf64mmix.sh
@@ -3,6 +3,7 @@
 ELFSIZE=64
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf64-mmix"
+NO_REL_RELOCS=yes
 ENTRY=_start.
 
 # Default to 0 as mmixal does.
diff --git a/ld/emulparams/elf64ppc.sh b/ld/emulparams/elf64ppc.sh
index 2fecba8..b9631b6 100644
--- a/ld/emulparams/elf64ppc.sh
+++ b/ld/emulparams/elf64ppc.sh
@@ -5,6 +5,7 @@
 GENERATE_PIE_SCRIPT=yes
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf64-powerpc"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000000
 #SEGMENT_SIZE=0x10000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
@@ -28,7 +29,9 @@
   .toc		0 : { *(.toc) }"
 fi
 OTHER_GOT_RELOC_SECTIONS="
-  .rela.toc	${RELOCATING-0} : { *(.rela.toc) }"
+  .rela.toc	${RELOCATING-0} : { *(.rela.toc) }
+  .rela.opd	${RELOCATING-0} : { *(.rela.opd) }
+  .rela.branch_lt	${RELOCATING-0} : { *(.rela.branch_lt) }"
 OTHER_READWRITE_SECTIONS="
   .toc1		${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.toc1) }
   .opd		${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { KEEP (*(.opd)) }
diff --git a/ld/emulparams/elf_i386.sh b/ld/emulparams/elf_i386.sh
index 908515a..05d31a8 100644
--- a/ld/emulparams/elf_i386.sh
+++ b/ld/emulparams/elf_i386.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x08048000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf_i386_be.sh b/ld/emulparams/elf_i386_be.sh
index b61738c..efe1a86 100644
--- a/ld/emulparams/elf_i386_be.sh
+++ b/ld/emulparams/elf_i386_be.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x80000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=i386
diff --git a/ld/emulparams/elf_i386_ldso.sh b/ld/emulparams/elf_i386_ldso.sh
index b4ac960..4b0d3fb 100644
--- a/ld/emulparams/elf_i386_ldso.sh
+++ b/ld/emulparams/elf_i386_ldso.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x08048000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=i386
diff --git a/ld/emulparams/elf_i386_vxworks.sh b/ld/emulparams/elf_i386_vxworks.sh
index 90a98b3..6933128 100644
--- a/ld/emulparams/elf_i386_vxworks.sh
+++ b/ld/emulparams/elf_i386_vxworks.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386-vxworks"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x08048000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf_s390.sh b/ld/emulparams/elf_s390.sh
index e252e8e..218558b 100644
--- a/ld/emulparams/elf_s390.sh
+++ b/ld/emulparams/elf_s390.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-s390"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x00400000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/elf_x86_64.sh b/ld/emulparams/elf_x86_64.sh
index cdd4119..4b24710 100644
--- a/ld/emulparams/elf_x86_64.sh
+++ b/ld/emulparams/elf_x86_64.sh
@@ -1,6 +1,7 @@
 SCRIPT_NAME=elf
 ELFSIZE=64
 OUTPUT_FORMAT="elf64-x86-64"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x400000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/h8300elf.sh b/ld/emulparams/h8300elf.sh
index fb4db40..38b8a36 100644
--- a/ld/emulparams/h8300elf.sh
+++ b/ld/emulparams/h8300elf.sh
@@ -3,6 +3,7 @@
 
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-h8300"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x100
 MAXPAGESIZE=2
 TARGET_PAGE_SIZE=128
diff --git a/ld/emulparams/hppa64linux.sh b/ld/emulparams/hppa64linux.sh
index 1af8e37..92939bf 100644
--- a/ld/emulparams/hppa64linux.sh
+++ b/ld/emulparams/hppa64linux.sh
@@ -5,6 +5,7 @@
 ELFSIZE=64
 # FIXME: this output format is for hpux.
 OUTPUT_FORMAT="elf64-hppa-linux"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000
 TARGET_PAGE_SIZE=0x10000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/hppalinux.sh b/ld/emulparams/hppalinux.sh
index 4c4f943..9fa4615 100644
--- a/ld/emulparams/hppalinux.sh
+++ b/ld/emulparams/hppalinux.sh
@@ -4,6 +4,7 @@
 SCRIPT_NAME=elf
 ELFSIZE=32
 OUTPUT_FORMAT="elf32-hppa-linux"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x10000
 TARGET_PAGE_SIZE=0x10000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/i386lynx.sh b/ld/emulparams/i386lynx.sh
index 6d9d9fe..93afb3d 100644
--- a/ld/emulparams/i386lynx.sh
+++ b/ld/emulparams/i386lynx.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 ENTRY=_main
 TEXT_BASE=0x0
 DYN_TEXT_BASE=0x00400000
diff --git a/ld/emulparams/i386moss.sh b/ld/emulparams/i386moss.sh
index 81161b7..095d85a 100644
--- a/ld/emulparams/i386moss.sh
+++ b/ld/emulparams/i386moss.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x00002000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=i386
diff --git a/ld/emulparams/i386nto.sh b/ld/emulparams/i386nto.sh
index 078289c..626f9c1 100644
--- a/ld/emulparams/i386nto.sh
+++ b/ld/emulparams/i386nto.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-i386"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x08048000
 TEXT_START_SYMBOLS='_btext = .;'
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/m68kelf.sh b/ld/emulparams/m68kelf.sh
index f8dab2b..66da648 100644
--- a/ld/emulparams/m68kelf.sh
+++ b/ld/emulparams/m68kelf.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-m68k"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x80000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/mn10200.sh b/ld/emulparams/mn10200.sh
index 74f48d0..9cec0b5 100644
--- a/ld/emulparams/mn10200.sh
+++ b/ld/emulparams/mn10200.sh
@@ -5,6 +5,7 @@
 TEMPLATE_NAME=generic
 EXTRA_EM_FILE=genelf
 OUTPUT_FORMAT="elf32-mn10200"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x0
 ARCH=mn10200
 MACHINE=
diff --git a/ld/emulparams/or32elf.sh b/ld/emulparams/or32elf.sh
index 5cb3208..5d85b04 100644
--- a/ld/emulparams/or32elf.sh
+++ b/ld/emulparams/or32elf.sh
@@ -2,6 +2,7 @@
 TEMPLATE_NAME=generic
 EXTRA_EM_FILE=genelf
 OUTPUT_FORMAT="elf32-or32"
+NO_RELA_RELOCS=yes
 TEXT_START_ADDR=0x1000000
 TARGET_PAGE_SIZE=0x1000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
diff --git a/ld/emulparams/pjelf.sh b/ld/emulparams/pjelf.sh
index e4d2fa5..37f0034 100644
--- a/ld/emulparams/pjelf.sh
+++ b/ld/emulparams/pjelf.sh
@@ -2,6 +2,7 @@
 TEMPLATE_NAME=generic
 EXTRA_EM_FILE=genelf
 OUTPUT_FORMAT="elf32-pj"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x1000000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=pj
diff --git a/ld/emulparams/ppclynx.sh b/ld/emulparams/ppclynx.sh
index 4203908..76aefd6 100644
--- a/ld/emulparams/ppclynx.sh
+++ b/ld/emulparams/ppclynx.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-powerpc"
+NO_REL_RELOCS=yes
 TEXT_BASE=0x00002000
 DYN_TEXT_BASE=0x00400000
 TEXT_START_ADDR="(DEFINED(_DYNAMIC) ? ${DYN_TEXT_BASE} : ${TEXT_BASE})"
diff --git a/ld/emulparams/scoreelf.sh b/ld/emulparams/scoreelf.sh
index 0ca5e56..dfb5aca 100644
--- a/ld/emulparams/scoreelf.sh
+++ b/ld/emulparams/scoreelf.sh
@@ -4,6 +4,7 @@
 OUTPUT_FORMAT="elf32-bigscore"
 BIG_OUTPUT_FORMAT="elf32-bigscore"
 LITTLE_OUTPUT_FORMAT="elf32-littlescore"
+NO_RELA_RELOCS=yes
 GROUP="-lm -lc -lglsim -lgcc -lstdc++"
 
 TEXT_START_ADDR=0x00000000
diff --git a/ld/emulparams/shelf.sh b/ld/emulparams/shelf.sh
index 6f66bf5..5757b81 100644
--- a/ld/emulparams/shelf.sh
+++ b/ld/emulparams/shelf.sh
@@ -3,6 +3,7 @@
 
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-sh"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x1000
 MAXPAGESIZE=128
 ARCH=sh
diff --git a/ld/emulparams/shelf32.sh b/ld/emulparams/shelf32.sh
index c72fadb..966bd30 100644
--- a/ld/emulparams/shelf32.sh
+++ b/ld/emulparams/shelf32.sh
@@ -2,6 +2,7 @@
 # sh[l]elf(32|64).sh parameter scripts.
 SCRIPT_NAME=elf
 OUTPUT_FORMAT=${OUTPUT_FORMAT-"elf32-sh64"}
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x1000
 MAXPAGESIZE=128
 ARCH=sh
diff --git a/ld/emulparams/shelf_nto.sh b/ld/emulparams/shelf_nto.sh
index 70a0610..c4d71aa 100644
--- a/ld/emulparams/shelf_nto.sh
+++ b/ld/emulparams/shelf_nto.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-sh"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x08040000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=sh
diff --git a/ld/emulparams/shelf_vxworks.sh b/ld/emulparams/shelf_vxworks.sh
index a87d529..77619cb 100644
--- a/ld/emulparams/shelf_vxworks.sh
+++ b/ld/emulparams/shelf_vxworks.sh
@@ -2,6 +2,7 @@
 # shlelf_vxworks.sh
 
 SCRIPT_NAME=elf
+NO_REL_RELOCS=yes
 BIG_OUTPUT_FORMAT="elf32-sh-vxworks"
 LITTLE_OUTPUT_FORMAT="elf32-shl-vxworks"
 OUTPUT_FORMAT="$BIG_OUTPUT_FORMAT"
diff --git a/ld/emulparams/shlelf32_linux.sh b/ld/emulparams/shlelf32_linux.sh
index ba32e79..81aea39 100644
--- a/ld/emulparams/shlelf32_linux.sh
+++ b/ld/emulparams/shlelf32_linux.sh
@@ -3,6 +3,7 @@
 
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-sh64-linux"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x400000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/shlelf_linux.sh b/ld/emulparams/shlelf_linux.sh
index f91bb52..95b6acc 100644
--- a/ld/emulparams/shlelf_linux.sh
+++ b/ld/emulparams/shlelf_linux.sh
@@ -3,6 +3,7 @@
 
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-sh-linux"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x400000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
diff --git a/ld/emulparams/shlelf_nto.sh b/ld/emulparams/shlelf_nto.sh
index c6c04f6..16f6508 100644
--- a/ld/emulparams/shlelf_nto.sh
+++ b/ld/emulparams/shlelf_nto.sh
@@ -1,5 +1,6 @@
 SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-shl"
+NO_REL_RELOCS=yes
 TEXT_START_ADDR=0x08040000
 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
 ARCH=sh
diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em
index 8d8a8fa..6394105 100644
--- a/ld/emultempl/armelf.em
+++ b/ld/emultempl/armelf.em
@@ -55,16 +55,6 @@
 static void
 arm_elf_after_open (void)
 {
-  if (strstr (bfd_get_target (link_info.output_bfd), "arm") == NULL)
-    {
-      /* The arm backend needs special fields in the output hash structure.
-	 These will only be created if the output format is an arm format,
-	 hence we do not support linking and changing output formats at the
-	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: cannot change output format whilst linking ARM binaries\n");
-      return;
-    }
-
   {
     LANG_FOR_EACH_INPUT_STATEMENT (is)
       {
@@ -439,6 +429,16 @@
 static void
 arm_elf_create_output_section_statements (void)
 {
+  if (strstr (bfd_get_target (link_info.output_bfd), "arm") == NULL)
+    {
+      /* The arm backend needs special fields in the output hash structure.
+	 These will only be created if the output format is an arm format,
+	 hence we do not support linking and changing output formats at the
+	 same time.  Use a link followed by objcopy to change output formats.  */
+      einfo ("%F%X%P: error: Cannot change output format whilst linking ARM binaries.\n");
+      return;
+    }
+
   bfd_elf32_arm_set_target_relocs (link_info.output_bfd, &link_info,
 				   target1_is_rel,
 				   target2_type, fix_v4bx, use_blx,
@@ -525,7 +525,7 @@
 
 PARSE_AND_LIST_OPTIONS='
   fprintf (file, _("  --thumb-entry=<sym>         Set the entry point to be Thumb symbol <sym>\n"));
-  fprintf (file, _("  --be8                       Oputput BE8 format image\n"));
+  fprintf (file, _("  --be8                       Output BE8 format image\n"));
   fprintf (file, _("  --target1=rel               Interpret R_ARM_TARGET1 as R_ARM_REL32\n"));
   fprintf (file, _("  --target1=abs               Interpret R_ARM_TARGET1 as R_ARM_ABS32\n"));
   fprintf (file, _("  --target2=<type>            Specify definition of R_ARM_TARGET2\n"));
diff --git a/ld/emultempl/beos.em b/ld/emultempl/beos.em
index ac27c5a..e417693 100644
--- a/ld/emultempl/beos.em
+++ b/ld/emultempl/beos.em
@@ -664,32 +664,31 @@
    but I'm leaving this here in case we want to enable it for sections
    which are not mentioned in the linker script.  */
 
-static bfd_boolean
-gld${EMULATION_NAME}_place_orphan (asection *s)
+static lang_output_section_statement_type *
+gld${EMULATION_NAME}_place_orphan (asection *s,
+				   const char *secname,
+				   int constraint)
 {
-  const char *secname;
   char *output_secname, *ps;
   lang_output_section_statement_type *os;
   lang_statement_union_type *l;
 
   if ((s->flags & SEC_ALLOC) == 0)
-    return FALSE;
+    return NULL;
 
   /* Don't process grouped sections unless doing a final link.
      If they're marked as COMDAT sections, we don't want .text\$foo to
      end up in .text and then have .text disappear because it's marked
      link-once-discard.  */
   if (link_info.relocatable)
-    return FALSE;
-
-  secname = bfd_get_section_name (s->owner, s);
+    return NULL;
 
   /* Everything from the '\$' on gets deleted so don't allow '\$' as the
      first character.  */
   if (*secname == '\$')
     einfo ("%P%F: section %s has '\$' as first character\n", secname);
   if (strchr (secname + 1, '\$') == NULL)
-    return FALSE;
+    return NULL;
 
   /* Look up the output section.  The Microsoft specs say sections names in
      image files never contain a '\$'.  Fortunately, lang_..._lookup creates
@@ -697,7 +696,7 @@
   output_secname = xstrdup (secname);
   ps = strchr (output_secname + 1, '\$');
   *ps = 0;
-  os = lang_output_section_statement_lookup (output_secname);
+  os = lang_output_section_statement_lookup (output_secname, constraint, TRUE);
 
   /* Find the '\$' wild statement for this section.  We currently require the
      linker script to explicitly mention "*(.foo\$)".
@@ -727,7 +726,7 @@
      sort_sections.  */
   lang_add_section (&l->wild_statement.children, s, os);
 
-  return TRUE;
+  return os;
 }
 
 static char *
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index be9d78d..bb299d9 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -62,7 +62,8 @@
 static void gld${EMULATION_NAME}_before_parse (void);
 static void gld${EMULATION_NAME}_after_open (void);
 static void gld${EMULATION_NAME}_before_allocation (void);
-static bfd_boolean gld${EMULATION_NAME}_place_orphan (asection *s);
+static lang_output_section_statement_type *gld${EMULATION_NAME}_place_orphan
+  (asection *, const char *, int);
 static void gld${EMULATION_NAME}_finish (void);
 
 EOF
@@ -1634,8 +1635,10 @@
 /* Place an orphan section.  We use this to put random SHF_ALLOC
    sections in the right segment.  */
 
-static bfd_boolean
-gld${EMULATION_NAME}_place_orphan (asection *s)
+static lang_output_section_statement_type *
+gld${EMULATION_NAME}_place_orphan (asection *s,
+				   const char *secname,
+				   int constraint)
 {
   static struct orphan_save hold[] =
     {
@@ -1659,7 +1662,10 @@
 	0, 0, 0, 0 },
       { ".sdata",
 	SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_DATA | SEC_SMALL_DATA,
-	0, 0, 0, 0 }
+	0, 0, 0, 0 },
+      { 0,
+	SEC_HAS_CONTENTS,
+	0, 0, 0, 0 },
     };
   enum orphan_save_index
     {
@@ -1669,19 +1675,17 @@
       orphan_bss,
       orphan_rel,
       orphan_interp,
-      orphan_sdata
+      orphan_sdata,
+      orphan_nonalloc
     };
   static int orphan_init_done = 0;
   struct orphan_save *place;
-  const char *secname;
   lang_output_section_statement_type *after;
   lang_output_section_statement_type *os;
   int isdyn = 0;
   int iself = s->owner->xvec->flavour == bfd_target_elf_flavour;
   unsigned int sh_type = iself ? elf_section_type (s) : SHT_NULL;
 
-  secname = bfd_get_section_name (s->owner, s);
-
   if (! link_info.relocatable
       && link_info.combreloc
       && (s->flags & SEC_ALLOC))
@@ -1707,33 +1711,30 @@
 	}
     }
 
-  if (isdyn || (!config.unique_orphan_sections && !unique_section_p (s)))
+  /* Look through the script to see where to place this section.  */
+  if (constraint == 0
+      && (os = lang_output_section_find (secname)) != NULL
+      && os->bfd_section != NULL
+      && (os->bfd_section->flags == 0
+	  || (_bfd_elf_match_sections_by_type (link_info.output_bfd,
+					       os->bfd_section, s->owner, s)
+	      && ((s->flags ^ os->bfd_section->flags)
+		  & (SEC_LOAD | SEC_ALLOC)) == 0)))
     {
-      /* Look through the script to see where to place this section.  */
-      os = lang_output_section_find (secname);
-
-      if (os != NULL
-	  && (os->bfd_section == NULL
-	      || os->bfd_section->flags == 0
-	      || (_bfd_elf_match_sections_by_type (link_info.output_bfd,
-						   os->bfd_section,
-						   s->owner, s)
-		  && ((s->flags ^ os->bfd_section->flags)
-		      & (SEC_LOAD | SEC_ALLOC)) == 0)))
-	{
-	  /* We already have an output section statement with this
-	     name, and its bfd section, if any, has compatible flags.
-	     If the section already exists but does not have any flags
-	     set, then it has been created by the linker, probably as a
-	     result of a --section-start command line switch.  */
-	  lang_add_section (&os->children, s, os);
-	  return TRUE;
-	}
+      /* We already have an output section statement with this
+	 name, and its bfd section has compatible flags.
+	 If the section already exists but does not have any flags
+	 set, then it has been created by the linker, probably as a
+	 result of a --section-start command line switch.  */
+      lang_add_section (&os->children, s, os);
+      return os;
     }
 
   if (!orphan_init_done)
     {
+      lang_output_section_statement_type *lookup;
       struct orphan_save *ho;
+
       for (ho = hold; ho < hold + sizeof (hold) / sizeof (hold[0]); ++ho)
 	if (ho->name != NULL)
 	  {
@@ -1741,6 +1742,16 @@
 	    if (ho->os != NULL && ho->os->flags == 0)
 	      ho->os->flags = ho->flags;
 	  }
+      lookup = hold[orphan_bss].os;
+      if (lookup == NULL)
+	lookup = &lang_output_section_statement.head->output_section_statement;
+      for (; lookup != NULL; lookup = lookup->next)
+	if ((lookup->bfd_section != NULL
+	     && (lookup->bfd_section->flags & SEC_DEBUGGING) != 0)
+	    || strcmp (lookup->name, ".comment") == 0)
+	  break;
+      hold[orphan_nonalloc].os = lookup ? lookup->prev : NULL;
+      hold[orphan_nonalloc].name = ".comment";
       orphan_init_done = 1;
     }
 
@@ -1748,12 +1759,12 @@
      sections into the .text section to get them out of the way.  */
   if (link_info.executable
       && ! link_info.relocatable
-      && CONST_STRNEQ (secname, ".gnu.warning.")
+      && CONST_STRNEQ (s->name, ".gnu.warning.")
       && hold[orphan_text].os != NULL)
     {
-      lang_add_section (&hold[orphan_text].os->children, s,
-			hold[orphan_text].os);
-      return TRUE;
+      os = hold[orphan_text].os;
+      lang_add_section (&os->children, s, os);
+      return os;
     }
 
   /* Decide which segment the section should go in based on the
@@ -1763,7 +1774,9 @@
      in the first page.  */
 
   place = NULL;
-  if ((s->flags & SEC_ALLOC) == 0)
+  if ((s->flags & (SEC_ALLOC | SEC_DEBUGGING)) == 0)
+    place = &hold[orphan_nonalloc];
+  else if ((s->flags & SEC_ALLOC) == 0)
     ;
   else if ((s->flags & SEC_LOAD) != 0
 	   && ((iself && sh_type == SHT_NOTE)
@@ -1803,21 +1816,7 @@
 	after = &lang_output_section_statement.head->output_section_statement;
     }
 
-  /* Choose a unique name for the section.  This will be needed if the
-     same section name appears in the input file with different
-     loadable or allocatable characteristics.  */
-  if (bfd_get_section_by_name (link_info.output_bfd, secname) != NULL)
-    {
-      static int count = 1;
-      secname = bfd_get_unique_section_name (link_info.output_bfd,
-					     secname, &count);
-      if (secname == NULL)
-	einfo ("%F%P: place_orphan failed: %E\n");
-    }
-
-  lang_insert_orphan (s, secname, after, place, NULL, NULL);
-
-  return TRUE;
+  return lang_insert_orphan (s, secname, constraint, after, place, NULL, NULL);
 }
 EOF
 fi
diff --git a/ld/emultempl/genelf.em b/ld/emultempl/genelf.em
index e44bb9b..e6e8841 100644
--- a/ld/emultempl/genelf.em
+++ b/ld/emultempl/genelf.em
@@ -34,7 +34,27 @@
   gld${EMULATION_NAME}_map_segments (FALSE);
   finish_default ();
 }
+
+static void
+gld${EMULATION_NAME}_after_open (void)
+{
+  bfd *ibfd;
+  asection *sec;
+  asymbol **syms;
+
+  if (link_info.relocatable)
+    for (ibfd = link_info.input_bfds; ibfd != NULL; ibfd = ibfd->link_next)
+      if ((syms = bfd_get_outsymbols (ibfd)) != NULL
+	  && bfd_get_flavour (ibfd) == bfd_target_elf_flavour)
+	for (sec = ibfd->sections; sec != NULL; sec = sec->next)
+	  if ((sec->flags & (SEC_GROUP | SEC_LINKER_CREATED)) == SEC_GROUP)
+	    {
+	      struct bfd_elf_section_data *sec_data = elf_section_data (sec);
+	      elf_group_id (sec) = syms[sec_data->this_hdr.sh_info - 1];
+	    }
+}
 EOF
 # Put these extra routines in ld_${EMULATION_NAME}_emulation
 #
 LDEMUL_FINISH=gld${EMULATION_NAME}_finish
+LDEMUL_AFTER_OPEN=gld${EMULATION_NAME}_after_open
diff --git a/ld/emultempl/mmo.em b/ld/emultempl/mmo.em
index 8b02fd6..f5ba6dd 100644
--- a/ld/emultempl/mmo.em
+++ b/ld/emultempl/mmo.em
@@ -46,8 +46,10 @@
    SEC_READONLY sections right after MMO_TEXT_SECTION_NAME.  Much borrowed
    from elf32.em.  */
 
-static bfd_boolean
-mmo_place_orphan (asection *s)
+static lang_output_section_statement_type *
+mmo_place_orphan (asection *s,
+		  const char *secname,
+		  int constraint ATTRIBUTE_UNUSED)
 {
   static struct orphan_save hold_text =
     {
@@ -56,17 +58,15 @@
       0, 0, 0, 0
     };
   struct orphan_save *place;
-  const char *secname;
   lang_output_section_statement_type *after;
   lang_output_section_statement_type *os;
 
   /* We have nothing to say for anything other than a final link.  */
   if (link_info.relocatable
       || (s->flags & (SEC_EXCLUDE | SEC_LOAD)) != SEC_LOAD)
-    return FALSE;
+    return NULL;
 
   /* Only care for sections we're going to load.  */
-  secname = s->name;
   os = lang_output_section_find (secname);
 
   /* We have an output section by this name.  Place the section inside it
@@ -74,13 +74,13 @@
   if (os != NULL)
     {
       lang_add_section (&os->children, s, os);
-      return TRUE;
+      return os;
     }
 
   /* If this section does not have .text-type section flags or there's no
      MMO_TEXT_SECTION_NAME, we don't have anything to say.  */
   if ((s->flags & (SEC_CODE | SEC_READONLY)) == 0)
-    return FALSE;
+    return NULL;
 
   if (hold_text.os == NULL)
     hold_text.os = lang_output_section_find (hold_text.name);
@@ -93,7 +93,7 @@
 
   /* If there's an output section by this name, we'll use it, regardless
      of section flags, in contrast to what's done in elf32.em.  */
-  os = lang_insert_orphan (s, secname, after, place, NULL, NULL);
+  os = lang_insert_orphan (s, secname, 0, after, place, NULL, NULL);
 
   /* We need an output section for .text as a root, so if there was none
      (might happen with a peculiar linker script such as in "map
@@ -102,7 +102,7 @@
   if (hold_text.os == NULL)
     hold_text.os = os;
 
-  return TRUE;
+  return os;
 }
 
 /* Remove the spurious settings of SEC_RELOC that make it to the output at
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index 865cfaa..b963d03 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -936,7 +936,7 @@
 		    {
 		      warned = TRUE;
 		      einfo (_("%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n\
-This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."));
+This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.\n"));
 		    }
 		}
 
@@ -1122,7 +1122,7 @@
 		    if (nrelocs < 0)
 		      {
 			free (relocs);
-			einfo ("%X%P: unable to process relocs: %E");
+			einfo ("%X%P: unable to process relocs: %E\n");
 			return;
 		      }
 
@@ -1380,7 +1380,7 @@
 	    (is->the_bfd, & link_info, support_old_code))
 	  {
 	    /* xgettext:c-format */
-	    einfo (_("Errors encountered processing file %s for interworking"),
+	    einfo (_("Errors encountered processing file %s for interworking\n"),
 		   is->filename);
 	  }
       }
@@ -1612,41 +1612,38 @@
    default linker script using wildcards, and are sorted by
    sort_sections.  */
 
-static bfd_boolean
-gld_${EMULATION_NAME}_place_orphan (asection *s)
+static lang_output_section_statement_type *
+gld_${EMULATION_NAME}_place_orphan (asection *s,
+				    const char *secname,
+				    int constraint)
 {
-  const char *secname;
-  const char *orig_secname;
+  const char *orig_secname = secname;
   char *dollar = NULL;
   lang_output_section_statement_type *os;
   lang_statement_list_type add_child;
 
-  secname = bfd_get_section_name (s->owner, s);
-
   /* Look through the script to see where to place this section.  */
-  orig_secname = secname;
   if (!link_info.relocatable
       && (dollar = strchr (secname, '$')) != NULL)
     {
-      size_t len = dollar - orig_secname;
+      size_t len = dollar - secname;
       char *newname = xmalloc (len + 1);
-      memcpy (newname, orig_secname, len);
+      memcpy (newname, secname, len);
       newname[len] = '\0';
       secname = newname;
     }
 
-  os = lang_output_section_find (secname);
-
   lang_list_init (&add_child);
 
-  if (os != NULL
-      && (os->bfd_section == NULL
-	  || os->bfd_section->flags == 0
+  if (constraint == 0
+      && (os = lang_output_section_find (secname)) != NULL
+      && os->bfd_section != NULL
+      && (os->bfd_section->flags == 0
 	  || ((s->flags ^ os->bfd_section->flags)
 	      & (SEC_LOAD | SEC_ALLOC)) == 0))
     {
       /* We already have an output section statement with this
-	 name, and its bfd section, if any, has compatible flags.
+	 name, and its bfd section has compatible flags.
 	 If the section already exists but does not have any flags set,
 	 then it has been created by the linker, probably as a result of
 	 a --section-start command line switch.  */
@@ -1723,21 +1720,10 @@
 		     ->output_section_statement);
 	}
 
-      /* Choose a unique name for the section.  This will be needed if the
-	 same section name appears in the input file with different
-	 loadable or allocatable characteristics.  */
-      if (bfd_get_section_by_name (link_info.output_bfd, secname) != NULL)
-	{
-	  static int count = 1;
-	  secname = bfd_get_unique_section_name (link_info.output_bfd,
-						 secname, &count);
-	  if (secname == NULL)
-	    einfo ("%F%P: place_orphan failed: %E\n");
-	}
-
       /* All sections in an executable must be aligned to a page boundary.  */
       address = exp_unop (ALIGN_K, exp_nameop (NAME, "__section_alignment__"));
-      os = lang_insert_orphan (s, secname, after, place, address, &add_child);
+      os = lang_insert_orphan (s, secname, constraint, after, place, address,
+			       &add_child);
     }
 
   {
@@ -1782,7 +1768,7 @@
       }
   }
 
-  return TRUE;
+  return os;
 }
 
 static bfd_boolean
diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em
index 21bcf01..d70f635 100644
--- a/ld/emultempl/pep.em
+++ b/ld/emultempl/pep.em
@@ -895,7 +895,7 @@
 		    {
 		      warned = TRUE;
 		      einfo (_("%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n\
-This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."));
+This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.\n"));
 		    }
 		}
 
@@ -1060,7 +1060,7 @@
 		    if (nrelocs < 0)
 		      {
 			free (relocs);
-			einfo ("%X%P: unable to process relocs: %E");
+			einfo ("%X%P: unable to process relocs: %E\n");
 			return;
 		      }
 
@@ -1371,41 +1371,38 @@
    default linker script using wildcards, and are sorted by
    sort_sections.  */
 
-static bfd_boolean
-gld_${EMULATION_NAME}_place_orphan (asection *s)
+static lang_output_section_statement_type *
+gld_${EMULATION_NAME}_place_orphan (asection *s,
+				    const char *secname,
+				    int constraint)
 {
-  const char *secname;
-  const char *orig_secname;
+  const char *orig_secname = secname;
   char *dollar = NULL;
   lang_output_section_statement_type *os;
   lang_statement_list_type add_child;
 
-  secname = bfd_get_section_name (s->owner, s);
-
   /* Look through the script to see where to place this section.  */
-  orig_secname = secname;
   if (!link_info.relocatable
       && (dollar = strchr (secname, '$')) != NULL)
     {
-      size_t len = dollar - orig_secname;
+      size_t len = dollar - secname;
       char *newname = xmalloc (len + 1);
-      memcpy (newname, orig_secname, len);
+      memcpy (newname, secname, len);
       newname[len] = '\0';
       secname = newname;
     }
 
-  os = lang_output_section_find (secname);
-
   lang_list_init (&add_child);
 
-  if (os != NULL
-      && (os->bfd_section == NULL
-	  || os->bfd_section->flags == 0
+  if (constraint == 0
+      && (os = lang_output_section_find (secname)) != NULL
+      && os->bfd_section != NULL
+      && (os->bfd_section->flags == 0
 	  || ((s->flags ^ os->bfd_section->flags)
 	      & (SEC_LOAD | SEC_ALLOC)) == 0))
     {
       /* We already have an output section statement with this
-	 name, and its bfd section, if any, has compatible flags.
+	 name, and its bfd section has compatible flags.
 	 If the section already exists but does not have any flags set,
 	 then it has been created by the linker, probably as a result of
 	 a --section-start command line switch.  */
@@ -1482,21 +1479,10 @@
 		     ->output_section_statement);
 	}
 
-      /* Choose a unique name for the section.  This will be needed if the
-	 same section name appears in the input file with different
-	 loadable or allocatable characteristics.  */
-      if (bfd_get_section_by_name (link_info.output_bfd, secname) != NULL)
-	{
-	  static int count = 1;
-	  secname = bfd_get_unique_section_name (link_info.output_bfd,
-						 secname, &count);
-	  if (secname == NULL)
-	    einfo ("%F%P: place_orphan failed: %E\n");
-	}
-
       /* All sections in an executable must be aligned to a page boundary.  */
       address = exp_unop (ALIGN_K, exp_nameop (NAME, "__section_alignment__"));
-      os = lang_insert_orphan (s, secname, after, place, address, &add_child);
+      os = lang_insert_orphan (s, secname, constraint, after, place, address,
+			       &add_child);
     }
 
   {
@@ -1541,7 +1527,7 @@
       }
   }
 
-  return TRUE;
+  return os;
 }
 
 static bfd_boolean
diff --git a/ld/emultempl/spuelf.em b/ld/emultempl/spuelf.em
index 116a0cc..fe248af 100644
--- a/ld/emultempl/spuelf.em
+++ b/ld/emultempl/spuelf.em
@@ -114,12 +114,7 @@
 
   os = lang_output_section_find (o != NULL ? o->name : output_name);
   if (os == NULL)
-    {
-      const char *save = s->name;
-      s->name = output_name;
-      gld${EMULATION_NAME}_place_orphan (s);
-      s->name = save;
-    }
+    gld${EMULATION_NAME}_place_orphan (s, output_name, 0);
   else if (o != NULL && os->children.head != NULL)
     {
       lang_statement_list_type add;
diff --git a/ld/emultempl/sunos.em b/ld/emultempl/sunos.em
index 6367c3c..bbd6075 100644
--- a/ld/emultempl/sunos.em
+++ b/ld/emultempl/sunos.em
@@ -698,7 +698,7 @@
 
       /* Set the .text section to start at 0x20, not 0x2020.  FIXME:
 	 This is too magical.  */
-      os = lang_output_section_statement_lookup (".text");
+      os = lang_output_section_statement_lookup (".text", 0, TRUE);
       if (os->addr_tree == NULL)
 	os->addr_tree = exp_intop (0x20);
     }
diff --git a/ld/ldemul.c b/ld/ldemul.c
index 6b86ddf..826129d 100644
--- a/ld/ldemul.c
+++ b/ld/ldemul.c
@@ -119,12 +119,12 @@
   return FALSE;
 }
 
-bfd_boolean
-ldemul_place_orphan (asection *s)
+lang_output_section_statement_type *
+ldemul_place_orphan (asection *s, const char *name, int constraint)
 {
   if (ld_emulation->place_orphan)
-    return (*ld_emulation->place_orphan) (s);
-  return FALSE;
+    return (*ld_emulation->place_orphan) (s, name, constraint);
+  return NULL;
 }
 
 void
diff --git a/ld/ldemul.h b/ld/ldemul.h
index cc81728..8c68a88 100644
--- a/ld/ldemul.h
+++ b/ld/ldemul.h
@@ -58,8 +58,8 @@
   (void);
 extern void ldemul_create_output_section_statements
   (void);
-extern bfd_boolean ldemul_place_orphan
-  (asection *);
+extern lang_output_section_statement_type *ldemul_place_orphan
+  (asection *, const char *, int);
 extern bfd_boolean ldemul_parse_args
   (int, char **);
 extern void ldemul_add_options
@@ -151,8 +151,8 @@
   /* Place an orphan section.  Return TRUE if it was placed, FALSE if
      the default action should be taken.  This field may be NULL, in
      which case the default action will always be taken.  */
-  bfd_boolean (*place_orphan)
-    (asection *);
+  lang_output_section_statement_type *(*place_orphan)
+    (asection *, const char *, int);
 
   /* Run after assigning parsing with the args, but before
      reading the script.  Used to initialize symbols used in the script.  */
diff --git a/ld/ldexp.c b/ld/ldexp.c
index 08664e6..e888c95 100644
--- a/ld/ldexp.c
+++ b/ld/ldexp.c
@@ -282,6 +282,7 @@
 static void
 fold_binary (etree_type *tree)
 {
+  etree_value_type lhs;
   exp_fold_tree_1 (tree->binary.lhs);
 
   /* The SEGMENT_START operator is special because its first
@@ -304,169 +305,167 @@
 	    expld.result.section = expld.section;
 	    break;
 	  }
+      return;
     }
-  else if (expld.result.valid_p)
+
+  lhs = expld.result;
+  exp_fold_tree_1 (tree->binary.rhs);
+  expld.result.valid_p &= lhs.valid_p;
+
+  if (expld.result.valid_p)
     {
-      etree_value_type lhs = expld.result;
-
-      exp_fold_tree_1 (tree->binary.rhs);
-      if (expld.result.valid_p)
+      /* If the values are from different sections, or this is an
+	 absolute expression, make both the source arguments
+	 absolute.  However, adding or subtracting an absolute
+	 value from a relative value is meaningful, and is an
+	 exception.  */
+      if (expld.section != bfd_abs_section_ptr
+	  && lhs.section == bfd_abs_section_ptr
+	  && tree->type.node_code == '+')
 	{
-	  /* If the values are from different sections, or this is an
-	     absolute expression, make both the source arguments
-	     absolute.  However, adding or subtracting an absolute
-	     value from a relative value is meaningful, and is an
-	     exception.  */
-	  if (expld.section != bfd_abs_section_ptr
-	      && lhs.section == bfd_abs_section_ptr
-	      && tree->type.node_code == '+')
-	    {
-	      /* Keep the section of the rhs term.  */
-	      expld.result.value = lhs.value + expld.result.value;
-	      return;
-	    }
-	  else if (expld.section != bfd_abs_section_ptr
-		   && expld.result.section == bfd_abs_section_ptr
-		   && (tree->type.node_code == '+'
-		       || tree->type.node_code == '-'))
-	    {
-	      /* Keep the section of the lhs term.  */
-	      expld.result.section = lhs.section;
-	    }
-	  else if (expld.result.section != lhs.section
-		   || expld.section == bfd_abs_section_ptr)
-	    {
-	      make_abs ();
-	      lhs.value += lhs.section->vma;
-	    }
+	  /* Keep the section of the rhs term.  */
+	  expld.result.value = lhs.value + expld.result.value;
+	  return;
+	}
+      else if (expld.section != bfd_abs_section_ptr
+	       && expld.result.section == bfd_abs_section_ptr
+	       && (tree->type.node_code == '+'
+		   || tree->type.node_code == '-'))
+	{
+	  /* Keep the section of the lhs term.  */
+	  expld.result.section = lhs.section;
+	}
+      else if (expld.result.section != lhs.section
+	       || expld.section == bfd_abs_section_ptr)
+	{
+	  make_abs ();
+	  lhs.value += lhs.section->vma;
+	}
 
-	  switch (tree->type.node_code)
-	    {
-	    case '%':
-	      if (expld.result.value != 0)
-		expld.result.value = ((bfd_signed_vma) lhs.value
-				      % (bfd_signed_vma) expld.result.value);
-	      else if (expld.phase != lang_mark_phase_enum)
-		einfo (_("%F%S %% by zero\n"));
-	      break;
+      switch (tree->type.node_code)
+	{
+	case '%':
+	  if (expld.result.value != 0)
+	    expld.result.value = ((bfd_signed_vma) lhs.value
+				  % (bfd_signed_vma) expld.result.value);
+	  else if (expld.phase != lang_mark_phase_enum)
+	    einfo (_("%F%S %% by zero\n"));
+	  break;
 
-	    case '/':
-	      if (expld.result.value != 0)
-		expld.result.value = ((bfd_signed_vma) lhs.value
-				      / (bfd_signed_vma) expld.result.value);
-	      else if (expld.phase != lang_mark_phase_enum)
-		einfo (_("%F%S / by zero\n"));
-	      break;
+	case '/':
+	  if (expld.result.value != 0)
+	    expld.result.value = ((bfd_signed_vma) lhs.value
+				  / (bfd_signed_vma) expld.result.value);
+	  else if (expld.phase != lang_mark_phase_enum)
+	    einfo (_("%F%S / by zero\n"));
+	  break;
 
 #define BOP(x, y) \
 	    case x:							\
 	      expld.result.value = lhs.value y expld.result.value;	\
 	      break;
 
-	      BOP ('+', +);
-	      BOP ('*', *);
-	      BOP ('-', -);
-	      BOP (LSHIFT, <<);
-	      BOP (RSHIFT, >>);
-	      BOP (EQ, ==);
-	      BOP (NE, !=);
-	      BOP ('<', <);
-	      BOP ('>', >);
-	      BOP (LE, <=);
-	      BOP (GE, >=);
-	      BOP ('&', &);
-	      BOP ('^', ^);
-	      BOP ('|', |);
-	      BOP (ANDAND, &&);
-	      BOP (OROR, ||);
+	  BOP ('+', +);
+	  BOP ('*', *);
+	  BOP ('-', -);
+	  BOP (LSHIFT, <<);
+	  BOP (RSHIFT, >>);
+	  BOP (EQ, ==);
+	  BOP (NE, !=);
+	  BOP ('<', <);
+	  BOP ('>', >);
+	  BOP (LE, <=);
+	  BOP (GE, >=);
+	  BOP ('&', &);
+	  BOP ('^', ^);
+	  BOP ('|', |);
+	  BOP (ANDAND, &&);
+	  BOP (OROR, ||);
 
-	    case MAX_K:
-	      if (lhs.value > expld.result.value)
-		expld.result.value = lhs.value;
-	      break;
+	case MAX_K:
+	  if (lhs.value > expld.result.value)
+	    expld.result.value = lhs.value;
+	  break;
 
-	    case MIN_K:
-	      if (lhs.value < expld.result.value)
-		expld.result.value = lhs.value;
-	      break;
+	case MIN_K:
+	  if (lhs.value < expld.result.value)
+	    expld.result.value = lhs.value;
+	  break;
 
-	    case ALIGN_K:
-	      expld.result.value = align_n (lhs.value, expld.result.value);
-	      break;
+	case ALIGN_K:
+	  expld.result.value = align_n (lhs.value, expld.result.value);
+	  break;
 
-	    case DATA_SEGMENT_ALIGN:
-	      expld.dataseg.relro = exp_dataseg_relro_start;
-	      if (expld.phase != lang_first_phase_enum
-		  && expld.section == bfd_abs_section_ptr
-		  && (expld.dataseg.phase == exp_dataseg_none
-		      || expld.dataseg.phase == exp_dataseg_adjust
-		      || expld.dataseg.phase == exp_dataseg_relro_adjust
-		      || expld.phase == lang_final_phase_enum))
+	case DATA_SEGMENT_ALIGN:
+	  expld.dataseg.relro = exp_dataseg_relro_start;
+	  if (expld.phase != lang_first_phase_enum
+	      && expld.section == bfd_abs_section_ptr
+	      && (expld.dataseg.phase == exp_dataseg_none
+		  || expld.dataseg.phase == exp_dataseg_adjust
+		  || expld.dataseg.phase == exp_dataseg_relro_adjust
+		  || expld.phase == lang_final_phase_enum))
+	    {
+	      bfd_vma maxpage = lhs.value;
+	      bfd_vma commonpage = expld.result.value;
+
+	      expld.result.value = align_n (expld.dot, maxpage);
+	      if (expld.dataseg.phase == exp_dataseg_relro_adjust)
+		expld.result.value = expld.dataseg.base;
+	      else if (expld.dataseg.phase != exp_dataseg_adjust)
 		{
-		  bfd_vma maxpage = lhs.value;
-		  bfd_vma commonpage = expld.result.value;
-
-		  expld.result.value = align_n (expld.dot, maxpage);
-		  if (expld.dataseg.phase == exp_dataseg_relro_adjust)
-		    expld.result.value = expld.dataseg.base;
-		  else if (expld.dataseg.phase != exp_dataseg_adjust)
+		  expld.result.value += expld.dot & (maxpage - 1);
+		  if (expld.phase == lang_allocating_phase_enum)
 		    {
-		      expld.result.value += expld.dot & (maxpage - 1);
-		      if (expld.phase == lang_allocating_phase_enum)
-			{
-			  expld.dataseg.phase = exp_dataseg_align_seen;
-			  expld.dataseg.min_base = expld.dot;
-			  expld.dataseg.base = expld.result.value;
-			  expld.dataseg.pagesize = commonpage;
-			  expld.dataseg.maxpagesize = maxpage;
-			  expld.dataseg.relro_end = 0;
-			}
+		      expld.dataseg.phase = exp_dataseg_align_seen;
+		      expld.dataseg.min_base = expld.dot;
+		      expld.dataseg.base = expld.result.value;
+		      expld.dataseg.pagesize = commonpage;
+		      expld.dataseg.maxpagesize = maxpage;
+		      expld.dataseg.relro_end = 0;
 		    }
-		  else if (commonpage < maxpage)
-		    expld.result.value += ((expld.dot + commonpage - 1)
-					   & (maxpage - commonpage));
 		}
-	      else
-		expld.result.valid_p = FALSE;
-	      break;
-
-	    case DATA_SEGMENT_RELRO_END:
-	      expld.dataseg.relro = exp_dataseg_relro_end;
-	      if (expld.phase != lang_first_phase_enum
-		  && (expld.dataseg.phase == exp_dataseg_align_seen
-		      || expld.dataseg.phase == exp_dataseg_adjust
-		      || expld.dataseg.phase == exp_dataseg_relro_adjust
-		      || expld.phase == lang_final_phase_enum))
-		{
-		  if (expld.dataseg.phase == exp_dataseg_align_seen
-		      || expld.dataseg.phase == exp_dataseg_relro_adjust)
-		    expld.dataseg.relro_end = lhs.value + expld.result.value;
-
-		  if (expld.dataseg.phase == exp_dataseg_relro_adjust
-		      && (expld.dataseg.relro_end
-			  & (expld.dataseg.pagesize - 1)))
-		    {
-		      expld.dataseg.relro_end += expld.dataseg.pagesize - 1;
-		      expld.dataseg.relro_end &= ~(expld.dataseg.pagesize - 1);
-		      expld.result.value = (expld.dataseg.relro_end
-					    - expld.result.value);
-		    }
-		  else
-		    expld.result.value = lhs.value;
-
-		  if (expld.dataseg.phase == exp_dataseg_align_seen)
-		    expld.dataseg.phase = exp_dataseg_relro_seen;
-		}
-	      else
-		expld.result.valid_p = FALSE;
-	      break;
-
-	    default:
-	      FAIL ();
+	      else if (commonpage < maxpage)
+		expld.result.value += ((expld.dot + commonpage - 1)
+				       & (maxpage - commonpage));
 	    }
+	  else
+	    expld.result.valid_p = FALSE;
+	  break;
+
+	case DATA_SEGMENT_RELRO_END:
+	  expld.dataseg.relro = exp_dataseg_relro_end;
+	  if (expld.phase != lang_first_phase_enum
+	      && (expld.dataseg.phase == exp_dataseg_align_seen
+		  || expld.dataseg.phase == exp_dataseg_adjust
+		  || expld.dataseg.phase == exp_dataseg_relro_adjust
+		  || expld.phase == lang_final_phase_enum))
+	    {
+	      if (expld.dataseg.phase == exp_dataseg_align_seen
+		  || expld.dataseg.phase == exp_dataseg_relro_adjust)
+		expld.dataseg.relro_end = lhs.value + expld.result.value;
+
+	      if (expld.dataseg.phase == exp_dataseg_relro_adjust
+		  && (expld.dataseg.relro_end
+		      & (expld.dataseg.pagesize - 1)))
+		{
+		  expld.dataseg.relro_end += expld.dataseg.pagesize - 1;
+		  expld.dataseg.relro_end &= ~(expld.dataseg.pagesize - 1);
+		  expld.result.value = (expld.dataseg.relro_end
+					- expld.result.value);
+		}
+	      else
+		expld.result.value = lhs.value;
+
+	      if (expld.dataseg.phase == exp_dataseg_align_seen)
+		expld.dataseg.phase = exp_dataseg_relro_seen;
+	    }
+	  else
+	    expld.result.valid_p = FALSE;
+	  break;
+
+	default:
+	  FAIL ();
 	}
-      else
-	expld.result.valid_p = FALSE;
     }
 }
 
diff --git a/ld/ldlang.c b/ld/ldlang.c
index b1b8806..9fd26a9 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -193,7 +193,7 @@
   return match;
 }
 
-bfd_boolean
+static bfd_boolean
 unique_section_p (const asection *sec)
 {
   struct unique_sections *unam;
@@ -1278,19 +1278,25 @@
       struct out_section_hash_entry *last_ent;
       unsigned long hash = entry->root.hash;
 
-      do
-	{
-	  if (entry->s.output_section_statement.constraint >= 0
-	      && (constraint == 0
-		  || (constraint == entry->s.output_section_statement.constraint
-		      && constraint != SPECIAL)))
-	    return &entry->s.output_section_statement;
-	  last_ent = entry;
-	  entry = (struct out_section_hash_entry *) entry->root.next;
-	}
-      while (entry != NULL
-	     && entry->root.hash == hash
-	     && strcmp (name, entry->s.output_section_statement.name) == 0);
+      if (create && constraint == SPECIAL)
+	/* Not traversing to the end reverses the order of the second
+	   and subsequent SPECIAL sections in the hash table chain,
+	   but that shouldn't matter.  */
+	last_ent = entry;
+      else
+	do
+	  {
+	    if (entry->s.output_section_statement.constraint >= 0
+		&& (constraint == 0
+		    || (constraint
+			== entry->s.output_section_statement.constraint)))
+	      return &entry->s.output_section_statement;
+	    last_ent = entry;
+	    entry = (struct out_section_hash_entry *) entry->root.next;
+	  }
+	while (entry != NULL
+	       && entry->root.hash == hash
+	       && strcmp (name, entry->s.output_section_statement.name) == 0);
 
       if (!create)
 	return NULL;
@@ -1357,7 +1363,8 @@
       return found;
     }
 
-  if (sec->flags & SEC_CODE)
+  if ((sec->flags & SEC_CODE) != 0
+      && (sec->flags & SEC_ALLOC) != 0)
     {
       /* Try for a rw code section.  */
       for (look = first; look; look = look->next)
@@ -1377,7 +1384,8 @@
 	    found = look;
 	}
     }
-  else if (sec->flags & (SEC_READONLY | SEC_THREAD_LOCAL))
+  else if ((sec->flags & (SEC_READONLY | SEC_THREAD_LOCAL)) != 0
+	   && (sec->flags & SEC_ALLOC) != 0)
     {
       /* .rodata can go after .text, .sdata2 after .rodata.  */
       for (look = first; look; look = look->next)
@@ -1398,7 +1406,8 @@
 	    found = look;
 	}
     }
-  else if (sec->flags & SEC_SMALL_DATA)
+  else if ((sec->flags & SEC_SMALL_DATA) != 0
+	   && (sec->flags & SEC_ALLOC) != 0)
     {
       /* .sdata goes after .data, .sbss after .sdata.  */
       for (look = first; look; look = look->next)
@@ -1420,7 +1429,8 @@
 	    found = look;
 	}
     }
-  else if (sec->flags & SEC_HAS_CONTENTS)
+  else if ((sec->flags & SEC_HAS_CONTENTS) != 0
+	   && (sec->flags & SEC_ALLOC) != 0)
     {
       /* .data goes after .rodata.  */
       for (look = first; look; look = look->next)
@@ -1440,9 +1450,9 @@
 	    found = look;
 	}
     }
-  else
+  else if ((sec->flags & SEC_ALLOC) != 0)
     {
-      /* .bss goes last.  */
+      /* .bss goes after any other alloc section.  */
       for (look = first; look; look = look->next)
 	{
 	  flags = look->flags;
@@ -1459,6 +1469,20 @@
 	    found = look;
 	}
     }
+  else
+    {
+      /* non-alloc go last.  */
+      for (look = first; look; look = look->next)
+	{
+	  flags = look->flags;
+	  if (look->bfd_section != NULL)
+	    flags = look->bfd_section->flags;
+	  flags ^= sec->flags;
+	  if (!(flags & SEC_DEBUGGING))
+	    found = look;
+	}
+      return found;
+    }
 
   if (found || !match_type)
     return found;
@@ -1556,6 +1580,7 @@
 lang_output_section_statement_type *
 lang_insert_orphan (asection *s,
 		    const char *secname,
+		    int constraint,
 		    lang_output_section_statement_type *after,
 		    struct orphan_save *place,
 		    etree_type *address,
@@ -1611,7 +1636,7 @@
   os_tail = ((lang_output_section_statement_type **)
 	     lang_output_section_statement.tail);
   os = lang_enter_output_section_statement (secname, address, 0, NULL, NULL,
-					    NULL, 0);
+					    NULL, constraint);
 
   if (add_child == NULL)
     add_child = &os->children;
@@ -1914,10 +1939,11 @@
   if (strcmp (s->name, DISCARD_SECTION_NAME) == 0)
     einfo (_("%P%F: Illegal use of `%s' section\n"), DISCARD_SECTION_NAME);
 
-  s->bfd_section = bfd_get_section_by_name (link_info.output_bfd, s->name);
+  if (s->constraint != SPECIAL)
+    s->bfd_section = bfd_get_section_by_name (link_info.output_bfd, s->name);
   if (s->bfd_section == NULL)
-    s->bfd_section = bfd_make_section_with_flags (link_info.output_bfd,
-						  s->name, flags);
+    s->bfd_section = bfd_make_section_anyway_with_flags (link_info.output_bfd,
+							 s->name, flags);
   if (s->bfd_section == NULL)
     {
       einfo (_("%P%F: output format %s cannot represent section called %s\n"),
@@ -4600,7 +4626,12 @@
 			     os->name, (unsigned long) (newdot - savedot));
 		  }
 
-		bfd_set_section_vma (0, os->bfd_section, newdot);
+		/* PR 6945: Do not update the vma's of output sections
+		   when performing a relocatable link on COFF objects.  */
+		if (! link_info.relocatable
+		    || (bfd_get_flavour (link_info.output_bfd)
+			!= bfd_target_coff_flavour))
+		  bfd_set_section_vma (0, os->bfd_section, newdot);
 
 		os->bfd_section->output_offset = 0;
 	      }
@@ -5652,14 +5683,22 @@
 					default_common_section);
 		    }
 		}
-	      else if (ldemul_place_orphan (s))
-		;
 	      else
 		{
-		  lang_output_section_statement_type *os;
+		  const char *name = s->name;
+		  int constraint = 0;
 
-		  os = lang_output_section_statement_lookup (s->name, 0, TRUE);
-		  lang_add_section (&os->children, s, os);
+		  if (config.unique_orphan_sections || unique_section_p (s))
+		    constraint = SPECIAL;
+
+		  if (!ldemul_place_orphan (s, name, constraint))
+		    {
+		      lang_output_section_statement_type *os;
+		      os = lang_output_section_statement_lookup (name,
+								 constraint,
+								 TRUE);
+		      lang_add_section (&os->children, s, os);
+		    }
 		}
 	    }
 	}
diff --git a/ld/ldlang.h b/ld/ldlang.h
index 8b652a8..fd0465e 100644
--- a/ld/ldlang.h
+++ b/ld/ldlang.h
@@ -536,7 +536,7 @@
   (const asection *, lang_output_section_statement_type **,
    lang_match_sec_type_func);
 extern lang_output_section_statement_type *lang_insert_orphan
-  (asection *, const char *, lang_output_section_statement_type *,
+  (asection *, const char *, int, lang_output_section_statement_type *,
    struct orphan_save *, etree_type *, lang_statement_list_type *);
 extern lang_input_statement_type *lang_add_input_file
   (const char *, lang_input_file_enum_type, const char *);
@@ -604,8 +604,6 @@
 extern void lang_append_dynamic_list (struct bfd_elf_version_expr *);
 extern void lang_append_dynamic_list_cpp_typeinfo (void);
 extern void lang_append_dynamic_list_cpp_new (void);
-bfd_boolean unique_section_p
-  (const asection *);
 extern void lang_add_unique
   (const char *);
 extern const char *lang_get_output_target
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index ea84999..bf4b509 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -2242,6 +2242,7 @@
   d2 = xmalloc (20);
   id2->contents = d2;
   memset (d2, 0, 20);
+  d2[0] = d2[16] = PE_IDATA5_SIZE; /* Reloc addend.  */
 
   quick_reloc (abfd, 0, BFD_RELOC_RVA, 1);
   quick_reloc (abfd, 12, BFD_RELOC_RVA, 2);
diff --git a/ld/po/id.po b/ld/po/id.po
new file mode 100644
index 0000000..01ac958
--- /dev/null
+++ b/ld/po/id.po
@@ -0,0 +1,2019 @@
+# Pesan Bahasa Indonesia untuk LD
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: ld 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-10-08 10:00+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: emultempl/armcoff.em:73
+#, c-format
+msgid "  --support-old-code          Support interworking with old code\n"
+msgstr "  --support-old-code          Dukung antar-kerja dengan kode lama\n"
+
+#: emultempl/armcoff.em:74
+#, c-format
+msgid "  --thumb-entry=<sym>         Set the entry point to be Thumb symbol <sym>\n"
+msgstr "  --thumb-entry=<sym>          Set titik masukan ke simbol Thumb <sym>\n"
+
+#: emultempl/armcoff.em:122
+#, c-format
+msgid "Errors encountered processing file %s"
+msgstr "Error ditemui dalam pemrosesan berkas %s"
+
+#: emultempl/armcoff.em:190 emultempl/pe.em:1555
+msgid "%P: warning: '--thumb-entry %s' is overriding '-e %s'\n"
+msgstr "%P: peringatan: '--thumb-entry %s' memaksa '-e %s'\n"
+
+#: emultempl/armcoff.em:195 emultempl/pe.em:1560
+msgid "%P: warning: cannot find thumb start symbol %s\n"
+msgstr "%P: warning: tidak dapat menemukan thumb awal simbol %s\n"
+
+#: emultempl/pe.em:316
+#, c-format
+msgid "  --base_file <basefile>             Generate a base file for relocatable DLLs\n"
+msgstr "  --base_file <basefile>             Buat sebuah berkas dasar untuk DLL yang dapat direlokasikan\n"
+
+#: emultempl/pe.em:317
+#, c-format
+msgid "  --dll                              Set image base to the default for DLLs\n"
+msgstr "  --dll                              Set dasar image ke default untuk DLLs\n"
+
+#: emultempl/pe.em:318
+#, c-format
+msgid "  --file-alignment <size>            Set file alignment\n"
+msgstr "  --file-alignment <besar>           Set berkas alignment\n"
+
+#: emultempl/pe.em:319
+#, c-format
+msgid "  --heap <size>                      Set initial size of the heap\n"
+msgstr "  --heap <besar>                     Set ukuran inisial dari heap\n"
+
+#: emultempl/pe.em:320
+#, c-format
+msgid "  --image-base <address>             Set start address of the executable\n"
+msgstr "  --image-base <alamat>               Set alamat awal dari executabel\n"
+
+#: emultempl/pe.em:321
+#, c-format
+msgid "  --major-image-version <number>     Set version number of the executable\n"
+msgstr "  --major-image-version <nomor>      Set nomor versi dari executabel\n"
+
+#: emultempl/pe.em:322
+#, c-format
+msgid "  --major-os-version <number>        Set minimum required OS version\n"
+msgstr "  --major-os-version <nomor>         Set versi minimum yang dibutuhkan oleh OS\n"
+
+#: emultempl/pe.em:323
+#, c-format
+msgid "  --major-subsystem-version <number> Set minimum required OS subsystem version\n"
+msgstr "  --major-subsystem-version <nomor> Set minimum versi OS subsistem yang dibutuhkan\n"
+
+#: emultempl/pe.em:324
+#, c-format
+msgid "  --minor-image-version <number>     Set revision number of the executable\n"
+msgstr "  --minor-image-version <nomor>      Set nomor revisi dari executabel\n"
+
+#: emultempl/pe.em:325
+#, c-format
+msgid "  --minor-os-version <number>        Set minimum required OS revision\n"
+msgstr "  --minor-os-version <nomor>         Set versi OS minimum yang dibutuhkan\n"
+
+#: emultempl/pe.em:326
+#, c-format
+msgid "  --minor-subsystem-version <number> Set minimum required OS subsystem revision\n"
+msgstr "  --minor-subsystem-version <nomor> Set versi OS subsistem minimum yang dibutuhkan\n"
+
+#: emultempl/pe.em:327
+#, c-format
+msgid "  --section-alignment <size>         Set section alignment\n"
+msgstr "  --section-alignment <besar>        Set daerah alignment\n"
+
+#: emultempl/pe.em:328
+#, c-format
+msgid "  --stack <size>                     Set size of the initial stack\n"
+msgstr "  --stack <besar>                    Set ukuran dari inisial stack\n"
+
+#: emultempl/pe.em:329
+#, c-format
+msgid "  --subsystem <name>[:<version>]     Set required OS subsystem [& version]\n"
+msgstr "  --subsistem <nama>[:<versi>]       Set OS subsistem yang dibutuhkan [& versi]\n"
+
+#: emultempl/pe.em:330
+#, c-format
+msgid "  --support-old-code                 Support interworking with old code\n"
+msgstr "  --support-old-code                 Dukung antar-kerja dengan kode lama\n"
+
+#: emultempl/pe.em:331
+#, c-format
+msgid "  --thumb-entry=<symbol>             Set the entry point to be Thumb <symbol>\n"
+msgstr "  --thumb-entry=<simbol>             Set titik masukan ke Thumb <simbol>\n"
+
+#: emultempl/pe.em:333
+#, c-format
+msgid "  --add-stdcall-alias                Export symbols with and without @nn\n"
+msgstr "  --add-stdcall-alias                Expor simbol dengan dan tanpa @nn\n"
+
+#: emultempl/pe.em:334
+#, c-format
+msgid "  --disable-stdcall-fixup            Don't link _sym to _sym@nn\n"
+msgstr "  --disable-stdcall-fixup            Jangan hubungkan _sym ke _sym@nn\n"
+
+#: emultempl/pe.em:335
+#, c-format
+msgid "  --enable-stdcall-fixup             Link _sym to _sym@nn without warnings\n"
+msgstr "  --enable-stdcall-fixup              Hubungkan _sym ke _sym@nn tanpa peringatan\n"
+
+#: emultempl/pe.em:336
+#, c-format
+msgid "  --exclude-symbols sym,sym,...      Exclude symbols from automatic export\n"
+msgstr "  --exclude-symbols sym,sym,...      Exclude simbol dari expor otomatis\n"
+
+#: emultempl/pe.em:337
+#, c-format
+msgid "  --exclude-libs lib,lib,...         Exclude libraries from automatic export\n"
+msgstr "  --exclude-libs lib,lib,...         Exclude perpustakaan dari otomatis expor\n"
+
+#: emultempl/pe.em:338
+#, c-format
+msgid "  --export-all-symbols               Automatically export all globals to DLL\n"
+msgstr "  --export-all-symbols               Otomatis expor seluruh global ke DLL\n"
+
+#: emultempl/pe.em:339
+#, c-format
+msgid "  --kill-at                          Remove @nn from exported symbols\n"
+msgstr "  --kill-at                          Hapus @nn dari simbol terexpor\n"
+
+#: emultempl/pe.em:340
+#, c-format
+msgid "  --out-implib <file>                Generate import library\n"
+msgstr "  --out-implib <berkas>              Buat perpustakaan impor\n"
+
+#: emultempl/pe.em:341
+#, c-format
+msgid "  --output-def <file>                Generate a .DEF file for the built DLL\n"
+msgstr "  --output-def <berkas>              Buat sebuah berkas .DEF untuk membuat DLL\n"
+
+#: emultempl/pe.em:342
+#, c-format
+msgid "  --warn-duplicate-exports           Warn about duplicate exports.\n"
+msgstr "  --warn-duplicate-exports           Peringatkan tetang duplikasi expor.\n"
+
+#: emultempl/pe.em:343
+#, c-format
+msgid ""
+"  --compat-implib                    Create backward compatible import libs;\n"
+"                                       create __imp_<SYMBOL> as well.\n"
+msgstr ""
+"  --compat-implib                    Buat backwar kompatibel impor libs;\n"
+"                                       buat __imp_<SIMBOL> juga.\n"
+
+#: emultempl/pe.em:345
+#, c-format
+msgid ""
+"  --enable-auto-image-base           Automatically choose image base for DLLs\n"
+"                                       unless user specifies one\n"
+msgstr ""
+"  --enable-auto-image-base           Otomatis pilih dasar image untuk DLL\n"
+"                                       kecuali pengguna menspesifikasikannya\n"
+
+#: emultempl/pe.em:347
+#, c-format
+msgid "  --disable-auto-image-base          Do not auto-choose image base. (default)\n"
+msgstr "  --disable-auto-image-base          Jangan auto-choose image base. (default)\n"
+
+#: emultempl/pe.em:348
+#, c-format
+msgid ""
+"  --dll-search-prefix=<string>       When linking dynamically to a dll without\n"
+"                                       an importlib, use <string><basename>.dll\n"
+"                                       in preference to lib<basename>.dll \n"
+msgstr ""
+"  --dll-search-prefix=<string>       Ketika menghubungkan secra dinamis ke sebuah dll tanpa\n"
+"                                       sebuah imporlib, gunakan <string><basename>.dll\n"
+"                                       dalam kesukaan ke lib<nama dasar>.dll\n"
+
+#: emultempl/pe.em:351
+#, c-format
+msgid ""
+"  --enable-auto-import               Do sophistcated linking of _sym to\n"
+"                                       __imp_sym for DATA references\n"
+msgstr ""
+"  --enable-auto-import               Lakukan penghubungan istimewa dari _sym ke\n"
+"                                       __imp_sym untuk referensi DATA\n"
+
+#: emultempl/pe.em:353
+#, c-format
+msgid "  --disable-auto-import              Do not auto-import DATA items from DLLs\n"
+msgstr "  --disable-auto-import              Jangan auto-import DATA items dari DLL\n"
+
+#: emultempl/pe.em:354
+#, c-format
+msgid ""
+"  --enable-runtime-pseudo-reloc      Work around auto-import limitations by\n"
+"                                       adding pseudo-relocations resolved at\n"
+"                                       runtime.\n"
+msgstr ""
+"  --enable-runtime-pseudo-reloc      Atasi pembatasan auto-import dengan\n"
+"                                       menambahkan pseudo-relocations diselesaikan di\n"
+"                                       waktu-jalan.\n"
+
+#: emultempl/pe.em:357
+#, c-format
+msgid ""
+"  --disable-runtime-pseudo-reloc     Do not add runtime pseudo-relocations for\n"
+"                                       auto-imported DATA.\n"
+msgstr ""
+"  --disable-runtime-pseudo-reloc     Jangan tambahkan runtime pseudo-relocations untuk\n"
+"                                       auto-imported DATA.\n"
+
+#: emultempl/pe.em:359
+#, c-format
+msgid ""
+"  --enable-extra-pe-debug            Enable verbose debug output when building\n"
+"                                       or linking to DLLs (esp. auto-import)\n"
+msgstr ""
+"  --enable-extra-pe-debug            Aktifkan keluaran verbose debug ketika membuat\n"
+"                                       atau menghubungkan ke DLL (lebih tepatnya auto-import)\n"
+
+#: emultempl/pe.em:362
+#, c-format
+msgid ""
+"  --large-address-aware              Executable supports virtual addresses\n"
+"                                       greater than 2 gigabytes\n"
+msgstr ""
+"  --large-address-aware              Executable dukung alamat maya\n"
+"                                       lebih besar dari 2 gigabytes\n"
+
+#: emultempl/pe.em:431
+msgid "%P: warning: bad version number in -subsystem option\n"
+msgstr "%P: peringatan: nomor versi buruk dalam opsi -subsistem\n"
+
+#: emultempl/pe.em:462
+msgid "%P%F: invalid subsystem type %s\n"
+msgstr "%P%F: tipe subsistem %s tidak valid\n"
+
+#: emultempl/pe.em:501
+msgid "%P%F: invalid hex number for PE parameter '%s'\n"
+msgstr "%P%F: nomor hex untuk parameter PE '%s' tidak valid\n"
+
+#: emultempl/pe.em:518
+msgid "%P%F: strange hex info for PE parameter '%s'\n"
+msgstr "%P%F: informasi hex untuk paramter PE '%s' aneh\n"
+
+#: emultempl/pe.em:535
+#, c-format
+msgid "%s: Can't open base file %s\n"
+msgstr "%s: Tidak dapat membuka berkas dasar %s\n"
+
+#: emultempl/pe.em:752
+msgid "%P: warning, file alignment > section alignment.\n"
+msgstr "%P: peringatan, berkas alignment > daerah alignment.\n"
+
+#: emultempl/pe.em:839 emultempl/pe.em:866
+#, c-format
+msgid "Warning: resolving %s by linking to %s\n"
+msgstr "Peringatan: meresolf %s dengan menghubungkan ke %s\n"
+
+#: emultempl/pe.em:844 emultempl/pe.em:871
+msgid "Use --enable-stdcall-fixup to disable these warnings\n"
+msgstr "Gunakan --enable-stdcall-fixup untuk menonaktifkan peringatan ini\n"
+
+#: emultempl/pe.em:845 emultempl/pe.em:872
+msgid "Use --disable-stdcall-fixup to disable these fixups\n"
+msgstr "Gunakan --disable-stdcall-fixup untuk menonaktifkan perbaikan ini\n"
+
+#: emultempl/pe.em:891
+#, c-format
+msgid "%C: Cannot get section contents - auto-import exception\n"
+msgstr "%C: Tidak dpaat memperoleh isi daerah - auto-import exception\n"
+
+#: emultempl/pe.em:931
+#, c-format
+msgid "Info: resolving %s by linking to %s (auto-import)\n"
+msgstr "Info: meresolf %s dengan menghubungkan ke %s (auto-import)\n"
+
+#: emultempl/pe.em:938
+msgid ""
+"%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n"
+"This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."
+msgstr ""
+"%P: peringatan: auto-importing telah diaktifkan tanpa --enable-auto-import dispesifikasikan di baris perintah.\n"
+"Ini seharusnya bekerja kecuali ini melibatkan konstan struktur data mereferensikan simbol dari auto-imported DLL."
+
+#: emultempl/pe.em:945 emultempl/pe.em:1113 emultempl/pe.em:1319 ldcref.c:488
+#: ldcref.c:586 ldmain.c:1105 ldmisc.c:285 pe-dll.c:622 pe-dll.c:1153
+#: pe-dll.c:1250
+msgid "%B%F: could not read symbols: %E\n"
+msgstr "%B%F: tidak dapat membaca simbol: %E\n"
+
+#: emultempl/pe.em:1018
+msgid "%F%P: cannot perform PE operations on non PE output file '%B'.\n"
+msgstr "%F%P: tidak dapat melakukan operasi PE di berkas keluaran bukan PE '%B'.\n"
+
+#: emultempl/pe.em:1360
+#, c-format
+msgid "Errors encountered processing file %s\n"
+msgstr "Error ditemui dalam pemrosesan berkas %s\n"
+
+#: emultempl/pe.em:1383
+#, c-format
+msgid "Errors encountered processing file %s for interworking"
+msgstr "Error ditemui dalam pemrosesan berkas %s untuk antar-kerja"
+
+#: emultempl/pe.em:1444 ldexp.c:540 ldlang.c:3131 ldlang.c:6448 ldlang.c:6479
+#: ldmain.c:1050
+msgid "%P%F: bfd_link_hash_lookup failed: %E\n"
+msgstr "%P%F: bfd_link_hash_lookup gagal: %E\n"
+
+#: ldcref.c:168
+msgid "%X%P: bfd_hash_table_init of cref table failed: %E\n"
+msgstr "%X%P: bfd_hash_table_init dari cref tabel gagal: %E\n"
+
+#: ldcref.c:174
+msgid "%X%P: cref_hash_lookup failed: %E\n"
+msgstr "%X%P: cref_hash_lookup gagal: %E\n"
+
+#: ldcref.c:184
+msgid "%X%P: cref alloc failed: %E\n"
+msgstr "%X%P: cref alokasi gagal: %E\n"
+
+#: ldcref.c:364
+#, c-format
+msgid ""
+"\n"
+"Cross Reference Table\n"
+"\n"
+msgstr ""
+"\n"
+"Tabel Referensi Silang\n"
+"\n"
+
+#: ldcref.c:365
+msgid "Symbol"
+msgstr "Simbol"
+
+#: ldcref.c:373
+#, c-format
+msgid "File\n"
+msgstr "Berkas\n"
+
+#: ldcref.c:377
+#, c-format
+msgid "No symbols\n"
+msgstr "Tidak ada simbol\n"
+
+#: ldcref.c:530
+msgid "%P: symbol `%T' missing from main hash table\n"
+msgstr "%P: simbol `%T' hilang dari tabel hash utama\n"
+
+#: ldcref.c:648 ldcref.c:655 ldmain.c:1139 ldmain.c:1146
+msgid "%B%F: could not read relocs: %E\n"
+msgstr "%B%F: tidak dapat membaca relokasi: %E\n"
+
+#. We found a reloc for the symbol.  The symbol is defined
+#. 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:682
+msgid "%X%C: prohibited cross reference from %s to `%T' in %s\n"
+msgstr "%X%C: dilarang menyilang referensi dari %s ke `%T' dalam %s\n"
+
+#: ldctor.c:84
+msgid "%P%X: Different relocs used in set %s\n"
+msgstr "%P%X: Relokasi berbeda digunakan dalam set %s\n"
+
+#: ldctor.c:102
+msgid "%P%X: Different object file formats composing set %s\n"
+msgstr "%P%X: Format berkas objek berbeda menyusun set %s\n"
+
+#: ldctor.c:281 ldctor.c:295
+msgid "%P%X: %s does not support reloc %s for set %s\n"
+msgstr "%P%X: %s tidak melayani relokasi %s untuk set %s\n"
+
+#: ldctor.c:316
+msgid "%P%X: Unsupported size %d for set %s\n"
+msgstr "%P%X: Ukuran %s tidak didukung untuk set %s\n"
+
+#: ldctor.c:337
+msgid ""
+"\n"
+"Set                 Symbol\n"
+"\n"
+msgstr ""
+"\n"
+"Set                 Simbol\n"
+"\n"
+
+#: ldemul.c:235
+#, c-format
+msgid "%S SYSLIB ignored\n"
+msgstr "%S SYSLIB diabaikan\n"
+
+#: ldemul.c:241
+#, c-format
+msgid "%S HLL ignored\n"
+msgstr "%S HLL diabaikan\n"
+
+#: ldemul.c:261
+msgid "%P: unrecognised emulation mode: %s\n"
+msgstr "%P: mode emulasi tidak dikenal: %s\n"
+
+#: ldemul.c:262
+msgid "Supported emulations: "
+msgstr "Emulasi yang didukung: "
+
+#: ldemul.c:304
+#, c-format
+msgid "  no emulation specific options.\n"
+msgstr "  tidak ada opsi spesifik emulasi.\n"
+
+#: ldexp.c:350
+#, c-format
+msgid "%F%S %% by zero\n"
+msgstr "%F%S %% dengan nol\n"
+
+#: ldexp.c:358
+#, c-format
+msgid "%F%S / by zero\n"
+msgstr "%F%S / dengan nol\n"
+
+#: ldexp.c:554
+#, c-format
+msgid "%X%S: unresolvable symbol `%s' referenced in expression\n"
+msgstr "%X%S: simbol tidak ditemukan `%s' direferensikan dalam expresi\n"
+
+#: ldexp.c:565
+#, c-format
+msgid "%F%S: undefined symbol `%s' referenced in expression\n"
+msgstr "%F%S: simbol `%s' tidak terdefinisi direferensikan dalam ekspresi\n"
+
+#: ldexp.c:586 ldexp.c:603 ldexp.c:630
+#, c-format
+msgid "%F%S: undefined section `%s' referenced in expression\n"
+msgstr "%F%S: daerah `%s' tidak terdefinisi direferensikan dalam ekspresi\n"
+
+#: ldexp.c:657 ldexp.c:670
+#, c-format
+msgid "%F%S: undefined MEMORY region `%s' referenced in expression\n"
+msgstr "%F%S: daerah `%s' MEMORY tidak terdefinisi direferensikan dalam ekspresi\n"
+
+#: ldexp.c:681
+#, c-format
+msgid "%F%S: unknown constant `%s' referenced in expression\n"
+msgstr "%F%S: konstan `%s' tidak diketahui direferensikan dalam ekspresi\n"
+
+#: ldexp.c:742
+#, c-format
+msgid "%F%S can not PROVIDE assignment to location counter\n"
+msgstr "%F%S tidak dapat MENYEDIAKAN assignment ke lokasi counter\n"
+
+#: ldexp.c:756
+#, c-format
+msgid "%F%S invalid assignment to location counter\n"
+msgstr "%F%S assignment tidak valid ke lokasi counter\n"
+
+#: ldexp.c:759
+#, c-format
+msgid "%F%S assignment to location counter invalid outside of SECTION\n"
+msgstr "%F%S assignment ke lokasi counter tidak valid diluar dari DAERAH\n"
+
+#: ldexp.c:768
+msgid "%F%S cannot move location counter backwards (from %V to %V)\n"
+msgstr "%F%S tidak dapat memindahkan lokasi counter backward (dari %V ke %V)\n"
+
+#: ldexp.c:807
+msgid "%P%F:%s: hash creation failed\n"
+msgstr "%P%F:%s: pembuatan hash gagal\n"
+
+#: ldexp.c:1066 ldexp.c:1091 ldexp.c:1150
+#, c-format
+msgid "%F%S: nonconstant expression for %s\n"
+msgstr "%F%S: ekspresi tidak konstan untuk %s\n"
+
+#: ldfile.c:137
+#, c-format
+msgid "attempt to open %s failed\n"
+msgstr "mencoba untuk membuka %s gagal\n"
+
+#: ldfile.c:139
+#, c-format
+msgid "attempt to open %s succeeded\n"
+msgstr "mencoba untuk membuka %s sukses\n"
+
+#: ldfile.c:145
+msgid "%F%P: invalid BFD target `%s'\n"
+msgstr "%F%P: target BFD `%s' tidak valid\n"
+
+#: ldfile.c:254 ldfile.c:283
+msgid "%P: skipping incompatible %s when searching for %s\n"
+msgstr "%P: melewatkan tidak kompatibel %s ketika mencari untuk %s\n"
+
+#: ldfile.c:267
+msgid "%F%P: attempted static link of dynamic object `%s'\n"
+msgstr "%F%P: mencoba menhubungkan statik dari objek dinamis `%s'\n"
+
+#: ldfile.c:379
+msgid "%F%P: %s (%s): No such file: %E\n"
+msgstr "%F%P: %s (%s): Tidak ada berkas seperti itu: %E\n"
+
+#: ldfile.c:382
+msgid "%F%P: %s: No such file: %E\n"
+msgstr "%F%P: %s: Tidak ada berkas seperti itu: %E\n"
+
+#: ldfile.c:412
+msgid "%F%P: cannot find %s inside %s\n"
+msgstr "%F%P: tidak dapat menemukan %s didalam %s\n"
+
+#: ldfile.c:415
+msgid "%F%P: cannot find %s\n"
+msgstr "%F%P: tidak dapat menemukan %s\n"
+
+#: ldfile.c:431 ldfile.c:449
+#, c-format
+msgid "cannot find script file %s\n"
+msgstr "tidak dapat menemukan berkas script %s\n"
+
+#: ldfile.c:433 ldfile.c:451
+#, c-format
+msgid "opened script file %s\n"
+msgstr "membukan berkas script %s\n"
+
+#: ldfile.c:601
+msgid "%P%F: cannot open linker script file %s: %E\n"
+msgstr "%P%F: tidak dapat membukan berkas script penghubung %s: %E\n"
+
+#: ldfile.c:648
+msgid "%P%F: cannot represent machine `%s'\n"
+msgstr "%P%F: tidak dapat merepresent mesin `%s'\n"
+
+#: ldlang.c:1124 ldlang.c:1166 ldlang.c:2880
+msgid "%P%F: can not create hash table: %E\n"
+msgstr "%P%F: tidak dapat membuat tabel hash: %E\n"
+
+#: ldlang.c:1209
+msgid "%P:%S: warning: redeclaration of memory region '%s'\n"
+msgstr "%P:%S: peringatan: redeklarasi dari daerah memori '%s'\n"
+
+#: ldlang.c:1215
+msgid "%P:%S: warning: memory region %s not declared\n"
+msgstr "%P:%S: peringatan: daerah memori %s tidak dideklarasikan\n"
+
+#: ldlang.c:1270 ldlang.c:1305
+msgid "%P%F: failed creating section `%s': %E\n"
+msgstr "%P%F: gagal membuat daerah `%s': %E\n"
+
+#: ldlang.c:1799
+#, c-format
+msgid ""
+"\n"
+"Discarded input sections\n"
+"\n"
+msgstr ""
+"\n"
+"Daerah masukan diabaikan\n"
+"\n"
+
+#: ldlang.c:1807
+msgid ""
+"\n"
+"Memory Configuration\n"
+"\n"
+msgstr ""
+"\n"
+"Konfigurasi memori\n"
+"\n"
+
+#: ldlang.c:1809
+msgid "Name"
+msgstr "Nama"
+
+#: ldlang.c:1809
+msgid "Origin"
+msgstr "Asal"
+
+#: ldlang.c:1809
+msgid "Length"
+msgstr "Panjang"
+
+#: ldlang.c:1809
+msgid "Attributes"
+msgstr "Atribut"
+
+#: ldlang.c:1849
+#, c-format
+msgid ""
+"\n"
+"Linker script and memory map\n"
+"\n"
+msgstr ""
+"\n"
+"Scrip penghubung dan peta memori\n"
+"\n"
+
+#: ldlang.c:1915
+msgid "%P%F: Illegal use of `%s' section\n"
+msgstr "%P%F: Penggunaan ilegal dari daerah `%s'\n"
+
+#: ldlang.c:1923
+msgid "%P%F: output format %s cannot represent section called %s\n"
+msgstr "%P%F: format keluaran %s tidak dapat merepresentasikan daerah disebut %s\n"
+
+#: ldlang.c:2473
+msgid "%B: file not recognized: %E\n"
+msgstr "%B: berkas tidak dikenali: %E\n"
+
+#: ldlang.c:2474
+msgid "%B: matching formats:"
+msgstr "%B: format cocok:"
+
+#: ldlang.c:2481
+msgid "%F%B: file not recognized: %E\n"
+msgstr "%F%B: berkas tidak dikenali: %E\n"
+
+#: ldlang.c:2551
+msgid "%F%B: member %B in archive is not an object\n"
+msgstr "%F%B: anggota %B dalam archive bukan sebuah objek\n"
+
+#: ldlang.c:2562 ldlang.c:2576
+msgid "%F%B: could not read symbols: %E\n"
+msgstr "%F%B: tidak dapat membaca simbol: %E\n"
+
+#: ldlang.c:2850
+msgid "%P: warning: could not find any targets that match endianness requirement\n"
+msgstr "%P: peringatan: tidak dapat menemukan target apapun yan cocok dengan endianness yang dibutuhkan\n"
+
+#: ldlang.c:2864
+msgid "%P%F: target %s not found\n"
+msgstr "%P%F: target %s tidak ditemukan\n"
+
+#: ldlang.c:2866
+msgid "%P%F: cannot open output file %s: %E\n"
+msgstr "%P%F: tidak dapat membuka berkas keluaran %s: %E\n"
+
+#: ldlang.c:2872
+msgid "%P%F:%s: can not make object file: %E\n"
+msgstr "%P%F:%s: tidak dapat membuat berkas objek: %E\n"
+
+#: ldlang.c:2876
+msgid "%P%F:%s: can not set architecture: %E\n"
+msgstr "%P%F:%s: tidak dapat menset arsitektur: %E\n"
+
+#: ldlang.c:3024
+msgid "%P%F: bfd_hash_lookup failed creating symbol %s\n"
+msgstr "%P%F: bfd_hash_lookup gagal membuat simbol %s\n"
+
+#: ldlang.c:3042
+msgid "%P%F: bfd_hash_allocate failed creating symbol %s\n"
+msgstr "%P%F: bfd_hash_allocate gagal membuat simbol %s\n"
+
+#: ldlang.c:3418
+msgid "%F%P: %s not found for insert\n"
+msgstr "%F%P: %s tidak ditemukan untuk insert\n"
+
+#: ldlang.c:3633
+msgid " load address 0x%V"
+msgstr " alamat beban 0x%V"
+
+#: ldlang.c:3873
+msgid "%W (size before relaxing)\n"
+msgstr "%W (ukuran sebelum relaxing)\n"
+
+#: ldlang.c:3964
+#, c-format
+msgid "Address of section %s set to "
+msgstr "Alamat dari daerah %s diset ke "
+
+#: ldlang.c:4117
+#, c-format
+msgid "Fail with %d\n"
+msgstr "Gagal dengan %d\n"
+
+#: ldlang.c:4397
+msgid "%X%P: section %s [%V -> %V] overlaps section %s [%V -> %V]\n"
+msgstr "%X%P: daerah %s [%V -> %V] daerah overlaps %s [%V -> %V]\n"
+
+#: ldlang.c:4413
+msgid "%X%P: region %s overflowed by %ld bytes\n"
+msgstr "%X%P: daerah %s overflowed dengan %ld bytes\n"
+
+#: ldlang.c:4436
+msgid "%X%P: address 0x%v of %B section %s is not within region %s\n"
+msgstr "%X%P: alamat 0x%v dari %B daerah %s tidak dalam daerah %s\n"
+
+#: ldlang.c:4447
+msgid "%X%P: %B section %s will not fit in region %s\n"
+msgstr "%X%P: %B daerah %s tidak akan memenuhi dalam daerah %s\n"
+
+#: ldlang.c:4487
+#, c-format
+msgid "%F%S: non constant or forward reference address expression for section %s\n"
+msgstr "%F%S: bukan constant atau ekspresi alamat referensi kedepan untuk daerah %s\n"
+
+#: ldlang.c:4512
+msgid "%P%X: Internal error on COFF shared library section %s\n"
+msgstr "%P%X: Internal error di COFF daerah library terbagi %s\n"
+
+#: ldlang.c:4571
+msgid "%P%F: error: no memory region specified for loadable section `%s'\n"
+msgstr "%P%F: error: bukan daerah memori dispesifikasikan untuk daerah loadabel `%s'\n"
+
+#: ldlang.c:4576
+msgid "%P: warning: no memory region specified for loadable section `%s'\n"
+msgstr "%P: peringatan: bukan daerah memori dispesifikasikan untuk daerah loadable `%s'\n"
+
+#: ldlang.c:4598
+msgid "%P: warning: changing start of section %s by %lu bytes\n"
+msgstr "%P: peringatan: mengubah awal dari daerah %s dengan %lu bytes\n"
+
+#: ldlang.c:4675
+msgid "%P: warning: dot moved backwards before `%s'\n"
+msgstr "%P: peringatan: dot dipindahkan kebelakang sebelum `%s'\n"
+
+#: ldlang.c:4848
+msgid "%P%F: can't relax section: %E\n"
+msgstr "%P%F: tidak dapat relaks daerah: %E\n"
+
+#: ldlang.c:5170
+msgid "%F%P: invalid data statement\n"
+msgstr "%F%P: statemen data tidak valid\n"
+
+#: ldlang.c:5203
+msgid "%F%P: invalid reloc statement\n"
+msgstr "%F%P: relokasi statement tidak valid\n"
+
+#: ldlang.c:5322
+msgid "%P%F: gc-sections requires either an entry or an undefined symbol\n"
+msgstr "%P%F: gc-section membutuhkan baik sebuah masukan atau sebuah simbol tidak terdefinisi\n"
+
+#: ldlang.c:5347
+msgid "%P%F:%s: can't set start address\n"
+msgstr "%P%F:%s: tidak dapat menset awal alamat\n"
+
+#: ldlang.c:5360 ldlang.c:5379
+msgid "%P%F: can't set start address\n"
+msgstr "%P%F: tidak dapt menset awal alamat\n"
+
+#: ldlang.c:5372
+msgid "%P: warning: cannot find entry symbol %s; defaulting to %V\n"
+msgstr "%P: peringatan: tidak dapat menemukan simbol masukan %s; default ke %V\n"
+
+#: ldlang.c:5384
+msgid "%P: warning: cannot find entry symbol %s; not setting start address\n"
+msgstr "%P: peringatan: tidak dapat menemukan simbol masukan %s; tidak menset awal alamat\n"
+
+#: ldlang.c:5434
+msgid "%P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported\n"
+msgstr "%P%F: Relocatable linking dengan relokasi dari format %s (%B) ke format %s (%B) tidak didukung\n"
+
+#: ldlang.c:5444
+msgid "%P%X: %s architecture of input file `%B' is incompatible with %s output\n"
+msgstr "%P%X: %s arsitektur dari berkas masukan `%b' tidak kompatibel dengan keluaran %s\n"
+
+#: ldlang.c:5466
+msgid "%P%X: failed to merge target specific data of file %B\n"
+msgstr "%P%X: gagal menggabungkan target spesifik data dari berkas %B\n"
+
+#: ldlang.c:5567
+msgid ""
+"\n"
+"Allocating common symbols\n"
+msgstr ""
+"\n"
+"Mengalokasikan simbol umum\n"
+
+#: ldlang.c:5568
+msgid ""
+"Common symbol       size              file\n"
+"\n"
+msgstr ""
+"Simbol umum         ukuran            berkas\n"
+"\n"
+
+#: ldlang.c:5701
+msgid "%P%F: invalid syntax in flags\n"
+msgstr "%P%F: sintaks dalam tanda tidak valid\n"
+
+#: ldlang.c:6069
+msgid "%P%F: Failed to create hash table\n"
+msgstr "%P%F: Gagal membuat tabel hash\n"
+
+#: ldlang.c:6370
+msgid "%P%F: multiple STARTUP files\n"
+msgstr "%P%F: multiple berkas STARTUP\n"
+
+#: ldlang.c:6418
+msgid "%X%P:%S: section has both a load address and a load region\n"
+msgstr "%X%P:%S: bagian memiliki baik alamat beban dan daerah beban\n"
+
+#: ldlang.c:6652
+msgid "%F%P: no sections assigned to phdrs\n"
+msgstr "%F%P: tidak ada daerah ditempatkan ke phdrs\n"
+
+#: ldlang.c:6689
+msgid "%F%P: bfd_record_phdr failed: %E\n"
+msgstr "%F%P: bfd_record_phdr gagal: %E\n"
+
+#: ldlang.c:6709
+msgid "%X%P: section `%s' assigned to non-existent phdr `%s'\n"
+msgstr "%X%P: daerah `%s' ditempatkan ke phdr `%s' tidak-ada\n"
+
+#: ldlang.c:7100
+msgid "%X%P: unknown language `%s' in version information\n"
+msgstr "%X%P: bahasa tidak diketahui `%s' dalam informasi versi\n"
+
+#: ldlang.c:7242
+msgid "%X%P: anonymous version tag cannot be combined with other version tags\n"
+msgstr "%X%P: versi anonim tag tidak dapat dikombinasikan dengan versi lainnya\n"
+
+#: ldlang.c:7251
+msgid "%X%P: duplicate version tag `%s'\n"
+msgstr "%X%P: duplikasi versi tag `%s'\n"
+
+#: ldlang.c:7271 ldlang.c:7280 ldlang.c:7297 ldlang.c:7307
+msgid "%X%P: duplicate expression `%s' in version information\n"
+msgstr "%X%P: duplikasi ekspresi `%s' dalam informasi versi\n"
+
+#: ldlang.c:7347
+msgid "%X%P: unable to find version dependency `%s'\n"
+msgstr "%X%P: tidak dapat menemukan dependensi versi `%s'\n"
+
+#: ldlang.c:7369
+msgid "%X%P: unable to read .exports section contents\n"
+msgstr "%X%P: tidak dapat membaca isi daerah .exports\n"
+
+#: ldmain.c:233
+msgid "%X%P: can't set BFD default target to `%s': %E\n"
+msgstr "%X%P: tidak dapat menset BFD default target ke `%s': %E\n"
+
+#: ldmain.c:296
+msgid "%P%F: --relax and -r may not be used together\n"
+msgstr "%P%F: --relax dan -r tidak boleh digunakan bersama\n"
+
+#: ldmain.c:298
+msgid "%P%F: -r and -shared may not be used together\n"
+msgstr "%P%F: -r dan -shared tidak boleh digunakan bersama\n"
+
+#: ldmain.c:341
+msgid "%P%F: -F may not be used without -shared\n"
+msgstr "%P%F: -F tidak boleh digunakan tanpa -shared\n"
+
+#: ldmain.c:343
+msgid "%P%F: -f may not be used without -shared\n"
+msgstr "%P%F: -f tidak boleh digunakan tanpa -shared\n"
+
+#: ldmain.c:391
+msgid "using external linker script:"
+msgstr "menggunakan scrip penghubung eksternal:"
+
+#: ldmain.c:393
+msgid "using internal linker script:"
+msgstr "menggunakan scrip penghubung internal:"
+
+#: ldmain.c:427
+msgid "%P%F: no input files\n"
+msgstr "%P%F: bukan berkas masukan\n"
+
+#: ldmain.c:431
+msgid "%P: mode %s\n"
+msgstr "%P: mode %s\n"
+
+#: ldmain.c:447
+msgid "%P%F: cannot open map file %s: %E\n"
+msgstr "%P%F: tidak dapat membuka berkas map %s: %E\n"
+
+#: ldmain.c:479
+msgid "%P: link errors found, deleting executable `%s'\n"
+msgstr "%P: link error ditemukan, menghapus executabel `%s'\n"
+
+#: ldmain.c:488
+msgid "%F%B: final close failed: %E\n"
+msgstr "%F%B: penutupan akhir gagal: %E\n"
+
+#: ldmain.c:514
+msgid "%X%P: unable to open for source of copy `%s'\n"
+msgstr "%X%P: tidak dapat membuka untuk sumber dari penyalinan `%s'\n"
+
+#: ldmain.c:517
+msgid "%X%P: unable to open for destination of copy `%s'\n"
+msgstr "%X%P: tidak dapat membuka untuk tujuan dari penyalinan `%s'\n"
+
+#: ldmain.c:524
+msgid "%P: Error writing file `%s'\n"
+msgstr "%P: Error menulis berkas `%s'\n"
+
+#: ldmain.c:529 pe-dll.c:1613
+#, c-format
+msgid "%P: Error closing file `%s'\n"
+msgstr "%P: Error menutup berkas `%s'\n"
+
+#: ldmain.c:545
+#, c-format
+msgid "%s: total time in link: %ld.%06ld\n"
+msgstr "%s: total waktu dalam link: %ld.%06ld\n"
+
+#: ldmain.c:548
+#, c-format
+msgid "%s: data size %ld\n"
+msgstr "%s: ukuran data %ld\n"
+
+#: ldmain.c:631
+msgid "%P%F: missing argument to -m\n"
+msgstr "%P%F: hilang argumen ke -m\n"
+
+#: ldmain.c:678 ldmain.c:697 ldmain.c:728
+msgid "%P%F: bfd_hash_table_init failed: %E\n"
+msgstr "%P%F: bfd_hash_table_init gagal: %E\n"
+
+#: ldmain.c:682 ldmain.c:701
+msgid "%P%F: bfd_hash_lookup failed: %E\n"
+msgstr "%P%F: bfd_hash_lookup gagal: %E\n"
+
+#: ldmain.c:715
+msgid "%X%P: error: duplicate retain-symbols-file\n"
+msgstr "%X%P: error: duplikasi retain-symbols-file\n"
+
+#: ldmain.c:758
+msgid "%P%F: bfd_hash_lookup for insertion failed: %E\n"
+msgstr "%P%F: bfd_hash_lookup untuk insertion gagal: %E\n"
+
+#: ldmain.c:763
+msgid "%P: `-retain-symbols-file' overrides `-s' and `-S'\n"
+msgstr "%P: `-retain-symbols-file' memaksa `-s' dana `-S'\n"
+
+#: ldmain.c:827
+#, c-format
+msgid ""
+"Archive member included because of file (symbol)\n"
+"\n"
+msgstr ""
+"Anggota archive dimasukan karena berkas (simbol)\n"
+"\n"
+
+#: ldmain.c:897
+msgid "%X%C: multiple definition of `%T'\n"
+msgstr "%X%X: multiple definisi dari `%T'\n"
+
+#: ldmain.c:900
+msgid "%D: first defined here\n"
+msgstr "%D: pertama didefinisikan disini\n"
+
+#: ldmain.c:904
+msgid "%P: Disabling relaxation: it will not work with multiple definitions\n"
+msgstr "%P: Menonaktifkan relaksasi: ini tidak akan bekerja dengan multiple definisi\n"
+
+#: ldmain.c:934
+msgid "%B: warning: definition of `%T' overriding common\n"
+msgstr "%B: peringatan: definisi dari `%T' memaksa umum\n"
+
+#: ldmain.c:937
+msgid "%B: warning: common is here\n"
+msgstr "%B: peringatan: umum disini\n"
+
+#: ldmain.c:944
+msgid "%B: warning: common of `%T' overridden by definition\n"
+msgstr "%B: peringatan: umum dari `%T' dipaksa oleh definisi\n"
+
+#: ldmain.c:947
+msgid "%B: warning: defined here\n"
+msgstr "%B: peringatan: terdefinisi disini\n"
+
+#: ldmain.c:954
+msgid "%B: warning: common of `%T' overridden by larger common\n"
+msgstr "%B: peringatan: umum dari `%T' dipaksa oleh umum lebih besar\n"
+
+#: ldmain.c:957
+msgid "%B: warning: larger common is here\n"
+msgstr "%B: peringatan: umum lebih besar disini\n"
+
+#: ldmain.c:961
+msgid "%B: warning: common of `%T' overriding smaller common\n"
+msgstr "%B: peringatan: umum dari `%T' memaksa umum lebih kecil\n"
+
+#: ldmain.c:964
+msgid "%B: warning: smaller common is here\n"
+msgstr "%B: peringatan: umum lebih kecil disini\n"
+
+#: ldmain.c:968
+msgid "%B: warning: multiple common of `%T'\n"
+msgstr "%B: peringatan: multiple umum dari `%T'\n"
+
+#: ldmain.c:970
+msgid "%B: warning: previous common is here\n"
+msgstr "%B: peringatan: umum sebelumnya disini\n"
+
+#: ldmain.c:990 ldmain.c:1028
+msgid "%P: warning: global constructor %s used\n"
+msgstr "%P: peringatan: global konstruktor %s digunakan\n"
+
+#: ldmain.c:1038
+msgid "%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n"
+msgstr "%P%F: BFD backed error: BFD_RELOC_CTOR tidak didukung\n"
+
+#. We found a reloc for the symbol we are looking for.
+#: ldmain.c:1092 ldmain.c:1094 ldmain.c:1096 ldmain.c:1114 ldmain.c:1159
+msgid "warning: "
+msgstr "peringatan: "
+
+#: ldmain.c:1194
+msgid "%F%P: bfd_hash_table_init failed: %E\n"
+msgstr "%F%P: bfd_hash_table_init gagal: %E\n"
+
+#: ldmain.c:1201
+msgid "%F%P: bfd_hash_lookup failed: %E\n"
+msgstr "%F%P: bfd_hash_lookup gagal: %E\n"
+
+#: ldmain.c:1222
+msgid "%X%C: undefined reference to `%T'\n"
+msgstr "%X%C: referensi ke `%T' tidak terdefinisi\n"
+
+#: ldmain.c:1225
+msgid "%C: warning: undefined reference to `%T'\n"
+msgstr "%C: peringatan: referensi ke `%T' tidak terdefinisi\n"
+
+#: ldmain.c:1231
+msgid "%X%D: more undefined references to `%T' follow\n"
+msgstr "%X%D: lebih referensi ke `%T' tidak terdefinisi mengikuti\n"
+
+#: ldmain.c:1234
+msgid "%D: warning: more undefined references to `%T' follow\n"
+msgstr "%D: peringatan: lebih referensi ke `%T' tidak terdefinisi mengikuti\n"
+
+#: ldmain.c:1245
+msgid "%X%B: undefined reference to `%T'\n"
+msgstr "%X%B: referensi ke `%T' tidak terdefinisi\n"
+
+#: ldmain.c:1248
+msgid "%B: warning: undefined reference to `%T'\n"
+msgstr "%B: peringatan: referensi ke `%T' tidak terdefinisi\n"
+
+#: ldmain.c:1254
+msgid "%X%B: more undefined references to `%T' follow\n"
+msgstr "%X%B: lebih referensi ke `%T' tidak terdefinisi mengikuti\n"
+
+#: ldmain.c:1257
+msgid "%B: warning: more undefined references to `%T' follow\n"
+msgstr "%B: peringatan: lebih referensi ke `%T' tidak terdefinisi mengikuti\n"
+
+#: ldmain.c:1296
+msgid " additional relocation overflows omitted from the output\n"
+msgstr " tambahan relokasi overflow diabaikan dari keluaran\n"
+
+#: ldmain.c:1309
+msgid " relocation truncated to fit: %s against undefined symbol `%T'"
+msgstr " relokasi dipotong supaya pas: %s terhadap simbol `%T' tidak terdefinisi"
+
+#: ldmain.c:1314
+msgid " relocation truncated to fit: %s against symbol `%T' defined in %A section in %B"
+msgstr " relokasi dipotong supaya pas: %s terhadap simbol `%T' terdefinisi dalam daerah %A dalam %B"
+
+#: ldmain.c:1326
+msgid " relocation truncated to fit: %s against `%T'"
+msgstr " relokasi dipotong supaya pas: %s terhadap `%T'"
+
+#: ldmain.c:1343
+#, c-format
+msgid "%X%C: dangerous relocation: %s\n"
+msgstr "%X%C: relokasi berbahaya: %s\n"
+
+#: ldmain.c:1358
+msgid "%X%C: reloc refers to symbol `%T' which is not being output\n"
+msgstr "%X%C: relokasi mereferensikan ke simbol `%T' dimana tidak dikeluarkan\n"
+
+#: ldmisc.c:148
+#, c-format
+msgid "no symbol"
+msgstr "bukan simbol"
+
+#: ldmisc.c:245
+#, c-format
+msgid "built in linker script:%u"
+msgstr "scrip penghubung built-in: %u"
+
+#: ldmisc.c:323
+msgid "%B: In function `%T':\n"
+msgstr "%B: Dalam fungsi `%T':\n"
+
+#: ldmisc.c:445
+msgid "%F%P: internal error %s %d\n"
+msgstr "%F%P: internal error %s %d\n"
+
+#: ldmisc.c:494
+msgid "%P: internal error: aborting at %s line %d in %s\n"
+msgstr "%P: internal error: membatalkan di %s baris %d dalam %s\n"
+
+#: ldmisc.c:497
+msgid "%P: internal error: aborting at %s line %d\n"
+msgstr "%P: internal error: membatalkan di %s baris %d\n"
+
+#: ldmisc.c:499
+msgid "%P%F: please report this bug\n"
+msgstr "%P%F: tolong laporkan bug ini\n"
+
+#. Output for noisy == 2 is intended to follow the GNU standards.
+#: ldver.c:38
+#, c-format
+msgid "GNU ld %s\n"
+msgstr "GNU ld %s\n"
+
+#: ldver.c:42
+#, c-format
+msgid "Copyright 2007 Free Software Foundation, Inc.\n"
+msgstr "Hak cipta 2007 Free Software Foundation, Inc.\n"
+
+#: ldver.c:43
+#, c-format
+msgid ""
+"This program is free software; you may redistribute it under the terms of\n"
+"the GNU General Public License version 3 or (at your option) a later version.\n"
+"This program has absolutely no warranty.\n"
+msgstr ""
+"Aplikasi ini adalah aplikasi bebas; anda boleh mendistribusikannya dibawah ketentuan dari\n"
+"Lisensi Umum Publik GNU versi 3 atau (menurut pendapat anda) untuk versi selanjutnya.\n"
+"Aplikasi ini tidak memiliki garansi apapun.\n"
+
+#: ldver.c:53
+#, c-format
+msgid "  Supported emulations:\n"
+msgstr "  Emulasi yang didukung:\n"
+
+#: ldwrite.c:56 ldwrite.c:196
+msgid "%P%F: bfd_new_link_order failed\n"
+msgstr "%P%F: bfd_new_link_order gagal\n"
+
+#: ldwrite.c:354
+msgid "%F%P: cannot create split section name for %s\n"
+msgstr "%F%P: tidak dapat membuat nama daerah split untuk %s\n"
+
+#: ldwrite.c:366
+msgid "%F%P: clone section failed: %E\n"
+msgstr "%F%P: penyalinan daerah gagal: %E\n"
+
+#: ldwrite.c:404
+#, c-format
+msgid "%8x something else\n"
+msgstr "%8x sesuatu yang lain\n"
+
+#: ldwrite.c:574
+msgid "%F%P: final link failed: %E\n"
+msgstr "%F%P: final link gagal: %E\n"
+
+#: lexsup.c:206 lexsup.c:344
+msgid "KEYWORD"
+msgstr "KATA-KUNCI"
+
+#: lexsup.c:206
+msgid "Shared library control for HP/UX compatibility"
+msgstr "Perpustakaan terbagi kontrol untuk kompatibilitas HP/UX"
+
+#: lexsup.c:209
+msgid "ARCH"
+msgstr "ARS"
+
+#: lexsup.c:209
+msgid "Set architecture"
+msgstr "Set arsitektur"
+
+#: lexsup.c:211 lexsup.c:454
+msgid "TARGET"
+msgstr "TARGET"
+
+#: lexsup.c:211
+msgid "Specify target for following input files"
+msgstr "Spesifikasikan target untuk berkas masukan berikut"
+
+#: lexsup.c:214 lexsup.c:263 lexsup.c:275 lexsup.c:288 lexsup.c:290
+#: lexsup.c:408 lexsup.c:466 lexsup.c:526 lexsup.c:539
+msgid "FILE"
+msgstr "BERKAS"
+
+#: lexsup.c:214
+msgid "Read MRI format linker script"
+msgstr "Baca format MRI scrip penghubung"
+
+#: lexsup.c:216
+msgid "Force common symbols to be defined"
+msgstr "Paksa simbol umum untuk didefinisikan"
+
+#: lexsup.c:220 lexsup.c:510 lexsup.c:512 lexsup.c:514
+msgid "ADDRESS"
+msgstr "ALAMAT"
+
+#: lexsup.c:220
+msgid "Set start address"
+msgstr "Set awal alamat"
+
+#: lexsup.c:222
+msgid "Export all dynamic symbols"
+msgstr "Expor seluruh simbol dinamis"
+
+#: lexsup.c:224
+msgid "Link big-endian objects"
+msgstr "Hubungkan objek big-endian"
+
+#: lexsup.c:226
+msgid "Link little-endian objects"
+msgstr "Hubungkan objek little-endian"
+
+#: lexsup.c:228 lexsup.c:231
+msgid "SHLIB"
+msgstr "SHLIB"
+
+#: lexsup.c:228
+msgid "Auxiliary filter for shared object symbol table"
+msgstr "Tambahan filter untuk simbol tabel objek terbagi"
+
+#: lexsup.c:231
+msgid "Filter for shared object symbol table"
+msgstr "Filter untuk simbol tabel objek terbagi"
+
+#: lexsup.c:234
+msgid "Ignored"
+msgstr "Diabaikan"
+
+#: lexsup.c:236
+msgid "SIZE"
+msgstr "UKURAN"
+
+#: lexsup.c:236
+msgid "Small data size (if no size, same as --shared)"
+msgstr "Ukuran data kecil (jika tidak ada ukuran, sama dengan --shared)"
+
+#: lexsup.c:239
+msgid "FILENAME"
+msgstr "NAMA-BERKAS"
+
+#: lexsup.c:239
+msgid "Set internal name of shared library"
+msgstr "Set nama internal dari perpustakaan terbagi"
+
+#: lexsup.c:241
+msgid "PROGRAM"
+msgstr "APLIKASI"
+
+#: lexsup.c:241
+msgid "Set PROGRAM as the dynamic linker to use"
+msgstr "Set APLIKASI sebagai penghubung dinamis yang akan digunakan"
+
+#: lexsup.c:244
+msgid "LIBNAME"
+msgstr "NAMA-LIB"
+
+#: lexsup.c:244
+msgid "Search for library LIBNAME"
+msgstr "Cari untuk perpustakaan NAMA-LIB"
+
+#: lexsup.c:246
+msgid "DIRECTORY"
+msgstr "DIREKTORI"
+
+#: lexsup.c:246
+msgid "Add DIRECTORY to library search path"
+msgstr "Tambahkan DIREKTORI ke jalur pencarian perpustakaan"
+
+#: lexsup.c:249
+msgid "Override the default sysroot location"
+msgstr "Paksa lokasi default sysroot"
+
+#: lexsup.c:251
+msgid "EMULATION"
+msgstr "EMULASI"
+
+#: lexsup.c:251
+msgid "Set emulation"
+msgstr "Set emulasi"
+
+#: lexsup.c:253
+msgid "Print map file on standard output"
+msgstr "Tampilkan peta berkas di standar keluaran"
+
+#: lexsup.c:255
+msgid "Do not page align data"
+msgstr "Jangan page align data"
+
+#: lexsup.c:257
+msgid "Do not page align data, do not make text readonly"
+msgstr "Jangan page align data, jangan buat text baca-saja"
+
+#: lexsup.c:260
+msgid "Page align data, make text readonly"
+msgstr "Page align data, buat text baca-saja"
+
+#: lexsup.c:263
+msgid "Set output file name"
+msgstr "Set keluaran nama berkas"
+
+#: lexsup.c:265
+msgid "Optimize output file"
+msgstr "Optimisasi berkas keluaran"
+
+#: lexsup.c:267
+msgid "Ignored for SVR4 compatibility"
+msgstr "Abaikan untuk kompabilitas SVR4"
+
+#: lexsup.c:271
+msgid "Generate relocatable output"
+msgstr "Buat keluaran yang dapat direlokasikan"
+
+#: lexsup.c:275
+msgid "Just link symbols (if directory, same as --rpath)"
+msgstr "Hubungkan saja simbol (jika direktori, sama dengan --rpath)"
+
+#: lexsup.c:278
+msgid "Strip all symbols"
+msgstr "Strip seluruh simbol"
+
+#: lexsup.c:280
+msgid "Strip debugging symbols"
+msgstr "Strip debugging simbol"
+
+#: lexsup.c:282
+msgid "Strip symbols in discarded sections"
+msgstr "Strip simbol dalam daerah yang diabaikan"
+
+#: lexsup.c:284
+msgid "Do not strip symbols in discarded sections"
+msgstr "Jangan strip simbol dalam daerah yang diabaikan"
+
+#: lexsup.c:286
+msgid "Trace file opens"
+msgstr "Telusuri berkas terbuka"
+
+#: lexsup.c:288
+msgid "Read linker script"
+msgstr "Baca scrip penghubung"
+
+#: lexsup.c:290
+msgid "Read default linker script"
+msgstr "Baca default scrip penghubung"
+
+#: lexsup.c:294 lexsup.c:312 lexsup.c:385 lexsup.c:406 lexsup.c:503
+#: lexsup.c:529 lexsup.c:565
+msgid "SYMBOL"
+msgstr "SIMBOL"
+
+#: lexsup.c:294
+msgid "Start with undefined reference to SYMBOL"
+msgstr "Awali dengan referensi ke SIMBOL tidak terdefinisi"
+
+#: lexsup.c:297
+msgid "[=SECTION]"
+msgstr "[=DAERAH]"
+
+#: lexsup.c:298
+msgid "Don't merge input [SECTION | orphan] sections"
+msgstr "Jangan gabungkan masukan [DAERAH | orphan] daerah"
+
+#: lexsup.c:300
+msgid "Build global constructor/destructor tables"
+msgstr "Buat tabel global konstruktor/desktruktor"
+
+#: lexsup.c:302
+msgid "Print version information"
+msgstr "Tampilkan informasi versi"
+
+#: lexsup.c:304
+msgid "Print version and emulation information"
+msgstr "Tampilkan versi dan informasi emulasi"
+
+#: lexsup.c:306
+msgid "Discard all local symbols"
+msgstr "Abaikan seluruh simbol lokal"
+
+#: lexsup.c:308
+msgid "Discard temporary local symbols (default)"
+msgstr "Abaikan simbol lokal sementara (baku)"
+
+#: lexsup.c:310
+msgid "Don't discard any local symbols"
+msgstr "Jangan abaikan simbol lokal apapun"
+
+#: lexsup.c:312
+msgid "Trace mentions of SYMBOL"
+msgstr "Telusuri SIMBOL yang disebutkan"
+
+#: lexsup.c:314 lexsup.c:468 lexsup.c:470
+msgid "PATH"
+msgstr "JALUR"
+
+#: lexsup.c:314
+msgid "Default search path for Solaris compatibility"
+msgstr "Jalur pencarian baku untuk kompabilitas Solaris"
+
+#: lexsup.c:317
+msgid "Start a group"
+msgstr "Awal dari grup"
+
+#: lexsup.c:319
+msgid "End a group"
+msgstr "Akhir dari grup"
+
+#: lexsup.c:323
+msgid "Accept input files whose architecture cannot be determined"
+msgstr "Terima berkas masukan dimana arsitektur tidak dapat ditentukan"
+
+#: lexsup.c:327
+msgid "Reject input files whose architecture is unknown"
+msgstr "Tolak berkas masukan dimana arsitektur tidak dikenal"
+
+#: lexsup.c:330
+msgid ""
+"Set DT_NEEDED tags for DT_NEEDED entries in\n"
+"                                following dynamic libs"
+msgstr ""
+"Set DT_NEEDED tags untuk DT_NEEDED masukan dalam\n"
+"                                 mengikuti libs dinamis berikut"
+
+#: lexsup.c:334
+msgid ""
+"Do not set DT_NEEDED tags for DT_NEEDED entries\n"
+"                                in following dynamic libs"
+msgstr ""
+"Jangan menset DT_NEEDED tags untuk masukan DT_NEEDED\n"
+"                                dalam libs dinamis berikut"
+
+#: lexsup.c:338
+msgid "Only set DT_NEEDED for following dynamic libs if used"
+msgstr "Hanya set DT_NEEDED untuk dinamis libs berikut jika digunakan"
+
+#: lexsup.c:341
+msgid "Always set DT_NEEDED for following dynamic libs"
+msgstr "Selalu menset DT_NEEDED untuk dinamis libs berikut"
+
+#: lexsup.c:344
+msgid "Ignored for SunOS compatibility"
+msgstr "Abaikan untuk kompabilitas SunOS"
+
+#: lexsup.c:346
+msgid "Link against shared libraries"
+msgstr "Hubungkan terhadap library terbagi"
+
+#: lexsup.c:352
+msgid "Do not link against shared libraries"
+msgstr "Jangan hubungkan terhadap perpustakaan terbagi"
+
+#: lexsup.c:360
+msgid "Bind global references locally"
+msgstr "Ikat referensi global secara lokal"
+
+#: lexsup.c:362
+msgid "Bind global function references locally"
+msgstr "Ikat referensi fungsi global secara lokal"
+
+#: lexsup.c:364
+msgid "Check section addresses for overlaps (default)"
+msgstr "Periksa daerah alamat untuk tumpang-tindih (baku)"
+
+#: lexsup.c:367
+msgid "Do not check section addresses for overlaps"
+msgstr "Jangan periksa daerah alamat untuk tumpang-tindih"
+
+#: lexsup.c:370
+msgid "Output cross reference table"
+msgstr "Keluarkan tabel referensi silang"
+
+#: lexsup.c:372
+msgid "SYMBOL=EXPRESSION"
+msgstr "SIMBOL=EKSPRESI"
+
+#: lexsup.c:372
+msgid "Define a symbol"
+msgstr "Definisikan sebuah simbol"
+
+#: lexsup.c:374
+msgid "[=STYLE]"
+msgstr "[=GAYA]"
+
+#: lexsup.c:374
+msgid "Demangle symbol names [using STYLE]"
+msgstr "Demangle nama simbol [gunakan GAYA]"
+
+#: lexsup.c:377
+msgid "Generate embedded relocs"
+msgstr "Buat embedded relokasi"
+
+#: lexsup.c:379
+msgid "Treat warnings as errors"
+msgstr "Perlakukan peringatan sebagai error"
+
+#: lexsup.c:382
+msgid "Do not treat warnings as errors (default)"
+msgstr "Jangan perlakukan peringatan sebagai error (baku)"
+
+#: lexsup.c:385
+msgid "Call SYMBOL at unload-time"
+msgstr "Panggil SIMBOL di unload-time"
+
+#: lexsup.c:387
+msgid "Force generation of file with .exe suffix"
+msgstr "Paksa pembuatan dari berkas dengan akhiran .exe"
+
+#: lexsup.c:389
+msgid "Remove unused sections (on some targets)"
+msgstr "Hapus daerah yang tidak digunakan (di beberapa target)"
+
+#: lexsup.c:392
+msgid "Don't remove unused sections (default)"
+msgstr "Jangan hapus daerah yang tidak digunakan (baku)"
+
+#: lexsup.c:395
+msgid "List removed unused sections on stderr"
+msgstr "Tampilkan daerah tidak digunakan yang dihapus di stderr"
+
+#: lexsup.c:398
+msgid "Do not list removed unused sections"
+msgstr "Jangan tampilkan daerah tidak digunakan yang dihapus"
+
+#: lexsup.c:401
+msgid "Set default hash table size close to <NUMBER>"
+msgstr "Set ukuran default tabel hash mendekati ke <NOMOR>"
+
+#: lexsup.c:404
+msgid "Print option help"
+msgstr "Tampilkan opsi bantuan"
+
+#: lexsup.c:406
+msgid "Call SYMBOL at load-time"
+msgstr "Panggil SIMBOL di load-time"
+
+#: lexsup.c:408
+msgid "Write a map file"
+msgstr "Tulis sebuah berkas peta"
+
+#: lexsup.c:410
+msgid "Do not define Common storage"
+msgstr "Jangan definisikan penyimpanan umum"
+
+#: lexsup.c:412
+msgid "Do not demangle symbol names"
+msgstr "Jangan demangle nama simbol"
+
+#: lexsup.c:414
+msgid "Use less memory and more disk I/O"
+msgstr "Gunakan sedikit memori dan lebih disk I/O"
+
+#: lexsup.c:416
+msgid "Do not allow unresolved references in object files"
+msgstr "Jangan perbolehkan referensi tidak terselesaikan dalam berkas objek"
+
+#: lexsup.c:419
+msgid "Allow unresolved references in shared libaries"
+msgstr "Ijinkan referensi tidak terselesaikan dalam perpustakaan terbagi"
+
+#: lexsup.c:423
+msgid "Do not allow unresolved references in shared libs"
+msgstr "Jangan ijinkan referensi tidak terselesaikan dalam perpustakaan terbagi"
+
+#: lexsup.c:427
+msgid "Allow multiple definitions"
+msgstr "Ijinkan multiple definisi"
+
+#: lexsup.c:429
+msgid "Disallow undefined version"
+msgstr "Larang versi tidak terdefinisi"
+
+#: lexsup.c:431
+msgid "Create default symbol version"
+msgstr "Buat default versi simbol"
+
+#: lexsup.c:434
+msgid "Create default symbol version for imported symbols"
+msgstr "Buat default versi simbol untuk simbol yang diimpor"
+
+#: lexsup.c:437
+msgid "Don't warn about mismatched input files"
+msgstr "Jangan peringatkan mengenai ketidakcocokan dalam berkas masukan"
+
+#: lexsup.c:440
+msgid "Don't warn on finding an incompatible library"
+msgstr "Jangan peringatkan dalam pencarian perpustakaan tidak kompatibel"
+
+#: lexsup.c:443
+msgid "Turn off --whole-archive"
+msgstr "Tidak aktifkan --whole-archive"
+
+#: lexsup.c:445
+msgid "Create an output file even if errors occur"
+msgstr "Buat sebuah berkas keluaran walaupun error terjadi"
+
+#: lexsup.c:450
+msgid ""
+"Only use library directories specified on\n"
+"                                the command line"
+msgstr ""
+"Hanya gunakan direktori perpustakaan yang dispesifikasikan dalam\n"
+"                                baris perintah"
+
+#: lexsup.c:454
+msgid "Specify target of output file"
+msgstr "Spesifikasikan target dari berkas keluaran"
+
+#: lexsup.c:457
+msgid "Ignored for Linux compatibility"
+msgstr "Abaikan untuk kompabilitas Linux"
+
+#: lexsup.c:460
+msgid "Reduce memory overheads, possibly taking much longer"
+msgstr "Kurangi memori overheads, mungkin membutuhkan waktu lebih lama"
+
+#: lexsup.c:463
+msgid "Relax branches on certain targets"
+msgstr "Relax cabang di beberapa targets"
+
+#: lexsup.c:466
+msgid "Keep only symbols listed in FILE"
+msgstr "Jaga hanya simbol terdaftar dalam BERKAS"
+
+#: lexsup.c:468
+msgid "Set runtime shared library search path"
+msgstr "Set waktu-jalan perpustakaan terbagi jalur pencarian"
+
+#: lexsup.c:470
+msgid "Set link time shared library search path"
+msgstr "Set waktu hubung perpustakaan terbagi jalur pencarian"
+
+#: lexsup.c:473
+msgid "Create a shared library"
+msgstr "Buat sebuah perpustakaan terbagi"
+
+#: lexsup.c:477
+msgid "Create a position independent executable"
+msgstr "Buat sebuat executable bebas posisi"
+
+#: lexsup.c:481
+msgid "[=ascending|descending]"
+msgstr "[=ascending|descending]"
+
+#: lexsup.c:482
+msgid "Sort common symbols by alignment [in specified order]"
+msgstr "Urutkan simbol umum dengan alignmen [dalam urutan yang dispesifikasikan]"
+
+#: lexsup.c:487
+msgid "name|alignment"
+msgstr "nama|alignment"
+
+#: lexsup.c:488
+msgid "Sort sections by name or maximum alignment"
+msgstr "Urutkan daerah dengan nama atau maksimal alignment"
+
+#: lexsup.c:490
+msgid "COUNT"
+msgstr "JUMLAH"
+
+#: lexsup.c:490
+msgid "How many tags to reserve in .dynamic section"
+msgstr "Berapa banyak tags untuk menyimpan dalam daerah .dynamic"
+
+#: lexsup.c:493
+msgid "[=SIZE]"
+msgstr "[=UKURAN]"
+
+#: lexsup.c:493
+msgid "Split output sections every SIZE octets"
+msgstr "Bagi daerah keluaran distiap UKURAN oktet"
+
+#: lexsup.c:496
+msgid "[=COUNT]"
+msgstr "[=JUMLAH]"
+
+#: lexsup.c:496
+msgid "Split output sections every COUNT relocs"
+msgstr "Bagi daerah keluaran disetiap JUMLAH relokasi"
+
+#: lexsup.c:499
+msgid "Print memory usage statistics"
+msgstr "Tampilkan statistik penggunaan memori"
+
+#: lexsup.c:501
+msgid "Display target specific options"
+msgstr "Tampilkan opsi target spesifik"
+
+#: lexsup.c:503
+msgid "Do task level linking"
+msgstr "Lakukan tingkat kerja penghubung"
+
+#: lexsup.c:505
+msgid "Use same format as native linker"
+msgstr "Gunakan format sama seperti penghubung asal"
+
+#: lexsup.c:507
+msgid "SECTION=ADDRESS"
+msgstr "DAERAH=ALAMAT"
+
+#: lexsup.c:507
+msgid "Set address of named section"
+msgstr "Set alamat dari nama daerah"
+
+#: lexsup.c:510
+msgid "Set address of .bss section"
+msgstr "Set alamat dari daerah .bss"
+
+#: lexsup.c:512
+msgid "Set address of .data section"
+msgstr "Set alamat dari daerah .data"
+
+#: lexsup.c:514
+msgid "Set address of .text section"
+msgstr "Set alamat daeri daerah .text"
+
+#: lexsup.c:517
+msgid ""
+"How to handle unresolved symbols.  <method> is:\n"
+"                                ignore-all, report-all, ignore-in-object-files,\n"
+"                                ignore-in-shared-libs"
+msgstr ""
+"Bagaimana menangani simbol tidak terselesaikan. <metode> adalah:\n"
+"                                ignore-all, report-all, ignore-in-object-files,\n"
+"                                ignore-in-shared-libs"
+
+#: lexsup.c:522
+msgid "Output lots of information during link"
+msgstr "Keluarkan banyak informasi selama menghubungkan"
+
+#: lexsup.c:526
+msgid "Read version information script"
+msgstr "Baca informasi versi dari scrip"
+
+#: lexsup.c:529
+msgid ""
+"Take export symbols list from .exports, using\n"
+"                                SYMBOL as the version."
+msgstr ""
+"Ambil daftar simbol expor dari .expor, menggunakan\n"
+"                                SIMBOL sebagai versi."
+
+#: lexsup.c:533
+msgid "Add data symbols to dynamic list"
+msgstr "Tambahkan data simbol ke daftar dinamis"
+
+#: lexsup.c:535
+msgid "Use C++ operator new/delete dynamic list"
+msgstr "Gunakan C++ operator new/delete daftar dinamis"
+
+#: lexsup.c:537
+msgid "Use C++ typeinfo dynamic list"
+msgstr "Gunakan C++ typeinfo daftar dinamic"
+
+#: lexsup.c:539
+msgid "Read dynamic list"
+msgstr "Baca daftar dinamis"
+
+#: lexsup.c:541
+msgid "Warn about duplicate common symbols"
+msgstr "Peringatkan mengenai duplikasi simbol umum"
+
+#: lexsup.c:543
+msgid "Warn if global constructors/destructors are seen"
+msgstr "Peringatkan jika global konstruktor/destruktor terlihat"
+
+#: lexsup.c:546
+msgid "Warn if the multiple GP values are used"
+msgstr "Peringatkan jika nilai multiple GP digunakan"
+
+#: lexsup.c:548
+msgid "Warn only once per undefined symbol"
+msgstr "Peringatkan hanya sekali setiap simbol tidak terdefinisi"
+
+#: lexsup.c:550
+msgid "Warn if start of section changes due to alignment"
+msgstr "Peringatkan jika awal dari daerah berubah karena alignment"
+
+#: lexsup.c:553
+msgid "Warn if shared object has DT_TEXTREL"
+msgstr "Peringatkan jika objek terbagi memiliki DT_TEXTREL"
+
+#: lexsup.c:557
+msgid "Report unresolved symbols as warnings"
+msgstr "Laporkan simbol tidak terselesaikan sebagai peringatan"
+
+#: lexsup.c:560
+msgid "Report unresolved symbols as errors"
+msgstr "Laporkan simbol tidak terselesaikan sebagai error"
+
+#: lexsup.c:562
+msgid "Include all objects from following archives"
+msgstr "Masukan seluruh objek dari archive berikut"
+
+#: lexsup.c:565
+msgid "Use wrapper functions for SYMBOL"
+msgstr "Gunakan fungsi wrapper untuk SIMBOL"
+
+#: lexsup.c:712
+msgid "%P: unrecognized option '%s'\n"
+msgstr "%P: opsi tidak dikenal '%s'\n"
+
+#: lexsup.c:716
+msgid "%P%F: use the --help option for usage information\n"
+msgstr "%P%F: gunakan opsi --help untuk informasi penggunaan\n"
+
+#: lexsup.c:734
+msgid "%P%F: unrecognized -a option `%s'\n"
+msgstr "%P%F: opsi -a tidak dikenal `%s'\n"
+
+#: lexsup.c:747
+msgid "%P%F: unrecognized -assert option `%s'\n"
+msgstr "%P%F: opsi -assert tidak dikenal `%s'\n"
+
+#: lexsup.c:790
+msgid "%F%P: unknown demangling style `%s'"
+msgstr "%F%P: gaya demangling tidak dikenal `%s'"
+
+#: lexsup.c:852
+msgid "%P%F: invalid number `%s'\n"
+msgstr "%P%F: nomor tidak valid `%s'\n"
+
+#: lexsup.c:950
+msgid "%P%F: bad --unresolved-symbols option: %s\n"
+msgstr "%P%F: buruk opsi --unresolved-symbols: %s\n"
+
+#. This can happen if the user put "-rpath,a" on the command
+#. line.  (Or something similar.  The comma is important).
+#. Getopt becomes confused and thinks that this is a -r option
+#. but it cannot parse the text after the -r so it refuses to
+#. increment the optind counter.  Detect this case and issue
+#. 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:1024
+msgid "%P%F: bad -rpath option\n"
+msgstr "%P%F: opsi -rpath buruk\n"
+
+#: lexsup.c:1135
+msgid "%P%F: -shared not supported\n"
+msgstr "%P%F: -shared tidak didukung\n"
+
+#: lexsup.c:1144
+msgid "%P%F: -pie not supported\n"
+msgstr "%P%F: -pie tidak didukung\n"
+
+#: lexsup.c:1152
+msgid "descending"
+msgstr "menurun"
+
+#: lexsup.c:1154
+msgid "ascending"
+msgstr "meningkat"
+
+#: lexsup.c:1157
+msgid "%P%F: invalid common section sorting option: %s\n"
+msgstr "%P%F: opsi pengurutan daerah umum tidak valid: %s\n"
+
+#: lexsup.c:1161
+msgid "name"
+msgstr "nama"
+
+#: lexsup.c:1163
+msgid "alignment"
+msgstr "alignment"
+
+#: lexsup.c:1166
+msgid "%P%F: invalid section sorting option: %s\n"
+msgstr "%P%F: opsi pengurutan daerah tidak valid: %s\n"
+
+#: lexsup.c:1200
+msgid "%P%F: invalid argument to option \"--section-start\"\n"
+msgstr "%P%F: argumen ke opsi \"--section-start\" tidak valid\n"
+
+#: lexsup.c:1207
+msgid "%P%F: missing argument(s) to option \"--section-start\"\n"
+msgstr "%P%F: hilang argumen ke opsi \"--section-start\"\n"
+
+#: lexsup.c:1421
+msgid "%P%F: may not nest groups (--help for usage)\n"
+msgstr "%P%F: mungkin bukan nest grup (--help untuk penggunaan)\n"
+
+#: lexsup.c:1428
+msgid "%P%F: group ended before it began (--help for usage)\n"
+msgstr "%P%F: grup berakhir sebelum init mulai (--help untuk penggunaan)\n"
+
+#: lexsup.c:1456
+msgid "%P%X: --hash-size needs a numeric argument\n"
+msgstr "%P%X: --hash-size membutuhkan sebuah argumen numerik\n"
+
+#: lexsup.c:1507 lexsup.c:1520
+msgid "%P%F: invalid hex number `%s'\n"
+msgstr "%P%F: nomor hex tidak valid `%s'\n"
+
+#: lexsup.c:1556
+#, c-format
+msgid "Usage: %s [options] file...\n"
+msgstr "Penggunaan: %s [opsi] berkas...\n"
+
+#: lexsup.c:1558
+#, c-format
+msgid "Options:\n"
+msgstr "Opsi:\n"
+
+#: lexsup.c:1636
+#, c-format
+msgid "  @FILE"
+msgstr "  @BERKAS"
+
+#: lexsup.c:1639
+#, c-format
+msgid "Read options from FILE\n"
+msgstr "Baca opsi dari BERKAS\n"
+
+#. Note: Various tools (such as libtool) depend upon the
+#. format of the listings below - do not change them.
+#: lexsup.c:1644
+#, c-format
+msgid "%s: supported targets:"
+msgstr "%s: target yang didukung:"
+
+#: lexsup.c:1652
+#, c-format
+msgid "%s: supported emulations: "
+msgstr "%s: emulasi yang didukung: "
+
+#: lexsup.c:1657
+#, c-format
+msgid "%s: emulation specific options:\n"
+msgstr "%s: opsi spesifik emulasi:\n"
+
+#: lexsup.c:1662
+#, c-format
+msgid "Report bugs to %s\n"
+msgstr "Laporkan bugs ke %s\n"
+
+#: mri.c:291
+msgid "%P%F: unknown format type %s\n"
+msgstr "%P%F: tipe format %s tidak dikenal\n"
+
+#: pe-dll.c:381
+#, c-format
+msgid "%XUnsupported PEI architecture: %s\n"
+msgstr "%X Arsitektur PEI tidak didukung: %s\n"
+
+#: pe-dll.c:692
+#, c-format
+msgid "%XCannot export %s: invalid export name\n"
+msgstr "%X Tidak dapat expor %s: nama expor tidak valid\n"
+
+#: pe-dll.c:748
+#, c-format
+msgid "%XError, duplicate EXPORT with ordinals: %s (%d vs %d)\n"
+msgstr "%XError, duplikasi EKSPOR dengan ordinals: %s (%d vs %d)\n"
+
+#: pe-dll.c:755
+#, c-format
+msgid "Warning, duplicate EXPORT: %s\n"
+msgstr "Peringatan, duplikasi EKSPOR: %s\n"
+
+#: pe-dll.c:842
+#, c-format
+msgid "%XCannot export %s: symbol not defined\n"
+msgstr "%XTidak dapat ekspor %s: simbol tidak terdefinisi\n"
+
+#: pe-dll.c:848
+#, c-format
+msgid "%XCannot export %s: symbol wrong type (%d vs %d)\n"
+msgstr "%XTidak dapat ekspor %s: tipe simbol salah (%d vs %d)\n"
+
+#: pe-dll.c:855
+#, c-format
+msgid "%XCannot export %s: symbol not found\n"
+msgstr "%XTidak dapat ekspor %s: simbol tidak ditemukan\n"
+
+#: pe-dll.c:969
+#, c-format
+msgid "%XError, ordinal used twice: %d (%s vs %s)\n"
+msgstr "%XError, ordinal digunakan dua kali: %d (%s vs %s)\n"
+
+#: pe-dll.c:1336
+#, c-format
+msgid "%XError: %d-bit reloc in dll\n"
+msgstr "%XError: %d-bit relokasi dalam dll\n"
+
+#: pe-dll.c:1464
+#, c-format
+msgid "%s: Can't open output def file %s\n"
+msgstr "%s: Tidak dapat membuka berkas keluaran default %s\n"
+
+#: pe-dll.c:1609
+#, c-format
+msgid "; no contents available\n"
+msgstr "; tidak ada kontent yang tersedia\n"
+
+#: pe-dll.c:2407
+msgid "%C: variable '%T' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.\n"
+msgstr "%C: variabel '%T' tidak dapat auto-imported. Tolong baca dokumentasi untuk ld --enable-auto-import untuk lebih lengkapnya.\n"
+
+#: pe-dll.c:2437
+#, c-format
+msgid "%XCan't open .lib file: %s\n"
+msgstr "%XTidak dapat membuka berkas .lib: %s\n"
+
+#: pe-dll.c:2442
+#, c-format
+msgid "Creating library file: %s\n"
+msgstr "Membuat berkas library: %s\n"
diff --git a/ld/po/vi.po b/ld/po/vi.po
index 65b2214..30a676d 100644
--- a/ld/po/vi.po
+++ b/ld/po/vi.po
@@ -1,227 +1,224 @@
 # Vietnamese translation for LD.
-# Copyright © 2007 Free Software Foundation, Inc.
-# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
-# 
+# Copyright © 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: ld-2.17.90\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-27 16:44+0930\n"
-"PO-Revision-Date: 2007-08-07 21:19+0930\n"
+"Project-Id-Version: ld-2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-09-23 22:24+0930\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.7b1\n"
-
-#: emultempl/armcoff.em:72
-#, c-format
-msgid "  --support-old-code   Support interworking with old code\n"
-msgstr ""
-"  --support-old-code   Hỗ trợ kết hợp với mã cũ\n"
-"\t\t(_hỗ trợ mã cũ_)\n"
+"X-Generator: LocFactoryEditor 1.7b3\n"
 
 #: emultempl/armcoff.em:73
 #, c-format
-msgid "  --thumb-entry=<sym>  Set the entry point to be Thumb symbol <sym>\n"
-msgstr ""
-"  --thumb-entry=<ký_hiệu>  Đặt điểm vào thành ký hiệu Thumb này\n"
-"\t\t(_mục nhập thumb_)\n"
+msgid "  --support-old-code          Support interworking with old code\n"
+msgstr " --support-old-code   \tHỗ trợ kết hợp với mã cũ\n"
 
-#: emultempl/armcoff.em:121
+#: emultempl/armcoff.em:74
+#, c-format
+msgid "  --thumb-entry=<sym>         Set the entry point to be Thumb symbol <sym>\n"
+msgstr "  --thumb-entry=<ký_hiệu>  Đặt điểm vào thành ký hiệu Thumb này\n"
+
+#: emultempl/armcoff.em:122
 #, c-format
 msgid "Errors encountered processing file %s"
 msgstr "Gặp lỗi khi xử lý tập tin %s"
 
-#: emultempl/armcoff.em:189 emultempl/pe.em:1528
+#: emultempl/armcoff.em:190 emultempl/pe.em:1555
 msgid "%P: warning: '--thumb-entry %s' is overriding '-e %s'\n"
 msgstr "%P: cảnh báo : « --thumb-entry %s » đang lấy quyền cao hơn « -e %s »\n"
 
-#: emultempl/armcoff.em:194 emultempl/pe.em:1533
-msgid "%P: warning: connot find thumb start symbol %s\n"
+#: emultempl/armcoff.em:195 emultempl/pe.em:1560
+msgid "%P: warning: cannot find thumb start symbol %s\n"
 msgstr "%P: cảnh báo : không tìm thấy ký hiệu bắt đầu thumb %s\n"
 
-#: emultempl/pe.em:311
+#: emultempl/pe.em:316
 #, c-format
 msgid "  --base_file <basefile>             Generate a base file for relocatable DLLs\n"
 msgstr ""
 "  --base_file <tập_tin>\t\tTạo ra một tập tin cơ bản\n"
 "\tcho các DLL có khả năng định vị lại (_tập tin cơ bản_)\n"
 
-#: emultempl/pe.em:312
+#: emultempl/pe.em:317
 #, c-format
 msgid "  --dll                              Set image base to the default for DLLs\n"
 msgstr "  --dll                              Đặt cơ bản ảnh thành giá trị mặc định cho các DLL\n"
 
-#: emultempl/pe.em:313
+#: emultempl/pe.em:318
 #, c-format
 msgid "  --file-alignment <size>            Set file alignment\n"
 msgstr ""
 "  --file-alignment <kích_cỡ>            Đặt sự chỉnh canh tập tin\n"
 "\t\t(_sự chỉnh canh tập tin_)\n"
 
-#: emultempl/pe.em:314
+#: emultempl/pe.em:319
 #, c-format
 msgid "  --heap <size>                      Set initial size of the heap\n"
 msgstr ""
 "  --heap <kích_cỡ>                      Đặt kích cỡ đầu tiên của miền nhớ\n"
 "\t\t(_miền nhớ_)\n"
 
-#: emultempl/pe.em:315
+#: emultempl/pe.em:320
 #, c-format
 msgid "  --image-base <address>             Set start address of the executable\n"
 msgstr ""
 "  --image-base <địa_chỉ>\n"
 "\tĐặt địa chỉ bắt đầu của tập tin có khả năng thực hiện (_cơ bản ảnh_)\n"
 
-#: emultempl/pe.em:316
+#: emultempl/pe.em:321
 #, c-format
 msgid "  --major-image-version <number>     Set version number of the executable\n"
 msgstr ""
 "  --major-image-version <số>\t\tĐặt số thứ tự phiên bản của tập tin\n"
 "\tcó khả năng thực hiện (_phiên bản ảnh lớn_)\n"
 
-#: emultempl/pe.em:317
+#: emultempl/pe.em:322
 #, c-format
 msgid "  --major-os-version <number>        Set minimum required OS version\n"
 msgstr ""
 "  --major-os-version <số>\t\tĐặt phiên bản HĐH tối thiểu cần thiết\n"
 "\t\t(_phiên bản HĐH lớn_)\n"
 
-#: emultempl/pe.em:318
+#: emultempl/pe.em:323
 #, c-format
 msgid "  --major-subsystem-version <number> Set minimum required OS subsystem version\n"
 msgstr ""
 "  --major-subsystem-version <số>\tĐặt phiên bản hệ thống con HĐH\n"
 "\ttối thiểu cần thiết (_phiên bản hệ thống con lớn_)\n"
 
-#: emultempl/pe.em:319
+#: emultempl/pe.em:324
 #, c-format
 msgid "  --minor-image-version <number>     Set revision number of the executable\n"
 msgstr ""
 "  --minor-image-version <số>\t\tĐặt số thứ tự bản sửa đổi của tập tin\n"
 "\tcó khả năng thực hiện (_phiên bản ảnh nhỏ_)\n"
 
-#: emultempl/pe.em:320
+#: emultempl/pe.em:325
 #, c-format
 msgid "  --minor-os-version <number>        Set minimum required OS revision\n"
 msgstr ""
 "  --minor-os-version <số>\t\tĐặt bản sửa đổi HĐH tối thiểu cần thiết\n"
 "\t\t(_phiên bản HĐH nhỏ_)\n"
 
-#: emultempl/pe.em:321
+#: emultempl/pe.em:326
 #, c-format
 msgid "  --minor-subsystem-version <number> Set minimum required OS subsystem revision\n"
 msgstr ""
 "  --minor-subsystem-version <số>\tĐặt bản sửa đổi hệ thống con HĐH\n"
 "\ttối thiểu cần thiết (_phiên bản hệ thống con nhỏ_)\n"
 
-#: emultempl/pe.em:322
+#: emultempl/pe.em:327
 #, c-format
 msgid "  --section-alignment <size>         Set section alignment\n"
 msgstr ""
 "  --section-alignment <kích_cỡ>         Đặt sự chỉnh canh phần\n"
 "\t\t(_sự chỉnh canh phần_)\n"
 
-#: emultempl/pe.em:323
+#: emultempl/pe.em:328
 #, c-format
 msgid "  --stack <size>                     Set size of the initial stack\n"
 msgstr "  --stack <kích_cỡ>         Đặt kích cỡ của đống đầu tiên (_đống_)\n"
 
-#: emultempl/pe.em:324
+#: emultempl/pe.em:329
 #, c-format
 msgid "  --subsystem <name>[:<version>]     Set required OS subsystem [& version]\n"
 msgstr ""
 "  --subsystem <tên>[:<phiên_bản>]\n"
 "\tĐặt hệ thống con HĐH [và phiên bản] cần thiết (_hệ thống con_)\n"
 
-#: emultempl/pe.em:325
+#: emultempl/pe.em:330
 #, c-format
 msgid "  --support-old-code                 Support interworking with old code\n"
 msgstr ""
 " --support-old-code   \tHỗ trợ kết hợp với mã cũ\n"
 "\t\t(_hỗ trợ mã cũ_)\n"
 
-#: emultempl/pe.em:326
+#: emultempl/pe.em:331
 #, c-format
 msgid "  --thumb-entry=<symbol>             Set the entry point to be Thumb <symbol>\n"
 msgstr ""
 "  --thumb-entry=<ký_hiệu>  Đặt điểm vào thành ký hiệu Thumb này\n"
 "\t\t(_mục nhập thumb_)\n"
 
-#: emultempl/pe.em:328
+#: emultempl/pe.em:333
 #, c-format
 msgid "  --add-stdcall-alias                Export symbols with and without @nn\n"
 msgstr ""
 "  --add-stdcall-alias           Xuất ký hiệu có và không có « @nn »\n"
 "\t\t(_thêm bí danh stdcall_)\n"
 
-#: emultempl/pe.em:329
+#: emultempl/pe.em:334
 #, c-format
 msgid "  --disable-stdcall-fixup            Don't link _sym to _sym@nn\n"
 msgstr ""
 "  --disable-stdcall-fixup            Đừng liên kết « _sym » đến « _sym@nn »\n"
 "\t\t(_tắt sửa chữa stdcall_)\n"
 
-#: emultempl/pe.em:330
+#: emultempl/pe.em:335
 #, c-format
 msgid "  --enable-stdcall-fixup             Link _sym to _sym@nn without warnings\n"
 msgstr ""
 "  --enable-stdcall-fixup             Liên kết « _sym » đến « _sym@nn »,\n"
 "\tkhông có cảnh báo (_bật sửa chữa stdcall_)\n"
 
-#: emultempl/pe.em:331
+#: emultempl/pe.em:336
 #, c-format
 msgid "  --exclude-symbols sym,sym,...      Exclude symbols from automatic export\n"
 msgstr ""
 "  --exclude-symbols ký_hiệu1,ký_hiệu2,...\n"
 "\tLoại trừ những ký hiệu này khỏi việc tự động xuất khẩu (_loại trừ các ký hiệu_)\n"
 
-#: emultempl/pe.em:332
+#: emultempl/pe.em:337
 #, c-format
 msgid "  --exclude-libs lib,lib,...         Exclude libraries from automatic export\n"
 msgstr ""
 "  --exclude-libs thư_viện1,thư_viện2,...\n"
 "\tLoại trừ những thư viện này khỏi việc tự động xuất khẩu (_loại trừ các thư viện_)\n"
 
-#: emultempl/pe.em:333
+#: emultempl/pe.em:338
 #, c-format
 msgid "  --export-all-symbols               Automatically export all globals to DLL\n"
 msgstr ""
 "  --export-all-symbols           Tự động xuất khẩu mọi điều toàn cục ra DLL\n"
 "\t\t(_xuất khẩu mọi ký hiệu_)\n"
 
-#: emultempl/pe.em:334
+#: emultempl/pe.em:339
 #, c-format
 msgid "  --kill-at                          Remove @nn from exported symbols\n"
 msgstr ""
 "  --kill-at                          Gỡ bỏ « @nn » ra những ký hiệu đã xuất khẩu\n"
 "\t(_giết tại_)\n"
 
-#: emultempl/pe.em:335
+#: emultempl/pe.em:340
 #, c-format
 msgid "  --out-implib <file>                Generate import library\n"
 msgstr ""
 "  --out-implib <tập_tin>                Tạo ra thư viện nhập khẩu\n"
 "\t\t(_ra nhập khẩu thư viện [viết tắt]_)\n"
 
-#: emultempl/pe.em:336
+#: emultempl/pe.em:341
 #, c-format
 msgid "  --output-def <file>                Generate a .DEF file for the built DLL\n"
 msgstr ""
 "  --output-def <tập_tin>\tTạo ra một tập tin .DEF cho DLL đã xây dựng\n"
 "\t\t(_xuất ra DEF_)\n"
 
-#: emultempl/pe.em:337
+#: emultempl/pe.em:342
 #, c-format
 msgid "  --warn-duplicate-exports           Warn about duplicate exports.\n"
 msgstr ""
 "  --warn-duplicate-exports           Cảnh báo về sự xuất khẩu trùng.\n"
 "\t\t(_cảnh báo sự xuất khẩu trùng_)\n"
 
-#: emultempl/pe.em:338
+#: emultempl/pe.em:343
 #, c-format
 msgid ""
 "  --compat-implib                    Create backward compatible import libs;\n"
@@ -230,7 +227,7 @@
 "  --compat-implib\t\tTạo các thư viện nhập khẩu tương thích ngược;\n"
 "\tcũng tạo « __imp_<ký_hiệu> » (_thư viện nhập khẩu tương thích [viết tắt]_)\n"
 
-#: emultempl/pe.em:340
+#: emultempl/pe.em:345
 #, c-format
 msgid ""
 "  --enable-auto-image-base           Automatically choose image base for DLLs\n"
@@ -239,14 +236,14 @@
 "  --enable-auto-image-base           Tự động chọn cơ bản ảnh cho mọi DLL\n"
 "\tnếu người dùng không ghi rõ (_bật cơ bản ảnh tự động_)\n"
 
-#: emultempl/pe.em:342
+#: emultempl/pe.em:347
 #, c-format
 msgid "  --disable-auto-image-base          Do not auto-choose image base. (default)\n"
 msgstr ""
 "  --disable-auto-image-base       Đừng tự động chọn cơ bản ảnh (mặc định)\n"
 "\t\t(_tắt cơ bản ảnh tự động_)\n"
 
-#: emultempl/pe.em:343
+#: emultempl/pe.em:348
 #, c-format
 msgid ""
 "  --dll-search-prefix=<string>       When linking dynamically to a dll without\n"
@@ -258,7 +255,7 @@
 "\tdùng « <chuỗi><tên_cơ_bản>.dll » thay cho « lib<tên_cơ_bản>.dll »\n"
 "\t\t(_tiền tố tìm kiếm DLL_)\n"
 
-#: emultempl/pe.em:346
+#: emultempl/pe.em:351
 #, c-format
 msgid ""
 "  --enable-auto-import               Do sophistcated linking of _sym to\n"
@@ -267,14 +264,14 @@
 "  --enable-auto-import\t\tLiên kết tinh tế « _sym » đến « __imp_sym »\n"
 "\tcho các tham chiếu DATA (dữ liệu) (_bật tự động nhập khẩu_)\n"
 
-#: emultempl/pe.em:348
+#: emultempl/pe.em:353
 #, c-format
 msgid "  --disable-auto-import              Do not auto-import DATA items from DLLs\n"
 msgstr ""
 "  --disable-auto-import       Đừng tự động nhập mục DATA từ DLL\n"
 "\t\t(_tắt tự động nhập khẩu_)\n"
 
-#: emultempl/pe.em:349
+#: emultempl/pe.em:354
 #, c-format
 msgid ""
 "  --enable-runtime-pseudo-reloc      Work around auto-import limitations by\n"
@@ -286,7 +283,7 @@
 "\tcác sự định vị lại giả được quyết định vào lúc chạy.\n"
 "\t\t(_bật định vị lại giả lúc chạy [viết tắt]_)\n"
 
-#: emultempl/pe.em:352
+#: emultempl/pe.em:357
 #, c-format
 msgid ""
 "  --disable-runtime-pseudo-reloc     Do not add runtime pseudo-relocations for\n"
@@ -297,7 +294,7 @@
 "\tđược nhập khẩu tự động.\n"
 "\t\t(_tắt định vị lại giả lúc chạy [viết tắt]_)\n"
 
-#: emultempl/pe.em:354
+#: emultempl/pe.em:359
 #, c-format
 msgid ""
 "  --enable-extra-pe-debug            Enable verbose debug output when building\n"
@@ -307,7 +304,7 @@
 "\tBật kết xuất gỡ lỗi chi tiết khi xây dựng hay liên kết đến DLL\n"
 "\t(đặc biệt khi nhập khẩu tự động). (_bật gỡ lỗi PE thêm_)\n"
 
-#: emultempl/pe.em:357
+#: emultempl/pe.em:362
 #, c-format
 msgid ""
 "  --large-address-aware              Executable supports virtual addresses\n"
@@ -317,86 +314,100 @@
 "\tTập tin có khả năng thực hiện cũng hỗ trợ các địa chỉ ảo lớn hơn 2 GB.\n"
 "\t\t(_kiến thức địa chỉ lớn_)\n"
 
-#: emultempl/pe.em:424
+#: emultempl/pe.em:431
 msgid "%P: warning: bad version number in -subsystem option\n"
 msgstr "%P: cảnh báo: gặp số thứ tự phiên bản sai trong tùy chọn « -subsystem » (hệ thống con)\n"
 
-#: emultempl/pe.em:455
+#: emultempl/pe.em:462
 msgid "%P%F: invalid subsystem type %s\n"
 msgstr "%P%F: kiểu hệ thống con không hợp lệ %s\n"
 
-#: emultempl/pe.em:494
+#: emultempl/pe.em:501
 msgid "%P%F: invalid hex number for PE parameter '%s'\n"
 msgstr "%P%F: số thập lục không hợp lệ cho tham số PE « %s »\n"
 
-#: emultempl/pe.em:511
+#: emultempl/pe.em:518
 msgid "%P%F: strange hex info for PE parameter '%s'\n"
 msgstr "%P%F: thông tin thập lục lạ cho tham số PE « %s »\n"
 
-#: emultempl/pe.em:528
+#: emultempl/pe.em:535
 #, c-format
 msgid "%s: Can't open base file %s\n"
 msgstr "%s: Không thể mở tập tin cơ bản %s\n"
 
-#: emultempl/pe.em:744
+#: emultempl/pe.em:752
 msgid "%P: warning, file alignment > section alignment.\n"
 msgstr "%P: cảnh báo, sự chỉnh canh tập tin > sự chỉnh canh phần.\n"
 
-#: emultempl/pe.em:831 emultempl/pe.em:858
+#: emultempl/pe.em:839 emultempl/pe.em:866
 #, c-format
 msgid "Warning: resolving %s by linking to %s\n"
 msgstr "Cảnh báo : đang tháo gỡ %s bằng cách liên kết đến %s\n"
 
-#: emultempl/pe.em:836 emultempl/pe.em:863
+#: emultempl/pe.em:844 emultempl/pe.em:871
 msgid "Use --enable-stdcall-fixup to disable these warnings\n"
 msgstr "Dùng « --enable-stdcall-fixup » để tắt các cảnh báo này\n"
 
-#: emultempl/pe.em:837 emultempl/pe.em:864
+#: emultempl/pe.em:845 emultempl/pe.em:872
 msgid "Use --disable-stdcall-fixup to disable these fixups\n"
 msgstr "Dùng « --disable-stdcall-fixup » để tắt các sự sửa chữa này\n"
 
-#: emultempl/pe.em:883
+#: emultempl/pe.em:891
 #, c-format
 msgid "%C: Cannot get section contents - auto-import exception\n"
 msgstr "%C: Không thể lấy nội dung của phần: gặp ngoại lệ nhập khẩu tự động\n"
 
-#: emultempl/pe.em:920
+#: emultempl/pe.em:931
 #, c-format
 msgid "Info: resolving %s by linking to %s (auto-import)\n"
 msgstr "Thông tin: đang tháo gỡ %s bằng cách liên kết đến %s (tự động nhập khẩu)\n"
 
-#: emultempl/pe.em:992
+#: emultempl/pe.em:938
+msgid ""
+"%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n"
+"This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."
+msgstr ""
+"%P: cảnh báo : chức năng tự động nhập vào đã được kích hoạt mà không đưa ra tùy chọn « --enable-auto-import » trên dòng lệnh.\n"
+"Trường hợp này vẫn còn nên chạy được nếu không có cấu trúc dữ liệu không đổi mà tham chiếu đến ký hiệu từ DLL được tự động nhập vào."
+
+#: emultempl/pe.em:945 emultempl/pe.em:1113 emultempl/pe.em:1319 ldcref.c:488
+#: ldcref.c:586 ldmain.c:1105 ldmisc.c:285 pe-dll.c:622 pe-dll.c:1153
+#: pe-dll.c:1250
+msgid "%B%F: could not read symbols: %E\n"
+msgstr "%B%F: không thể đọc các ký hiệu : %E\n"
+
+#: emultempl/pe.em:1018
 msgid "%F%P: cannot perform PE operations on non PE output file '%B'.\n"
 msgstr "%F%P: không thể thực hiện thao tác PE với tập tin xuất khác PE « %B ».\n"
 
-#: emultempl/pe.em:1334
+#: emultempl/pe.em:1360
 #, c-format
 msgid "Errors encountered processing file %s\n"
 msgstr "Gặp lỗi trong khi xử lý tập tin %s\n"
 
-#: emultempl/pe.em:1357
+#: emultempl/pe.em:1383
 #, c-format
 msgid "Errors encountered processing file %s for interworking"
 msgstr "Gặp lỗi trong khi xử lý tập tin %s để thao tác với nhau"
 
-#: emultempl/pe.em:1418 ldexp.c:530 ldlang.c:3082 ldlang.c:6087 ldlang.c:6118
-#: ldmain.c:1167
+#: emultempl/pe.em:1444 ldexp.c:540 ldlang.c:3131 ldlang.c:6448 ldlang.c:6479
+#: ldmain.c:1050
 msgid "%P%F: bfd_link_hash_lookup failed: %E\n"
 msgstr "%P%F: « bfd_link_hash_lookup » bị lỗi: %E\n"
 
-#: ldcref.c:166
+#: ldcref.c:168
 msgid "%X%P: bfd_hash_table_init of cref table failed: %E\n"
 msgstr "%X%P: « bfd_hash_table_init » với bảng cref bị lỗi: %E\n"
 
-#: ldcref.c:172
+#: ldcref.c:174
 msgid "%X%P: cref_hash_lookup failed: %E\n"
 msgstr "%X%P: « cref_hash_lookup » bị lỗi: %E\n"
 
-#: ldcref.c:182
+#: ldcref.c:184
 msgid "%X%P: cref alloc failed: %E\n"
 msgstr "%X%P: cref alloc bị lỗi: %E\n"
 
-#: ldcref.c:362
+#: ldcref.c:364
 #, c-format
 msgid ""
 "\n"
@@ -407,33 +418,25 @@
 "Bảng Tham Chiếu Chéo\n"
 "\n"
 
-#: ldcref.c:363
+#: ldcref.c:365
 msgid "Symbol"
 msgstr "Ký hiệu"
 
-#: ldcref.c:371
+#: ldcref.c:373
 #, c-format
 msgid "File\n"
 msgstr "Tập tin\n"
 
-#: ldcref.c:375
+#: ldcref.c:377
 #, c-format
 msgid "No symbols\n"
 msgstr "Không có ký hiệu\n"
 
-#: ldcref.c:496 ldcref.c:618
-msgid "%B%F: could not read symbols; %E\n"
-msgstr "%B%F: không thể đọc các ký hiệu ; %E\n"
-
-#: ldcref.c:500 ldcref.c:622 ldmain.c:1232 ldmain.c:1236
-msgid "%B%F: could not read symbols: %E\n"
-msgstr "%B%F: không thể đọc các ký hiệu : %E\n"
-
-#: ldcref.c:551
+#: ldcref.c:530
 msgid "%P: symbol `%T' missing from main hash table\n"
 msgstr "%P: ký hiệu « %T » còn thiếu trong bảng băm chính\n"
 
-#: ldcref.c:693 ldcref.c:700 ldmain.c:1279 ldmain.c:1286
+#: ldcref.c:648 ldcref.c:655 ldmain.c:1139 ldmain.c:1146
 msgid "%B%F: could not read relocs: %E\n"
 msgstr "%B%F: không thể đọc các sự định vị lại : %E\n"
 
@@ -441,7 +444,7 @@
 #. 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:727
+#: ldcref.c:682
 msgid "%X%C: prohibited cross reference from %s to `%T' in %s\n"
 msgstr "%X%C: không cho phép tham chiếu chéo từ %s đến « %T » trong %s\n"
 
@@ -494,147 +497,142 @@
 msgid "  no emulation specific options.\n"
 msgstr "  không có tùy chọn đặc trưng cho mô phỏng.\n"
 
-#: ldexp.c:344
+#: ldexp.c:350
 #, c-format
 msgid "%F%S %% by zero\n"
 msgstr "%F%S %% cho số không\n"
 
-#: ldexp.c:352
+#: ldexp.c:358
 #, c-format
 msgid "%F%S / by zero\n"
 msgstr "%F%S / cho số không\n"
 
-#: ldexp.c:544
+#: ldexp.c:554
 #, c-format
 msgid "%X%S: unresolvable symbol `%s' referenced in expression\n"
 msgstr "%X%S: ký hiệu không tháo gỡ được « %s » được tham chiếu trong biểu thức\n"
 
-#: ldexp.c:555
+#: ldexp.c:565
 #, c-format
 msgid "%F%S: undefined symbol `%s' referenced in expression\n"
 msgstr "%F%S: ký hiệu chưa xác định « %s » được tham chiếu trong biểu thức\n"
 
-#: ldexp.c:576 ldexp.c:593 ldexp.c:619
+#: ldexp.c:586 ldexp.c:603 ldexp.c:630
 #, c-format
 msgid "%F%S: undefined section `%s' referenced in expression\n"
 msgstr "%F%S: phần chưa xác định « %s » được tham chiếu trong biểu thức\n"
 
-#: ldexp.c:645 ldexp.c:658
+#: ldexp.c:657 ldexp.c:670
 #, c-format
 msgid "%F%S: undefined MEMORY region `%s' referenced in expression\n"
 msgstr "%F%S: miền MEMORY (bộ nhớ) chưa xác định « %s » được tham chiếu trong biểu thức\n"
 
-#: ldexp.c:669
+#: ldexp.c:681
 #, c-format
 msgid "%F%S: unknown constant `%s' referenced in expression\n"
 msgstr "%F%S: hằng không rõ « %s » được tham chiếu trong biểu thức\n"
 
-#: ldexp.c:730
+#: ldexp.c:742
 #, c-format
 msgid "%F%S can not PROVIDE assignment to location counter\n"
 msgstr "%F%S không thể PROVIDE (cung cấp) sự gán cho bộ đếm địa điểm\n"
 
-#: ldexp.c:744
+#: ldexp.c:756
 #, c-format
 msgid "%F%S invalid assignment to location counter\n"
 msgstr "%F%S sự gán không hợp lệ cho bộ đếm địa điểm\n"
 
-#: ldexp.c:747
+#: ldexp.c:759
 #, c-format
 msgid "%F%S assignment to location counter invalid outside of SECTION\n"
 msgstr "%F%S sự gán cho bộ đếm địa điểm không phải hợp lệ bên ngoài SECTION (phần)\n"
 
-#: ldexp.c:756
+#: ldexp.c:768
 msgid "%F%S cannot move location counter backwards (from %V to %V)\n"
 msgstr "%F%S không thể chạy ngược bộ đếm địa điểm (từ %V về %V)\n"
 
-#: ldexp.c:795
+#: ldexp.c:807
 msgid "%P%F:%s: hash creation failed\n"
 msgstr "%P%F:%s: lỗi tạo băm\n"
 
-#: ldexp.c:1054 ldexp.c:1079
-#, c-format
-msgid "%F%S nonconstant expression for %s\n"
-msgstr "%F%S biểu thức khác hằng cho %s\n"
-
-#: ldexp.c:1138
+#: ldexp.c:1066 ldexp.c:1091 ldexp.c:1150
 #, c-format
 msgid "%F%S: nonconstant expression for %s\n"
 msgstr "%F%S biểu thức khác hằng cho %s\n"
 
-#: ldfile.c:139
+#: ldfile.c:137
 #, c-format
 msgid "attempt to open %s failed\n"
 msgstr "lỗi thử mở %s\n"
 
-#: ldfile.c:141
+#: ldfile.c:139
 #, c-format
 msgid "attempt to open %s succeeded\n"
 msgstr "mở thành công %s\n"
 
-#: ldfile.c:147
+#: ldfile.c:145
 msgid "%F%P: invalid BFD target `%s'\n"
 msgstr "%F%P: đích BFD không hợp lệ « %s »\n"
 
-#: ldfile.c:256 ldfile.c:285
+#: ldfile.c:254 ldfile.c:283
 msgid "%P: skipping incompatible %s when searching for %s\n"
 msgstr "%P: đang bỏ qua %s không tương thích khi tìm kiếm %s\n"
 
-#: ldfile.c:269
+#: ldfile.c:267
 msgid "%F%P: attempted static link of dynamic object `%s'\n"
 msgstr "%F%P: đã thử liên kết tĩnh đối tượng động « %s »\n"
 
-#: ldfile.c:388
+#: ldfile.c:379
 msgid "%F%P: %s (%s): No such file: %E\n"
 msgstr "%F%P: %s (%s): Không có tập tin như vậy: %E\n"
 
-#: ldfile.c:391
+#: ldfile.c:382
 msgid "%F%P: %s: No such file: %E\n"
 msgstr "%F%P: %s: Không có tập tin như vậy: %E\n"
 
-#: ldfile.c:421
+#: ldfile.c:412
 msgid "%F%P: cannot find %s inside %s\n"
 msgstr "%F%P: không tìm thấy %s bên trong %s\n"
 
-#: ldfile.c:424
+#: ldfile.c:415
 msgid "%F%P: cannot find %s\n"
 msgstr "%F%P: không tìm thấy được %s\n"
 
-#: ldfile.c:441 ldfile.c:457
+#: ldfile.c:431 ldfile.c:449
 #, c-format
 msgid "cannot find script file %s\n"
 msgstr "không tìm thấy tập tin văn lệnh %s\n"
 
-#: ldfile.c:443 ldfile.c:459
+#: ldfile.c:433 ldfile.c:451
 #, c-format
 msgid "opened script file %s\n"
 msgstr "đã mở tập tin văn lệnh %s\n"
 
-#: ldfile.c:503
+#: ldfile.c:601
 msgid "%P%F: cannot open linker script file %s: %E\n"
 msgstr "%P%F: không thể mở tập tin văn lệnh liên kết %s: %E\n"
 
-#: ldfile.c:550
+#: ldfile.c:648
 msgid "%P%F: cannot represent machine `%s'\n"
 msgstr "%P%F: không thể đại diện máy « %s »\n"
 
-#: ldlang.c:1069 ldlang.c:1111 ldlang.c:2831
+#: ldlang.c:1124 ldlang.c:1166 ldlang.c:2880
 msgid "%P%F: can not create hash table: %E\n"
 msgstr "%P%F: không thể tạo bảng băm: %E\n"
 
-#: ldlang.c:1154
+#: ldlang.c:1209
 msgid "%P:%S: warning: redeclaration of memory region '%s'\n"
 msgstr "%P:%S: cảnh báo : khai báo lại miền nhớ « %s »\n"
 
-#: ldlang.c:1160
+#: ldlang.c:1215
 msgid "%P:%S: warning: memory region %s not declared\n"
 msgstr "%P:%S: cảnh báo : chưa khai báo miền bộ nhớ %s\n"
 
-#: ldlang.c:1240 ldlang.c:1270
+#: ldlang.c:1270 ldlang.c:1305
 msgid "%P%F: failed creating section `%s': %E\n"
 msgstr "%P%F: lỗi tạo phần « %s »: %E\n"
 
-#: ldlang.c:1754
+#: ldlang.c:1799
 #, c-format
 msgid ""
 "\n"
@@ -645,7 +643,7 @@
 "Các phần nhập bị hủy\n"
 "\n"
 
-#: ldlang.c:1762
+#: ldlang.c:1807
 msgid ""
 "\n"
 "Memory Configuration\n"
@@ -655,23 +653,23 @@
 "Cấu hình bộ nhớ\n"
 "\n"
 
-#: ldlang.c:1764
+#: ldlang.c:1809
 msgid "Name"
 msgstr "Tên"
 
-#: ldlang.c:1764
+#: ldlang.c:1809
 msgid "Origin"
 msgstr "Gốc"
 
-#: ldlang.c:1764
+#: ldlang.c:1809
 msgid "Length"
 msgstr "Độ dài"
 
-#: ldlang.c:1764
+#: ldlang.c:1809
 msgid "Attributes"
 msgstr "Thuộc tính"
 
-#: ldlang.c:1804
+#: ldlang.c:1849
 #, c-format
 msgid ""
 "\n"
@@ -682,158 +680,170 @@
 "Văn lệnh liên kết và sơ đồ bộ nhớ\n"
 "\n"
 
-#: ldlang.c:1871
+#: ldlang.c:1915
 msgid "%P%F: Illegal use of `%s' section\n"
 msgstr "%P%F: không cho phép cách sử dụng phần « %s »\n"
 
-#: ldlang.c:1879
+#: ldlang.c:1923
 msgid "%P%F: output format %s cannot represent section called %s\n"
 msgstr "%P%F: định dạng xuất %s không thể đại diện phần tên %s\n"
 
-#: ldlang.c:2429
+#: ldlang.c:2473
 msgid "%B: file not recognized: %E\n"
 msgstr "%B: không nhận ra tập tin: %E\n"
 
-#: ldlang.c:2430
+#: ldlang.c:2474
 msgid "%B: matching formats:"
 msgstr "%B: các định dạng khớp:"
 
-#: ldlang.c:2437
+#: ldlang.c:2481
 msgid "%F%B: file not recognized: %E\n"
 msgstr "%F%B: không nhận ra tập tin: %E\n"
 
-#: ldlang.c:2507
+#: ldlang.c:2551
 msgid "%F%B: member %B in archive is not an object\n"
 msgstr "%F%B: bộ phạn %B trong khi không phải là đối tượng\n"
 
-#: ldlang.c:2518 ldlang.c:2532
+#: ldlang.c:2562 ldlang.c:2576
 msgid "%F%B: could not read symbols: %E\n"
 msgstr "%F%B: không thể đọc các ký hiệu : %E\n"
 
-#: ldlang.c:2801
+#: ldlang.c:2850
 msgid "%P: warning: could not find any targets that match endianness requirement\n"
 msgstr "%P: cảnh báo : không tìm thấy đích khớp với tình trạng cuối cần thiết\n"
 
-#: ldlang.c:2815
+#: ldlang.c:2864
 msgid "%P%F: target %s not found\n"
 msgstr "%P%F: không tìm thấy đích %s\n"
 
-#: ldlang.c:2817
+#: ldlang.c:2866
 msgid "%P%F: cannot open output file %s: %E\n"
 msgstr "%P%F: không thể mở tập tin xuất %s: %E\n"
 
-#: ldlang.c:2823
+#: ldlang.c:2872
 msgid "%P%F:%s: can not make object file: %E\n"
 msgstr "%P%F:%s: không thể tạo tập tin đối tượng: %E\n"
 
-#: ldlang.c:2827
+#: ldlang.c:2876
 msgid "%P%F:%s: can not set architecture: %E\n"
 msgstr "%P%F:%s: không thể đặt kiến trúc: %E\n"
 
-#: ldlang.c:2975
+#: ldlang.c:3024
 msgid "%P%F: bfd_hash_lookup failed creating symbol %s\n"
 msgstr "%P%F: lỗi « bfd_hash_lookup » khi tạo ký hiệu %s\n"
 
-#: ldlang.c:2993
+#: ldlang.c:3042
 msgid "%P%F: bfd_hash_allocate failed creating symbol %s\n"
 msgstr "%P%F: lỗi « bfd_hash_lookup » khi tạo ký hiệu %s\n"
 
-#: ldlang.c:3426
+#: ldlang.c:3418
+msgid "%F%P: %s not found for insert\n"
+msgstr "%F%P: không tìm thấy %s để chèn vào\n"
+
+#: ldlang.c:3633
 msgid " load address 0x%V"
 msgstr " nạp địa chỉ 0x%V"
 
-#: ldlang.c:3661
+#: ldlang.c:3873
 msgid "%W (size before relaxing)\n"
 msgstr "%W (kích cỡ trước khi lơi ra)\n"
 
-#: ldlang.c:3747
+#: ldlang.c:3964
 #, c-format
 msgid "Address of section %s set to "
 msgstr "Địa chỉ của phần %s được đặt thành "
 
-#: ldlang.c:3900
+#: ldlang.c:4117
 #, c-format
 msgid "Fail with %d\n"
 msgstr "Thất bại với %d\n"
 
-#: ldlang.c:4172
+#: ldlang.c:4397
 msgid "%X%P: section %s [%V -> %V] overlaps section %s [%V -> %V]\n"
 msgstr "%X%P: phần %s [%V -> %V] chồng chéo lên phần %s [%V -> %V]\n"
 
-#: ldlang.c:4197
+#: ldlang.c:4413
+msgid "%X%P: region %s overflowed by %ld bytes\n"
+msgstr "%X%P: vùng %s bị %ld byte tràn\n"
+
+#: ldlang.c:4436
 msgid "%X%P: address 0x%v of %B section %s is not within region %s\n"
 msgstr "%X%P: địa chỉ 0x%v cửa %B phần %s không nằm trong miền %s\n"
 
-#: ldlang.c:4206
-msgid "%X%P: region %s is full (%B section %s)\n"
-msgstr "%X%P: miền %s đã đầy (%B phần %s)\n"
+#: ldlang.c:4447
+msgid "%X%P: %B section %s will not fit in region %s\n"
+msgstr "%X%P: phần %B %s quá lớn so với vùng %s\n"
 
-#: ldlang.c:4247
+#: ldlang.c:4487
 #, c-format
 msgid "%F%S: non constant or forward reference address expression for section %s\n"
 msgstr "%F%S: biểu thức địa chỉ tham chiếu khác hằng hay tiếp lên cho phần %s\n"
 
-#: ldlang.c:4272
+#: ldlang.c:4512
 msgid "%P%X: Internal error on COFF shared library section %s\n"
 msgstr "%P%X: lỗi nội bộ với phần thư viện dùng chung COFF %s\n"
 
-#: ldlang.c:4331
+#: ldlang.c:4571
 msgid "%P%F: error: no memory region specified for loadable section `%s'\n"
 msgstr "%P%F: lỗi: chưa ghi rõ vùng bộ nhớ cho phần có khả năng nạp « %s »\n"
 
-#: ldlang.c:4336
+#: ldlang.c:4576
 msgid "%P: warning: no memory region specified for loadable section `%s'\n"
 msgstr "%P: lỗi: chưa ghi rõ vùng bộ nhớ cho phần có khả năng nạp « %s »\n"
 
-#: ldlang.c:4358
+#: ldlang.c:4598
 msgid "%P: warning: changing start of section %s by %lu bytes\n"
 msgstr "%P: cảnh báo : đang thay đổi đầu của phần %s theo %lu byte\n"
 
-#: ldlang.c:4437
+#: ldlang.c:4675
 msgid "%P: warning: dot moved backwards before `%s'\n"
 msgstr "%P: cảnh báo : dấu chấm được di chuyển về ngược trước « %s »\n"
 
-#: ldlang.c:4609
+#: ldlang.c:4848
 msgid "%P%F: can't relax section: %E\n"
 msgstr "%P%F: không thể lơi ra phần: %E\n"
 
-#: ldlang.c:4898
+#: ldlang.c:5170
 msgid "%F%P: invalid data statement\n"
 msgstr "%F%P: câu dữ liệu không hợp lệ\n"
 
-#: ldlang.c:4931
+#: ldlang.c:5203
 msgid "%F%P: invalid reloc statement\n"
 msgstr "%F%P: câu định vị lại không hợp lệ\n"
 
-#: ldlang.c:5063
+#: ldlang.c:5322
+msgid "%P%F: gc-sections requires either an entry or an undefined symbol\n"
+msgstr "%P%F: gc-sections yêu cầu hoặc một mục nhập hoặc một ký hiệu chưa xác định\n"
+
+#: ldlang.c:5347
 msgid "%P%F:%s: can't set start address\n"
 msgstr "%P%F:%s: không thể đặt địa chỉ bắt đầu\n"
 
-#: ldlang.c:5076 ldlang.c:5095
+#: ldlang.c:5360 ldlang.c:5379
 msgid "%P%F: can't set start address\n"
 msgstr "%P%F: không thể đặt địa chỉ bắt đầu\n"
 
-#: ldlang.c:5088
+#: ldlang.c:5372
 msgid "%P: warning: cannot find entry symbol %s; defaulting to %V\n"
 msgstr "%P: cảnh báo : không tìm thấy ký hiệu vào %s; nên dùng giá trị mặc định %V\n"
 
-#: ldlang.c:5100
+#: ldlang.c:5384
 msgid "%P: warning: cannot find entry symbol %s; not setting start address\n"
 msgstr "%P: cảnh báo : không tìm thấy ký hiệu vào %s; nên không đặt địa chỉ bắt đầu\n"
 
-#: ldlang.c:5149
+#: ldlang.c:5434
 msgid "%P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported\n"
 msgstr "%P%F: không hỗ trợ khả năng liên kết có khả năng định vị lại với sự định vị lại từ định dạng %s (%B) sang định dạng %s (%B).\n"
 
-#: ldlang.c:5159
+#: ldlang.c:5444
 msgid "%P%X: %s architecture of input file `%B' is incompatible with %s output\n"
 msgstr "%P%X: kiến trúc %s của tập tin nhập « %B » không tương thích với kết xuất %s\n"
 
-#: ldlang.c:5181
+#: ldlang.c:5466
 msgid "%P%X: failed to merge target specific data of file %B\n"
 msgstr "%P%X: lỗi hợp nhất dữ liệu đặc trưng cho đích của tập tin %B\n"
 
-#: ldlang.c:5265
+#: ldlang.c:5567
 msgid ""
 "\n"
 "Allocating common symbols\n"
@@ -841,7 +851,7 @@
 "\n"
 "Đang cấp phát các ký hiệu dùng chung\n"
 
-#: ldlang.c:5266
+#: ldlang.c:5568
 msgid ""
 "Common symbol       size              file\n"
 "\n"
@@ -849,156 +859,160 @@
 "Ký hiệu chung      kích cỡ       tập tin\n"
 "\n"
 
-#: ldlang.c:5401
+#: ldlang.c:5701
 msgid "%P%F: invalid syntax in flags\n"
 msgstr "%P%F: cú pháp không hợp lệ trong các cờ\n"
 
 # Type: error
 # Description
-#: ldlang.c:5714
+#: ldlang.c:6069
 msgid "%P%F: Failed to create hash table\n"
 msgstr "%P%F: lỗi tạo bảng băm\n"
 
-#: ldlang.c:6009
+#: ldlang.c:6370
 msgid "%P%F: multiple STARTUP files\n"
 msgstr "%P%F: có nhiều tập tin STARTUP (khởi chạy)\n"
 
-#: ldlang.c:6057
+#: ldlang.c:6418
 msgid "%X%P:%S: section has both a load address and a load region\n"
 msgstr "%X%P:%S: phần có cả hai địa chỉ nạp và vùng nạp\n"
 
-#: ldlang.c:6314
+#: ldlang.c:6652
+msgid "%F%P: no sections assigned to phdrs\n"
+msgstr "%F%P: chưa gán phần cho phdirs\n"
+
+#: ldlang.c:6689
 msgid "%F%P: bfd_record_phdr failed: %E\n"
 msgstr "%F%P: « bfd_record_phdr » bị lỗi: %E\n"
 
-#: ldlang.c:6334
+#: ldlang.c:6709
 msgid "%X%P: section `%s' assigned to non-existent phdr `%s'\n"
 msgstr "%X%P: phần « %s » được gán cho phdr không tồn tại « %s »\n"
 
-#: ldlang.c:6725
+#: ldlang.c:7100
 msgid "%X%P: unknown language `%s' in version information\n"
 msgstr "%X%P: gặp ngôn ngữ lạ « %s » trong thông tin phiên bản\n"
 
-#: ldlang.c:6867
+#: ldlang.c:7242
 msgid "%X%P: anonymous version tag cannot be combined with other version tags\n"
 msgstr "%X%P: thẻ phiên bản vô danh không kết hợp được với thẻ phiên bản khác\n"
 
-#: ldlang.c:6876
+#: ldlang.c:7251
 msgid "%X%P: duplicate version tag `%s'\n"
 msgstr "%X%P: thẻ phiên bản trùng « %s »\n"
 
-#: ldlang.c:6896 ldlang.c:6905 ldlang.c:6922 ldlang.c:6932
+#: ldlang.c:7271 ldlang.c:7280 ldlang.c:7297 ldlang.c:7307
 msgid "%X%P: duplicate expression `%s' in version information\n"
 msgstr "%X%P: biểu thức trùng « %s » trong thông tin phiên bản\n"
 
-#: ldlang.c:6972
+#: ldlang.c:7347
 msgid "%X%P: unable to find version dependency `%s'\n"
 msgstr "%X%P: không tìm thấy quan hệ phụ thuộc của phiên bản « %s »\n"
 
-#: ldlang.c:6994
+#: ldlang.c:7369
 msgid "%X%P: unable to read .exports section contents\n"
 msgstr "%X%P: không thể đọc nội dung của phần « .exports » (xuất khẩu)\n"
 
-#: ldmain.c:234
+#: ldmain.c:233
 msgid "%X%P: can't set BFD default target to `%s': %E\n"
 msgstr "%X%P: không thể đặt đích mặc định BFD thành « %s »: %E\n"
 
-#: ldmain.c:298
+#: ldmain.c:296
 msgid "%P%F: --relax and -r may not be used together\n"
 msgstr "%P%F: không cho phép sử dụng đồng thời hai tùy chọn « --relax » (lơi ra) và « -r »\n"
 
-#: ldmain.c:300
+#: ldmain.c:298
 msgid "%P%F: -r and -shared may not be used together\n"
 msgstr "%P%F: không thể sử dụng đồng thời hai tùy chọn « -r » và « -shared » (dùng chung)\n"
 
-#: ldmain.c:343
+#: ldmain.c:341
 msgid "%P%F: -F may not be used without -shared\n"
 msgstr "%P%F: không thể sử dụng tùy chọn « -F » khi không cũng có tùy chọn « -shared » (dùng chung)\n"
 
-#: ldmain.c:345
+#: ldmain.c:343
 msgid "%P%F: -f may not be used without -shared\n"
 msgstr "%P%F: không thể sử dụng tùy chọn « -f » khi không có tùy chọn « -shared » (dùng chung)\n"
 
-#: ldmain.c:397
+#: ldmain.c:391
 msgid "using external linker script:"
 msgstr "đang dùng văn lệnh liên kết bên ngoài:"
 
-#: ldmain.c:399
+#: ldmain.c:393
 msgid "using internal linker script:"
 msgstr "đang dùng văn lệnh liên kết bên trong:"
 
-#: ldmain.c:433
+#: ldmain.c:427
 msgid "%P%F: no input files\n"
 msgstr "%P%F: không có tập tin nhập vào\n"
 
-#: ldmain.c:437
+#: ldmain.c:431
 msgid "%P: mode %s\n"
 msgstr "%P: chế độ %s\n"
 
-#: ldmain.c:453
+#: ldmain.c:447
 msgid "%P%F: cannot open map file %s: %E\n"
 msgstr "%P%F: không thể mở tập tin sơ đồ %s: %E\n"
 
-#: ldmain.c:485
+#: ldmain.c:479
 msgid "%P: link errors found, deleting executable `%s'\n"
 msgstr "%P: gặp lỗi liên kết nên xoá tập tin có khả năng thực hiện « %s »\n"
 
-#: ldmain.c:494
+#: ldmain.c:488
 msgid "%F%B: final close failed: %E\n"
 msgstr "%F%B: lỗi đóng cuối cùng: %E\n"
 
-#: ldmain.c:520
+#: ldmain.c:514
 msgid "%X%P: unable to open for source of copy `%s'\n"
 msgstr "%X%P: không thể mở cho nguồn của bản sao « %s »\n"
 
-#: ldmain.c:523
+#: ldmain.c:517
 msgid "%X%P: unable to open for destination of copy `%s'\n"
 msgstr "%X%P: không thể mở cho đích của bản sao « %s »\n"
 
-#: ldmain.c:530
+#: ldmain.c:524
 msgid "%P: Error writing file `%s'\n"
 msgstr "%P: gặp lỗi khi ghi tập tin « %s »\n"
 
-#: ldmain.c:535 pe-dll.c:1572
+#: ldmain.c:529 pe-dll.c:1613
 #, c-format
 msgid "%P: Error closing file `%s'\n"
 msgstr "%P: gặp lỗi khi đóng tập tin « %s »\n"
 
-#: ldmain.c:551
+#: ldmain.c:545
 #, c-format
 msgid "%s: total time in link: %ld.%06ld\n"
 msgstr "%s: tổng thời gian trong liên kết: %ld.%06ld\n"
 
-#: ldmain.c:554
+#: ldmain.c:548
 #, c-format
 msgid "%s: data size %ld\n"
 msgstr "%s: kích cỡ dữ liệu %ld\n"
 
-#: ldmain.c:637
+#: ldmain.c:631
 msgid "%P%F: missing argument to -m\n"
 msgstr "%P%F: thiếu đối số tới « -m »\n"
 
-#: ldmain.c:784 ldmain.c:803 ldmain.c:834
+#: ldmain.c:678 ldmain.c:697 ldmain.c:728
 msgid "%P%F: bfd_hash_table_init failed: %E\n"
 msgstr "%P%F: « bfd_hash_table_init » bị lỗi: %E\n"
 
-#: ldmain.c:788 ldmain.c:807
+#: ldmain.c:682 ldmain.c:701
 msgid "%P%F: bfd_hash_lookup failed: %E\n"
 msgstr "%P%F: « bfd_hash_lookup » bị lỗi: %E\n"
 
-#: ldmain.c:821
+#: ldmain.c:715
 msgid "%X%P: error: duplicate retain-symbols-file\n"
 msgstr "%X%P: lỗi: « retain-symbols-file » (giữ lại tập tin ký hiệu) trùng\n"
 
-#: ldmain.c:864
+#: ldmain.c:758
 msgid "%P%F: bfd_hash_lookup for insertion failed: %E\n"
 msgstr "%P%F: lỗi « bfd_hash_lookup » để chèn: %E\n"
 
-#: ldmain.c:869
+#: ldmain.c:763
 msgid "%P: `-retain-symbols-file' overrides `-s' and `-S'\n"
 msgstr "%P: tùy chọn « -retain-symbols-file » (giữ lại tập tin ký hiệu) có quyền cao hơn « -s » và « -S »\n"
 
-#: ldmain.c:944
+#: ldmain.c:827
 #, c-format
 msgid ""
 "Archive member included because of file (symbol)\n"
@@ -1007,133 +1021,133 @@
 "Gồm bộ phạn kho do tập tin (ký hiệu)\n"
 "\n"
 
-#: ldmain.c:1014
+#: ldmain.c:897
 msgid "%X%C: multiple definition of `%T'\n"
 msgstr "%X%C: xác định nhiều lần « %T »\n"
 
-#: ldmain.c:1017
+#: ldmain.c:900
 msgid "%D: first defined here\n"
 msgstr "%D: xác định lần đầu ở đây\n"
 
-#: ldmain.c:1021
+#: ldmain.c:904
 msgid "%P: Disabling relaxation: it will not work with multiple definitions\n"
 msgstr "%P: đang tắt khả năng lơi ra: nó sẽ không hoạt động với nhiều lời xác định\n"
 
-#: ldmain.c:1051
+#: ldmain.c:934
 msgid "%B: warning: definition of `%T' overriding common\n"
 msgstr "%B: cảnh báo : lời xác định « %T » đè lên sự dùng chung\n"
 
-#: ldmain.c:1054
+#: ldmain.c:937
 msgid "%B: warning: common is here\n"
 msgstr "%B: cảnh báo : sự dùng chung ở đây\n"
 
-#: ldmain.c:1061
+#: ldmain.c:944
 msgid "%B: warning: common of `%T' overridden by definition\n"
 msgstr "%B: cảnh báo : sự dùng chung của « %T » bị đè bởi lởi xác định\n"
 
-#: ldmain.c:1064
+#: ldmain.c:947
 msgid "%B: warning: defined here\n"
 msgstr "%B: cảnh báo : đã xác định ở đây\n"
 
-#: ldmain.c:1071
+#: ldmain.c:954
 msgid "%B: warning: common of `%T' overridden by larger common\n"
 msgstr "%B: cảnh báo : sự dùng chung của « %T » bị đè bởi sự dùng chung lớn hơn\n"
 
-#: ldmain.c:1074
+#: ldmain.c:957
 msgid "%B: warning: larger common is here\n"
 msgstr "%B: cảnh báo : sự dùng chung lớn hơn ở đây\n"
 
-#: ldmain.c:1078
+#: ldmain.c:961
 msgid "%B: warning: common of `%T' overriding smaller common\n"
 msgstr "%B: cảnh báo : sự dùng chung của « %T » đè sự dùng chung nhỏ hơn\n"
 
-#: ldmain.c:1081
+#: ldmain.c:964
 msgid "%B: warning: smaller common is here\n"
 msgstr "%B: cảnh báo : sự dùng chung nhỏ hơn ở đây\n"
 
-#: ldmain.c:1085
+#: ldmain.c:968
 msgid "%B: warning: multiple common of `%T'\n"
 msgstr "%B: cảnh báo : có nhiều sự dùng chung của « %T »\n"
 
-#: ldmain.c:1087
+#: ldmain.c:970
 msgid "%B: warning: previous common is here\n"
 msgstr "%B: cảnh báo : sự dùng chung trước ở đây\n"
 
-#: ldmain.c:1107 ldmain.c:1145
+#: ldmain.c:990 ldmain.c:1028
 msgid "%P: warning: global constructor %s used\n"
 msgstr "%P: cảnh báo : dùng bộ cấu trúc toàn cục %s\n"
 
-#: ldmain.c:1155
+#: ldmain.c:1038
 msgid "%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n"
 msgstr "%P%F: lỗi hậu phương BFD: « BFD_RELOC_CTOR » không được hỗ trợ\n"
 
 #. We found a reloc for the symbol we are looking for.
-#: ldmain.c:1209 ldmain.c:1211 ldmain.c:1213 ldmain.c:1251 ldmain.c:1299
+#: ldmain.c:1092 ldmain.c:1094 ldmain.c:1096 ldmain.c:1114 ldmain.c:1159
 msgid "warning: "
 msgstr "cảnh báo : "
 
-#: ldmain.c:1334
+#: ldmain.c:1194
 msgid "%F%P: bfd_hash_table_init failed: %E\n"
 msgstr "%F%P: « bfd_hash_table_init » bị lỗi: %E\n"
 
-#: ldmain.c:1341
+#: ldmain.c:1201
 msgid "%F%P: bfd_hash_lookup failed: %E\n"
 msgstr "%F%P: « bfd_hash_lookup » bị lỗi: %E\n"
 
-#: ldmain.c:1362
+#: ldmain.c:1222
 msgid "%X%C: undefined reference to `%T'\n"
 msgstr "%X%C: tham chiếu đến « %T » chưa xác định\n"
 
-#: ldmain.c:1365
+#: ldmain.c:1225
 msgid "%C: warning: undefined reference to `%T'\n"
 msgstr "%C: cảnh báo : tham chiếu đến « %T » chưa xác định\n"
 
-#: ldmain.c:1371
+#: ldmain.c:1231
 msgid "%X%D: more undefined references to `%T' follow\n"
 msgstr "%X%D: theo đây có các tham chiếu đến « %T » chưa xác định thêm nữa\n"
 
-#: ldmain.c:1374
+#: ldmain.c:1234
 msgid "%D: warning: more undefined references to `%T' follow\n"
 msgstr "%D: cảnh báo : theo đây có các tham chiếu đến « %T » chưa xác định thêm nữa\n"
 
-#: ldmain.c:1385
+#: ldmain.c:1245
 msgid "%X%B: undefined reference to `%T'\n"
 msgstr "%X%B: tham chiếu đến « %T » chưa xác định\n"
 
-#: ldmain.c:1388
+#: ldmain.c:1248
 msgid "%B: warning: undefined reference to `%T'\n"
 msgstr "%B: cảnh báo : tham chiếu đến « %T » chưa xác định\n"
 
-#: ldmain.c:1394
+#: ldmain.c:1254
 msgid "%X%B: more undefined references to `%T' follow\n"
 msgstr "%X%B: theo đây có các tham chiếu đến « %T » chưa xác định thêm nữa\n"
 
-#: ldmain.c:1397
+#: ldmain.c:1257
 msgid "%B: warning: more undefined references to `%T' follow\n"
 msgstr "%B: cảnh báo : theo đây có các tham chiếu đến « %T » chưa xác định thêm nữa\n"
 
-#: ldmain.c:1436
+#: ldmain.c:1296
 msgid " additional relocation overflows omitted from the output\n"
 msgstr "các sự tràn định vị lại thêm nữa bị bỏ đi khỏi kết xuất\n"
 
-#: ldmain.c:1449
+#: ldmain.c:1309
 msgid " relocation truncated to fit: %s against undefined symbol `%T'"
 msgstr " sự định vị lại bị cắt ngắn để vừa: %s so với ký hiệu chưa xác định « %T »"
 
-#: ldmain.c:1454
+#: ldmain.c:1314
 msgid " relocation truncated to fit: %s against symbol `%T' defined in %A section in %B"
 msgstr " sự định vị lại bị cắt ngắn để vừa: %s so với ký hiệu « %T » đã xác định trong phần %A trong %B"
 
-#: ldmain.c:1466
+#: ldmain.c:1326
 msgid " relocation truncated to fit: %s against `%T'"
 msgstr " sự định vị lại bị cắt ngắn để vừa: %s so với « %T »"
 
-#: ldmain.c:1483
+#: ldmain.c:1343
 #, c-format
 msgid "%X%C: dangerous relocation: %s\n"
 msgstr "%X%C: sự định vị lại nguy hiểm: %s\n"
 
-#: ldmain.c:1498
+#: ldmain.c:1358
 msgid "%X%C: reloc refers to symbol `%T' which is not being output\n"
 msgstr "%X%C: sự định vị lại tham chiếu đến ký hiệu « %T » mà không đang được xuất ra\n"
 
@@ -1147,743 +1161,749 @@
 msgid "built in linker script:%u"
 msgstr "văn lệnh liên kết có sẵn: %u"
 
-#: ldmisc.c:301 ldmisc.c:305
-msgid "%B%F: could not read symbols\n"
-msgstr "%B%F: không thể đọc các ký hiệu\n"
-
-#: ldmisc.c:347
+#: ldmisc.c:323
 msgid "%B: In function `%T':\n"
 msgstr "%B: trong hàm « %T »:\n"
 
-#: ldmisc.c:472
+#: ldmisc.c:445
 msgid "%F%P: internal error %s %d\n"
 msgstr "%F%P: lỗi nội bộ %s %d\n"
 
-#: ldmisc.c:521
+#: ldmisc.c:494
 msgid "%P: internal error: aborting at %s line %d in %s\n"
 msgstr "%P: lỗi nội bộ : nên hủy bỏ tại %s dòng %d trong %s\n"
 
-#: ldmisc.c:524
+#: ldmisc.c:497
 msgid "%P: internal error: aborting at %s line %d\n"
 msgstr "%P: lỗi nội bộ : nên hủy bỏ tại %s dòng %d\n"
 
-#: ldmisc.c:526
+#: ldmisc.c:499
 msgid "%P%F: please report this bug\n"
 msgstr "%P%F: hãy thông báo lỗi này\n"
 
 #. Output for noisy == 2 is intended to follow the GNU standards.
-#: ldver.c:37
+#: ldver.c:38
 #, c-format
 msgid "GNU ld %s\n"
 msgstr "GNU ld %s\n"
 
-#: ldver.c:41
+#: ldver.c:42
 #, c-format
 msgid "Copyright 2007 Free Software Foundation, Inc.\n"
 msgstr "Tác quyền © năm 2007 của Tổ chức Phần mềm Tự do.\n"
 
-#: ldver.c:42
+#: ldver.c:43
 #, c-format
 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"
+"the GNU General Public License version 3 or (at your option) a later version.\n"
+"This program has absolutely no warranty.\n"
 msgstr ""
 "Chương trình này là phần mềm tự do; bạn có thể phát hành lại nó\n"
-"với điều kiện của Giấy Phép Công Cộng GNU.\n"
+"với điều kiện của Giấy Phép Công Cộng GNU, hoặc phiên bản 3\n"
+"của Giấy Phép này, hoặc (tùy chọn) bất kỳ phiên bản sau nào.\n"
 "Chương trình này không bảo hành gì cả.\n"
 
-#: ldver.c:51
+#: ldver.c:53
 #, c-format
 msgid "  Supported emulations:\n"
 msgstr "  Mô phỏng đã hỗ trợ :\n"
 
-#: ldwrite.c:55 ldwrite.c:191
+#: ldwrite.c:56 ldwrite.c:196
 msgid "%P%F: bfd_new_link_order failed\n"
 msgstr "%P%F: « bfd_new_link_order » bị lỗi\n"
 
-#: ldwrite.c:344
+#: ldwrite.c:354
 msgid "%F%P: cannot create split section name for %s\n"
 msgstr "%F%P: không thể tạo tên phần đã xẻ cho %s\n"
 
-#: ldwrite.c:356
+#: ldwrite.c:366
 msgid "%F%P: clone section failed: %E\n"
 msgstr "%F%P: lỗi bắt chước phần: %E\n"
 
-#: ldwrite.c:394
+#: ldwrite.c:404
 #, c-format
 msgid "%8x something else\n"
 msgstr "%8x cái gì khác\n"
 
-#: ldwrite.c:564
+#: ldwrite.c:574
 msgid "%F%P: final link failed: %E\n"
 msgstr "%F%P: liên kết cuối cùng bị lỗi: %E\n"
 
-#: lexsup.c:205 lexsup.c:341
+#: lexsup.c:206 lexsup.c:344
 msgid "KEYWORD"
 msgstr "TỪ_KHOÁ"
 
-#: lexsup.c:205
+#: lexsup.c:206
 msgid "Shared library control for HP/UX compatibility"
 msgstr "Điều khiển thư viện dùng chung để tương thích với HP/UX"
 
-#: lexsup.c:208
+#: lexsup.c:209
 msgid "ARCH"
 msgstr "ARCH"
 
-#: lexsup.c:208
+#: lexsup.c:209
 msgid "Set architecture"
 msgstr "Đặt kiến trúc"
 
-#: lexsup.c:210 lexsup.c:447
+#: lexsup.c:211 lexsup.c:454
 msgid "TARGET"
 msgstr "ĐÍCH"
 
-#: lexsup.c:210
+#: lexsup.c:211
 msgid "Specify target for following input files"
 msgstr "Ghi rõ đích cho những tập tin nhập theo đây"
 
-#: lexsup.c:213 lexsup.c:262 lexsup.c:274 lexsup.c:287 lexsup.c:289
-#: lexsup.c:402 lexsup.c:459 lexsup.c:516 lexsup.c:528
+#: lexsup.c:214 lexsup.c:263 lexsup.c:275 lexsup.c:288 lexsup.c:290
+#: lexsup.c:408 lexsup.c:466 lexsup.c:526 lexsup.c:539
 msgid "FILE"
 msgstr "TẬP TIN"
 
-#: lexsup.c:213
+#: lexsup.c:214
 msgid "Read MRI format linker script"
 msgstr "Đọc văn lệnh liên kết định dạng MRI"
 
-#: lexsup.c:215
+#: lexsup.c:216
 msgid "Force common symbols to be defined"
 msgstr "Ép buộc xác định các ký hiệu dùng chung"
 
-#: lexsup.c:219 lexsup.c:501 lexsup.c:503 lexsup.c:505
+#: lexsup.c:220 lexsup.c:510 lexsup.c:512 lexsup.c:514
 msgid "ADDRESS"
 msgstr "ĐỊA CHỈ"
 
-#: lexsup.c:219
+#: lexsup.c:220
 msgid "Set start address"
 msgstr "Đặt địa chỉ bắt đầu"
 
-#: lexsup.c:221
+#: lexsup.c:222
 msgid "Export all dynamic symbols"
 msgstr "Xuất mọi ký hiệu động"
 
-#: lexsup.c:223
+#: lexsup.c:224
 msgid "Link big-endian objects"
 msgstr "Liên kết các đối tượng về cuối lớn"
 
-#: lexsup.c:225
+#: lexsup.c:226
 msgid "Link little-endian objects"
 msgstr "Liên kết các đối tượng về cuối nhỏ"
 
-#: lexsup.c:227 lexsup.c:230
+#: lexsup.c:228 lexsup.c:231
 msgid "SHLIB"
 msgstr "SHLIB"
 
-#: lexsup.c:227
+#: lexsup.c:228
 msgid "Auxiliary filter for shared object symbol table"
 msgstr "Bộ lọc bổ sung cho bảng ký hiệu đối tượng dùng chung"
 
-#: lexsup.c:230
+#: lexsup.c:231
 msgid "Filter for shared object symbol table"
 msgstr "Bộ lọc cho bảng ký hiệu đối tượng dùng chung"
 
-#: lexsup.c:233
+#: lexsup.c:234
 msgid "Ignored"
 msgstr "Bị bỏ qua"
 
-#: lexsup.c:235
+#: lexsup.c:236
 msgid "SIZE"
 msgstr "CỠ"
 
-#: lexsup.c:235
+#: lexsup.c:236
 msgid "Small data size (if no size, same as --shared)"
 msgstr "Kích cỡ dữ liệu nhỏ (không có kích cỡ thì bằng tùy chọn « --shared »)"
 
-#: lexsup.c:238
+#: lexsup.c:239
 msgid "FILENAME"
 msgstr "TÊN TẬP TIN"
 
-#: lexsup.c:238
+#: lexsup.c:239
 msgid "Set internal name of shared library"
 msgstr "Đặt tên nội bộ của thư viện dùng chung"
 
-#: lexsup.c:240
+#: lexsup.c:241
 msgid "PROGRAM"
 msgstr "CHƯƠNG TRÌNH"
 
-#: lexsup.c:240
+#: lexsup.c:241
 msgid "Set PROGRAM as the dynamic linker to use"
 msgstr "Đặt CHƯƠNG TRÌNH là bộ liên kết động cần dùng"
 
-#: lexsup.c:243
+#: lexsup.c:244
 msgid "LIBNAME"
 msgstr "TÊN THƯ VIỆN"
 
-#: lexsup.c:243
+#: lexsup.c:244
 msgid "Search for library LIBNAME"
 msgstr "Tìm kiếm thư viện TÊN THƯ VIỆN"
 
-#: lexsup.c:245
+#: lexsup.c:246
 msgid "DIRECTORY"
 msgstr "THƯ MỤC"
 
-#: lexsup.c:245
+#: lexsup.c:246
 msgid "Add DIRECTORY to library search path"
 msgstr "Thêm THƯ MỤC vào đường dẫn tìm kiếm thư viện"
 
-#: lexsup.c:248
+#: lexsup.c:249
 msgid "Override the default sysroot location"
 msgstr "Đè lên địa điểm sysroot (gốc hệ thống) mặc định"
 
-#: lexsup.c:250
+#: lexsup.c:251
 msgid "EMULATION"
 msgstr "MÔ PHỎNG"
 
-#: lexsup.c:250
+#: lexsup.c:251
 msgid "Set emulation"
 msgstr "Đặt sự mô phỏng"
 
-#: lexsup.c:252
+#: lexsup.c:253
 msgid "Print map file on standard output"
 msgstr "In tập tin sơ đồ ra thiết bị xuất chuẩn"
 
-#: lexsup.c:254
+#: lexsup.c:255
 msgid "Do not page align data"
 msgstr "Đừng chỉnh canh dữ liệu theo trang"
 
-#: lexsup.c:256
+#: lexsup.c:257
 msgid "Do not page align data, do not make text readonly"
 msgstr "Đừng chỉnh canh dữ liệu theo trang, đừng đặt văn bản là chỉ-đọc"
 
-#: lexsup.c:259
+#: lexsup.c:260
 msgid "Page align data, make text readonly"
 msgstr "Chỉnh canh dữ liệu theo trang, đặt văn bản là chỉ-đọc"
 
-#: lexsup.c:262
+#: lexsup.c:263
 msgid "Set output file name"
 msgstr "Đặt tên tập tin xuất"
 
-#: lexsup.c:264
+#: lexsup.c:265
 msgid "Optimize output file"
 msgstr "Tối ưu hoá tập tin xuất"
 
-#: lexsup.c:266
+#: lexsup.c:267
 msgid "Ignored for SVR4 compatibility"
 msgstr "Bị bỏ qua để tương thích với SVR4"
 
-#: lexsup.c:270
+#: lexsup.c:271
 msgid "Generate relocatable output"
 msgstr "Tạo ra kết xuất có thể định vị lại"
 
-#: lexsup.c:274
+#: lexsup.c:275
 msgid "Just link symbols (if directory, same as --rpath)"
 msgstr "Chỉ liên kết các ký hiệu (thư mục thì bằng tùy chọn « --rpath »)"
 
-#: lexsup.c:277
+#: lexsup.c:278
 msgid "Strip all symbols"
 msgstr "Tước mọi ký hiệu"
 
-#: lexsup.c:279
+#: lexsup.c:280
 msgid "Strip debugging symbols"
 msgstr "Tước các ký hiệu gỡ lối"
 
-#: lexsup.c:281
+#: lexsup.c:282
 msgid "Strip symbols in discarded sections"
 msgstr "Tước các ký hiệu trong phần bị hủy"
 
-#: lexsup.c:283
+#: lexsup.c:284
 msgid "Do not strip symbols in discarded sections"
 msgstr "Đừng tước ký hiệu trong phần bị hủy"
 
-#: lexsup.c:285
+#: lexsup.c:286
 msgid "Trace file opens"
 msgstr "Tập tin vết có mở"
 
-#: lexsup.c:287
+#: lexsup.c:288
 msgid "Read linker script"
 msgstr "Đọc văn lệnh liên kết"
 
-#: lexsup.c:289
+#: lexsup.c:290
 msgid "Read default linker script"
 msgstr "Đọc văn lệnh liên kết mặc định"
 
-#: lexsup.c:293 lexsup.c:311 lexsup.c:379 lexsup.c:400 lexsup.c:494
-#: lexsup.c:519 lexsup.c:554
+#: lexsup.c:294 lexsup.c:312 lexsup.c:385 lexsup.c:406 lexsup.c:503
+#: lexsup.c:529 lexsup.c:565
 msgid "SYMBOL"
 msgstr "KÝ HIỆU"
 
-#: lexsup.c:293
+#: lexsup.c:294
 msgid "Start with undefined reference to SYMBOL"
 msgstr "Bắt đầu với tham chiệu chưa xác định đến KÝ HIỆU"
 
-#: lexsup.c:296
+#: lexsup.c:297
 msgid "[=SECTION]"
 msgstr "[=PHẦN]"
 
-#: lexsup.c:297
+#: lexsup.c:298
 msgid "Don't merge input [SECTION | orphan] sections"
 msgstr "Đừng trộn phần nhập [PHẦN | thừa]"
 
-#: lexsup.c:299
+#: lexsup.c:300
 msgid "Build global constructor/destructor tables"
 msgstr "Xây dựng các bảng cấu tạo/phá toàn cục"
 
-#: lexsup.c:301
+#: lexsup.c:302
 msgid "Print version information"
 msgstr "In ra thông tin phiên bản"
 
-#: lexsup.c:303
+#: lexsup.c:304
 msgid "Print version and emulation information"
 msgstr "In ra thông tin phiên bản và mô phỏng"
 
-#: lexsup.c:305
+#: lexsup.c:306
 msgid "Discard all local symbols"
 msgstr "Hủy mọi ký hiệu cục bộ"
 
-#: lexsup.c:307
+#: lexsup.c:308
 msgid "Discard temporary local symbols (default)"
 msgstr "Hủy các ký hiệu cục bộ tạm thời (mặc định)"
 
-#: lexsup.c:309
+#: lexsup.c:310
 msgid "Don't discard any local symbols"
 msgstr "Đừng hủy ký hiệu cục bộ"
 
-#: lexsup.c:311
+#: lexsup.c:312
 msgid "Trace mentions of SYMBOL"
 msgstr "Vết lần gặp KÝ HIỆU"
 
-#: lexsup.c:313 lexsup.c:461 lexsup.c:463
+#: lexsup.c:314 lexsup.c:468 lexsup.c:470
 msgid "PATH"
 msgstr "ĐƯỜNG DẪN"
 
-#: lexsup.c:313
+#: lexsup.c:314
 msgid "Default search path for Solaris compatibility"
 msgstr "Đường dẫn tìm kiếm mặc định để tương thích với Solaris"
 
-#: lexsup.c:316
+#: lexsup.c:317
 msgid "Start a group"
 msgstr "Bắt đầu nhóm"
 
-#: lexsup.c:318
+#: lexsup.c:319
 msgid "End a group"
 msgstr "Kết thúc nhóm"
 
-#: lexsup.c:322
+#: lexsup.c:323
 msgid "Accept input files whose architecture cannot be determined"
 msgstr "Chấp nhận tập tin nhập có kiến trúc không rõ"
 
-#: lexsup.c:326
+#: lexsup.c:327
 msgid "Reject input files whose architecture is unknown"
 msgstr "Từ chối tập tin nhập có kiến trúc không rõ"
 
-#: lexsup.c:329
+#: lexsup.c:330
 msgid ""
 "Set DT_NEEDED tags for DT_NEEDED entries in\n"
-"\t\t\t\tfollowing dynamic libs"
+"                                following dynamic libs"
 msgstr ""
-"Lập thẻ « DT_NEEDED » (cần thiết DT)\n"
+"Đặt thẻ « DT_NEEDED » (DT yêu cầu)\n"
 "\tcho mục nhập « DT_NEEDED »\n"
 "\ttrong những thư viện động theo đây"
 
-#: lexsup.c:332
+#: lexsup.c:334
 msgid ""
 "Do not set DT_NEEDED tags for DT_NEEDED entries\n"
-"\t\t\t\tin following dynamic libs"
+"                                in following dynamic libs"
 msgstr ""
-"Đừng lập thẻ « DT_NEEDED » (cần thiết DT)\n"
-"\tcho mục nhập « DT_NEEDED »\n"
-"\ttrong những thư viện động theo đây"
+"Không đặt thẻ « DT_NEEDED »\n"
+"cho mục nhập « DT_NEEDED »\n"
+"trong những thư viện theo đây"
 
-#: lexsup.c:335
+#: lexsup.c:338
 msgid "Only set DT_NEEDED for following dynamic libs if used"
 msgstr ""
 "Chỉ lập thẻ « DT_NEEDED » (cần thiết DT)\n"
 "\tcho những thư viện động theo đây nếu được dùng"
 
-#: lexsup.c:338
+#: lexsup.c:341
 msgid "Always set DT_NEEDED for following dynamic libs"
 msgstr ""
 "Luôn luôn lập thẻ « DT_NEEDED » (cần thiết DT)\n"
 "\tcho những thư viện động theo đây"
 
-#: lexsup.c:341
+#: lexsup.c:344
 msgid "Ignored for SunOS compatibility"
 msgstr "Bị bỏ qua để tương thích với SunOS"
 
-#: lexsup.c:343
+#: lexsup.c:346
 msgid "Link against shared libraries"
 msgstr "Liên kết so với thư viện dùng chung"
 
-#: lexsup.c:349
+#: lexsup.c:352
 msgid "Do not link against shared libraries"
 msgstr "Đừng liên kết so với thư viện dùng chung"
 
-#: lexsup.c:357
+#: lexsup.c:360
 msgid "Bind global references locally"
 msgstr "Đóng kết cục bộ tham chiếu toàn cục"
 
-#: lexsup.c:359
+#: lexsup.c:362
 msgid "Bind global function references locally"
 msgstr "Đóng kết cục bộ tham chiếu hàm toàn cục"
 
-#: lexsup.c:361
+#: lexsup.c:364
 msgid "Check section addresses for overlaps (default)"
 msgstr "Kiểm tra địa chỉ phần có chồng chéo (mặc định)"
 
-#: lexsup.c:364
+#: lexsup.c:367
 msgid "Do not check section addresses for overlaps"
 msgstr "Đừng kiểm tra địa chỉ phần có chồng chéo"
 
-#: lexsup.c:367
+#: lexsup.c:370
 msgid "Output cross reference table"
 msgstr "Xuất bảng tham chiếu chéo"
 
-#: lexsup.c:369
+#: lexsup.c:372
 msgid "SYMBOL=EXPRESSION"
 msgstr "KÝ HIỆU=BIỂU THỨC"
 
-#: lexsup.c:369
+#: lexsup.c:372
 msgid "Define a symbol"
 msgstr "Xác định một ký hiệu"
 
-#: lexsup.c:371
+#: lexsup.c:374
 msgid "[=STYLE]"
 msgstr "[=KIỂU DÁNG]"
 
-#: lexsup.c:371
+#: lexsup.c:374
 msgid "Demangle symbol names [using STYLE]"
 msgstr "Tháo gỡ tên ký hiệu [dùng KIỂU DÁNG]"
 
-#: lexsup.c:374
+#: lexsup.c:377
 msgid "Generate embedded relocs"
 msgstr "Tạo ra sự định vị lại nhúng"
 
-#: lexsup.c:376
+#: lexsup.c:379
 msgid "Treat warnings as errors"
 msgstr "Xử lý cảnh báo là lỗi"
 
-#: lexsup.c:379
+#: lexsup.c:382
+msgid "Do not treat warnings as errors (default)"
+msgstr "Không xử lý cảnh báo là lỗi (mặc định)"
+
+#: lexsup.c:385
 msgid "Call SYMBOL at unload-time"
 msgstr "Gọi KÝ HIỆU vào lúc bỏ nạp"
 
-#: lexsup.c:381
+#: lexsup.c:387
 msgid "Force generation of file with .exe suffix"
 msgstr "Ép buộc tạo ra tập tin có hậu tố « .exe »"
 
-#: lexsup.c:383
+#: lexsup.c:389
 msgid "Remove unused sections (on some targets)"
 msgstr "Gỡ bỏ các phần không dùng (trên một số đích)"
 
-#: lexsup.c:386
+#: lexsup.c:392
 msgid "Don't remove unused sections (default)"
 msgstr "Đừng gỡ bỏ các phần không dùng (mặc định)"
 
-#: lexsup.c:389
+#: lexsup.c:395
 msgid "List removed unused sections on stderr"
 msgstr "Liệt kê trên stderr các phần không dùng bị gỡ bỏ"
 
-#: lexsup.c:392
+#: lexsup.c:398
 msgid "Do not list removed unused sections"
 msgstr "Đừng liệt kê các phần không dùng bị gỡ bỏ"
 
-#: lexsup.c:395
+#: lexsup.c:401
 msgid "Set default hash table size close to <NUMBER>"
 msgstr "Đặt kích cỡ bảng băm mặc định thành gần <SỐ>"
 
-#: lexsup.c:398
+#: lexsup.c:404
 msgid "Print option help"
 msgstr "In ra trợ giúp về tùy chọn"
 
-#: lexsup.c:400
+#: lexsup.c:406
 msgid "Call SYMBOL at load-time"
 msgstr "Gọi KÝ HIỆU vào lúc nạp"
 
-#: lexsup.c:402
+#: lexsup.c:408
 msgid "Write a map file"
 msgstr "Ghi tập tin sơ đồ"
 
-#: lexsup.c:404
+#: lexsup.c:410
 msgid "Do not define Common storage"
 msgstr "Đừng xác định sức chứa dùng chung"
 
-#: lexsup.c:406
+#: lexsup.c:412
 msgid "Do not demangle symbol names"
 msgstr "Đừng tháo gỡ tên ký hiệu"
 
-#: lexsup.c:408
+#: lexsup.c:414
 msgid "Use less memory and more disk I/O"
 msgstr "Chiếm ít bộ nhớ hơn, còn V/R đĩa nhiều hơn"
 
-#: lexsup.c:410
+#: lexsup.c:416
 msgid "Do not allow unresolved references in object files"
 msgstr "Đừng cho phép tham chiệu chưa tháo gỡ trong tập tin đối tượng"
 
-#: lexsup.c:413
+#: lexsup.c:419
 msgid "Allow unresolved references in shared libaries"
 msgstr "Cho phép tham chiệu chưa tháo gỡ trong thư viện dùng chung"
 
-#: lexsup.c:417
+#: lexsup.c:423
 msgid "Do not allow unresolved references in shared libs"
 msgstr "Đừng cho phép tham chiệu chưa tháo gỡ trong thư viện dùng chung"
 
-#: lexsup.c:421
+#: lexsup.c:427
 msgid "Allow multiple definitions"
 msgstr "Cho phép nhiều lời xác định"
 
-#: lexsup.c:423
+#: lexsup.c:429
 msgid "Disallow undefined version"
 msgstr "Không cho phép phiên bản chưa xác định"
 
-#: lexsup.c:425
+#: lexsup.c:431
 msgid "Create default symbol version"
 msgstr "Tạo phiên bản ký hiệu mặc định"
 
-#: lexsup.c:428
+#: lexsup.c:434
 msgid "Create default symbol version for imported symbols"
 msgstr "Tạo phiên bản ký hiệu mặc định cho các ký hiệu đã nhập khẩu"
 
-#: lexsup.c:431
+#: lexsup.c:437
 msgid "Don't warn about mismatched input files"
 msgstr "Đừng cảnh báo về tập tin nhập sai khớp"
 
-#: lexsup.c:434
+#: lexsup.c:440
 msgid "Don't warn on finding an incompatible library"
 msgstr "Đừng cảnh báo khi tìm thư viện không tương thích"
 
-#: lexsup.c:437
+#: lexsup.c:443
 msgid "Turn off --whole-archive"
 msgstr "Tắt tùy chọn « --whole-archive » (toàn kho)"
 
-#: lexsup.c:439
+#: lexsup.c:445
 msgid "Create an output file even if errors occur"
 msgstr "Tạo tập tin xuất thậm chí nếu gặp lỗi"
 
-#: lexsup.c:444
+#: lexsup.c:450
 msgid ""
 "Only use library directories specified on\n"
-"\t\t\t\tthe command line"
+"                                the command line"
 msgstr ""
-"Chỉ dùng các thư mục thư viện\n"
-"\tđược ghi rõ trên dòng lệnh"
+"Chỉ sử dụng những thư mục thư viện\n"
+"được ghi rõ trên dòng lệnh"
 
-#: lexsup.c:447
+#: lexsup.c:454
 msgid "Specify target of output file"
 msgstr "Ghi rõ đích của tập tin xuất"
 
-#: lexsup.c:450
+#: lexsup.c:457
 msgid "Ignored for Linux compatibility"
 msgstr "Bị bỏ qua để tương thích với Linux"
 
-#: lexsup.c:453
+#: lexsup.c:460
 msgid "Reduce memory overheads, possibly taking much longer"
 msgstr "Giảm bộ nhớ duy tu, có thể chạy rất chậm hơn"
 
-#: lexsup.c:456
+#: lexsup.c:463
 msgid "Relax branches on certain targets"
 msgstr "Lơi ra nhánh trên một số đích nào đó"
 
-#: lexsup.c:459
+#: lexsup.c:466
 msgid "Keep only symbols listed in FILE"
 msgstr "Giữ chỉ những ký hiệu được liệt kê trong TẬP TIN"
 
-#: lexsup.c:461
+#: lexsup.c:468
 msgid "Set runtime shared library search path"
 msgstr "Đặt đường dẫn tìm kiếm thư viện dùng chung vào lúc chạy"
 
-#: lexsup.c:463
+#: lexsup.c:470
 msgid "Set link time shared library search path"
 msgstr "Đặt đường dẫn tìm kiếm thư viện dùng chung vào lúc liên kết"
 
-#: lexsup.c:466
+#: lexsup.c:473
 msgid "Create a shared library"
 msgstr "Tạo thư viện dùng chung"
 
-#: lexsup.c:470
+#: lexsup.c:477
 msgid "Create a position independent executable"
 msgstr "Tạo tập tin có khả năng thực hiện không phụ thuộc vào vị trí"
 
-#: lexsup.c:474
-msgid "Sort common symbols by size"
-msgstr "Sắp xếp các ký hiệu dùng chung theo kích cỡ"
+#: lexsup.c:481
+msgid "[=ascending|descending]"
+msgstr "[=tăng|giảm]"
 
-#: lexsup.c:478
+#: lexsup.c:482
+msgid "Sort common symbols by alignment [in specified order]"
+msgstr "Sắp xếp các ký hiệu dùng chung theo thứ tự đã ghi rõ"
+
+#: lexsup.c:487
 msgid "name|alignment"
 msgstr "tên|chỉnh_canh"
 
-#: lexsup.c:479
+#: lexsup.c:488
 msgid "Sort sections by name or maximum alignment"
 msgstr "Sắp xếp các phần theo tên hay sự chỉnh canh tối đa"
 
-#: lexsup.c:481
+#: lexsup.c:490
 msgid "COUNT"
 msgstr "SỐ_ĐẾM"
 
-#: lexsup.c:481
+#: lexsup.c:490
 msgid "How many tags to reserve in .dynamic section"
 msgstr "Số thẻ cần giữ lại trong phần « .dynamic » (động)"
 
-#: lexsup.c:484
+#: lexsup.c:493
 msgid "[=SIZE]"
 msgstr "[=CỠ]"
 
-#: lexsup.c:484
+#: lexsup.c:493
 msgid "Split output sections every SIZE octets"
 msgstr "Xẻ phần xuất sau mỗi CỠ bộ tám"
 
-#: lexsup.c:487
+#: lexsup.c:496
 msgid "[=COUNT]"
 msgstr "[=SỐ_ĐẾM]"
 
-#: lexsup.c:487
+#: lexsup.c:496
 msgid "Split output sections every COUNT relocs"
 msgstr "Xẻ phần xuất sau mỗi SỐ_ĐẾM sự định vị lại"
 
-#: lexsup.c:490
+#: lexsup.c:499
 msgid "Print memory usage statistics"
 msgstr "In ra thống kê cách sử dụng bộ nhớ"
 
-#: lexsup.c:492
+#: lexsup.c:501
 msgid "Display target specific options"
 msgstr "Hiển thị các tùy chọn đặc trưng cho đích"
 
-#: lexsup.c:494
+#: lexsup.c:503
 msgid "Do task level linking"
 msgstr "Liên kết trên cấp tác vụ"
 
-#: lexsup.c:496
+#: lexsup.c:505
 msgid "Use same format as native linker"
 msgstr "Dùng cùng định dạng với bộ liên kết sở hữu"
 
-#: lexsup.c:498
+#: lexsup.c:507
 msgid "SECTION=ADDRESS"
 msgstr "PHẦN=ĐỊA_CHỈ"
 
-#: lexsup.c:498
+#: lexsup.c:507
 msgid "Set address of named section"
 msgstr "Đặt địa chỉ của phần có tên"
 
-#: lexsup.c:501
+#: lexsup.c:510
 msgid "Set address of .bss section"
 msgstr "Đặt địa chỉ của phần « .bss »"
 
-#: lexsup.c:503
+#: lexsup.c:512
 msgid "Set address of .data section"
 msgstr "Đặt địa chỉ của phần « .data » (dữ liệu)"
 
-#: lexsup.c:505
+#: lexsup.c:514
 msgid "Set address of .text section"
 msgstr "Đặt địa chỉ của phần « .text » (văn bản)"
 
-#: lexsup.c:508
+#: lexsup.c:517
 msgid ""
 "How to handle unresolved symbols.  <method> is:\n"
-"\t\t\t\tignore-all, report-all, ignore-in-object-files,\n"
-"\t\t\t\tignore-in-shared-libs"
+"                                ignore-all, report-all, ignore-in-object-files,\n"
+"                                ignore-in-shared-libs"
 msgstr ""
-"Cách quản lý ký hiệu chưa tháo gỡ.\n"
+"Quản lý ký hiệu chưa tháo gỡ như thế nào.\n"
 "  \t<phương_pháp> là:\n"
 " • ignore-all\t\t\t\tbỏ qua tất cả\n"
 " • report-all\t\t\t\tthông báo tất cả\n"
 " • ignore-in-object-files\tbỏ qua trong tập tin đối tượng\n"
 " • ignore-in-shared-libs\tbỏ qua trong thư viện dùng chung"
 
-#: lexsup.c:512
+#: lexsup.c:522
 msgid "Output lots of information during link"
 msgstr "Xuất rất nhiều thông tin trong khi liên kết"
 
-#: lexsup.c:516
+#: lexsup.c:526
 msgid "Read version information script"
 msgstr "Đọc văn lệnh thông tin phiên bản"
 
-#: lexsup.c:519
+#: lexsup.c:529
 msgid ""
 "Take export symbols list from .exports, using\n"
-"\t\t\t\tSYMBOL as the version."
+"                                SYMBOL as the version."
 msgstr ""
 "Lấy danh sách các ký hiệu xuất từ « .exports »,\n"
-"\t\tdùng KÝ HIỆU làm phiên bản."
+"\t\tdùng KÝ HIỆU là phiên bản."
 
-#: lexsup.c:522
+#: lexsup.c:533
 msgid "Add data symbols to dynamic list"
 msgstr "Thêm các ký hiệu dữ liệu vào danh sách động"
 
-#: lexsup.c:524
+#: lexsup.c:535
 msgid "Use C++ operator new/delete dynamic list"
 msgstr "Dùng danh sách động mới/xoá toán tử C++"
 
-#: lexsup.c:526
+#: lexsup.c:537
 msgid "Use C++ typeinfo dynamic list"
 msgstr "Dùng danh sách động kiểu/thông tin C++"
 
-#: lexsup.c:528
+#: lexsup.c:539
 msgid "Read dynamic list"
 msgstr "Đọc danh sách động"
 
-#: lexsup.c:530
+#: lexsup.c:541
 msgid "Warn about duplicate common symbols"
 msgstr "Cảnh báo về ký hiệu dùng chung trùng"
 
-#: lexsup.c:532
+#: lexsup.c:543
 msgid "Warn if global constructors/destructors are seen"
 msgstr "Cảnh báo nếu gặp bộ cấu tạo/phá toàn cục"
 
-#: lexsup.c:535
+#: lexsup.c:546
 msgid "Warn if the multiple GP values are used"
 msgstr "Cảnh báo nếu nhiều giá trị GP được dùng"
 
-#: lexsup.c:537
+#: lexsup.c:548
 msgid "Warn only once per undefined symbol"
 msgstr "Cảnh báo chỉ một lần về mỗi ký hiệu chưa xác định"
 
-#: lexsup.c:539
+#: lexsup.c:550
 msgid "Warn if start of section changes due to alignment"
 msgstr "Cảnh báo nếu đầu của phần thay đổi do sự chỉnh canh"
 
-#: lexsup.c:542
+#: lexsup.c:553
 msgid "Warn if shared object has DT_TEXTREL"
 msgstr "Cảnh báo nếu đối tượng dùng chung có « DT_TEXTREL »"
 
-#: lexsup.c:546
+#: lexsup.c:557
 msgid "Report unresolved symbols as warnings"
 msgstr "Thông báo ký hiệu chưa tháo gỡ dạng cảnh báo"
 
-#: lexsup.c:549
+#: lexsup.c:560
 msgid "Report unresolved symbols as errors"
 msgstr "Thông báo ký hiệu chưa tháo gỡ dạng lỗi"
 
-#: lexsup.c:551
+#: lexsup.c:562
 msgid "Include all objects from following archives"
 msgstr "Gồm có mọi đối tượng từ những kho theo đây"
 
-#: lexsup.c:554
+#: lexsup.c:565
 msgid "Use wrapper functions for SYMBOL"
 msgstr "Sử dụng các hàm bao bọc cho KÝ HIỆU"
 
-#: lexsup.c:701
+#: lexsup.c:712
 msgid "%P: unrecognized option '%s'\n"
 msgstr "%P: không nhận ra tùy chọn « %s »\n"
 
-#: lexsup.c:705
+#: lexsup.c:716
 msgid "%P%F: use the --help option for usage information\n"
 msgstr "%P%F: hãy sử dụng tùy chọn trợ giúp « --help » để xem thông tin về cách sử dụng\n"
 
-#: lexsup.c:723
+#: lexsup.c:734
 msgid "%P%F: unrecognized -a option `%s'\n"
 msgstr "%P%F: không nhận ra tùy chọn kiểu « -a » « %s »\n"
 
-#: lexsup.c:736
+#: lexsup.c:747
 msgid "%P%F: unrecognized -assert option `%s'\n"
 msgstr "%P%F: không nhận ra tùy chọn kiểu « -assert » « %s »\n"
 
-#: lexsup.c:779
+#: lexsup.c:790
 msgid "%F%P: unknown demangling style `%s'"
 msgstr "%F%Ps: không rõ kiểu dáng tháo gõ « %s »"
 
-#: lexsup.c:841
+#: lexsup.c:852
 msgid "%P%F: invalid number `%s'\n"
 msgstr "%P%F: con số không hợp lệ « %s »\n"
 
-#: lexsup.c:939
+#: lexsup.c:950
 msgid "%P%F: bad --unresolved-symbols option: %s\n"
 msgstr "%P%F: tùy chọn « --unresolved-symbols » sai: %s\n"
 
@@ -1895,92 +1915,104 @@
 #. 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:1013
+#: lexsup.c:1024
 msgid "%P%F: bad -rpath option\n"
 msgstr "%P%F: tùy chọn « -rpath » sai\n"
 
-#: lexsup.c:1124
+#: lexsup.c:1135
 msgid "%P%F: -shared not supported\n"
 msgstr "%P%F: không hỗ trợ tùy chọn « -shared »\n"
 
-#: lexsup.c:1133
+#: lexsup.c:1144
 msgid "%P%F: -pie not supported\n"
 msgstr "%P%F: không hỗ trợ tùy chọn « -pie »\n"
 
-#: lexsup.c:1143
+#: lexsup.c:1152
+msgid "descending"
+msgstr "giảm"
+
+#: lexsup.c:1154
+msgid "ascending"
+msgstr "tăng"
+
+#: lexsup.c:1157
+msgid "%P%F: invalid common section sorting option: %s\n"
+msgstr "%P%F: sai đặt tùy chọn sắp xếp phần dùng chung: %s\n"
+
+#: lexsup.c:1161
 msgid "name"
 msgstr "tên"
 
-#: lexsup.c:1145
+#: lexsup.c:1163
 msgid "alignment"
 msgstr "chỉnh canh"
 
-#: lexsup.c:1148
+#: lexsup.c:1166
 msgid "%P%F: invalid section sorting option: %s\n"
 msgstr "%P%F: tùy chọn sắp xếp phần không hợp lệ: %s\n"
 
-#: lexsup.c:1180
+#: lexsup.c:1200
 msgid "%P%F: invalid argument to option \"--section-start\"\n"
 msgstr "%P%F: đối số không hợp lệ đối với tùy chọn « --section-start »\n"
 
-#: lexsup.c:1187
+#: lexsup.c:1207
 msgid "%P%F: missing argument(s) to option \"--section-start\"\n"
 msgstr "%P%F: thiếu đối số đối với tùy chọn « --section-start »\n"
 
-#: lexsup.c:1398
+#: lexsup.c:1421
 msgid "%P%F: may not nest groups (--help for usage)\n"
 msgstr "%P%F: không cho phép lồng các nhóm với nhau (« --help » để xem cách sử dụng)\n"
 
-#: lexsup.c:1405
+#: lexsup.c:1428
 msgid "%P%F: group ended before it began (--help for usage)\n"
 msgstr "%P%F: nhóm kết thúc trước khi bắt đầu (« --help » để xem cách sử dụng)\n"
 
-#: lexsup.c:1433
+#: lexsup.c:1456
 msgid "%P%X: --hash-size needs a numeric argument\n"
 msgstr "%P%X: tùy chọn « --hash-size » cần thiết đối số thuộc số\n"
 
-#: lexsup.c:1484 lexsup.c:1497
+#: lexsup.c:1507 lexsup.c:1520
 msgid "%P%F: invalid hex number `%s'\n"
 msgstr "%P%F: số thập lục không hợp lệ « %s »\n"
 
-#: lexsup.c:1533
+#: lexsup.c:1556
 #, c-format
 msgid "Usage: %s [options] file...\n"
 msgstr "Cách sử dụng: %s <tùy_chọn> tập_tin...\n"
 
-#: lexsup.c:1535
+#: lexsup.c:1558
 #, c-format
 msgid "Options:\n"
 msgstr "Tùy chọn:\n"
 
-#: lexsup.c:1613
+#: lexsup.c:1636
 #, c-format
 msgid "  @FILE"
 msgstr "  @TẬP_TIN"
 
-#: lexsup.c:1616
+#: lexsup.c:1639
 #, c-format
 msgid "Read options from FILE\n"
 msgstr "Đọc các tùy chọn từ TẬP_TIN\n"
 
 #. Note: Various tools (such as libtool) depend upon the
 #. format of the listings below - do not change them.
-#: lexsup.c:1621
+#: lexsup.c:1644
 #, c-format
 msgid "%s: supported targets:"
 msgstr "%s: đích hỗ trợ :"
 
-#: lexsup.c:1629
+#: lexsup.c:1652
 #, c-format
 msgid "%s: supported emulations: "
 msgstr "%s: mô phỏng hỗ trợ : "
 
-#: lexsup.c:1634
+#: lexsup.c:1657
 #, c-format
 msgid "%s: emulation specific options:\n"
 msgstr "%s: tùy chọn đặc trưng cho mô phỏng:\n"
 
-#: lexsup.c:1639
+#: lexsup.c:1662
 #, c-format
 msgid "Report bugs to %s\n"
 msgstr "Hãy thông báo lỗi cho %s\n"
@@ -1989,83 +2021,71 @@
 msgid "%P%F: unknown format type %s\n"
 msgstr "%P%F: không rõ kiểu định dạng %s\n"
 
-#: pe-dll.c:367
+#: pe-dll.c:381
 #, c-format
 msgid "%XUnsupported PEI architecture: %s\n"
 msgstr "%XKhông hỗ trợ kiến trúc PEI: %s\n"
 
-#: pe-dll.c:673
+#: pe-dll.c:692
 #, c-format
 msgid "%XCannot export %s: invalid export name\n"
 msgstr "%XKhông thể xuất khẩu %s: tên xuất khẩu không hợp lệ\n"
 
-#: pe-dll.c:729
+#: pe-dll.c:748
 #, c-format
 msgid "%XError, duplicate EXPORT with ordinals: %s (%d vs %d)\n"
 msgstr "%XLỗi: EXPORT trùng với các điều thứ tự : %s (%d so với %d)\n"
 
-#: pe-dll.c:736
+#: pe-dll.c:755
 #, c-format
 msgid "Warning, duplicate EXPORT: %s\n"
 msgstr "Cảnh báo, EXPORT trùng: %s\n"
 
-#: pe-dll.c:823
+#: pe-dll.c:842
 #, c-format
 msgid "%XCannot export %s: symbol not defined\n"
 msgstr "%XKhông thể xuất khẩu %s: chưa xác định ký hiệu\n"
 
-#: pe-dll.c:829
+#: pe-dll.c:848
 #, c-format
 msgid "%XCannot export %s: symbol wrong type (%d vs %d)\n"
 msgstr "%XKhông thể xuất khẩu %s: ký hiệu sai kiểu (%d so với %d)\n"
 
-#: pe-dll.c:836
+#: pe-dll.c:855
 #, c-format
 msgid "%XCannot export %s: symbol not found\n"
 msgstr "%XKhông thể xuất khẩu %s: không tìm thấy ký hiệu\n"
 
-#: pe-dll.c:949
+#: pe-dll.c:969
 #, c-format
 msgid "%XError, ordinal used twice: %d (%s vs %s)\n"
 msgstr "%XLỗi, điều thứ tự được dùng hai lần: %d (%s so với %s)\n"
 
-#: pe-dll.c:1297
+#: pe-dll.c:1336
 #, c-format
 msgid "%XError: %d-bit reloc in dll\n"
 msgstr "%XLỗi: sự định vị lại %d-bit trong dll\n"
 
-#: pe-dll.c:1425
+#: pe-dll.c:1464
 #, c-format
 msgid "%s: Can't open output def file %s\n"
 msgstr "%s: Không thể mở tập tin def xuất %s\n"
 
-#: pe-dll.c:1568
+#: pe-dll.c:1609
 #, c-format
 msgid "; no contents available\n"
 msgstr "; không có nội dung sẵn sàng\n"
 
-#: pe-dll.c:2364
+#: pe-dll.c:2407
 msgid "%C: variable '%T' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.\n"
 msgstr "%C: không thể tự động nhập khẩu biến « %T ». Hãy đọc tài liệu hướng dẫn về tùy chọn « --enable-auto-import » (bật nhập tự động) của phần mềm ld, để xem chi tiết.\n"
 
-#: pe-dll.c:2394
+#: pe-dll.c:2437
 #, c-format
 msgid "%XCan't open .lib file: %s\n"
 msgstr "%XKhông thể mở tập tin « .lib » (thư viện): %s\n"
 
-#: pe-dll.c:2399
+#: pe-dll.c:2442
 #, c-format
 msgid "Creating library file: %s\n"
 msgstr "Đang tạo tập tin thư viện: %s\n"
-
-#~ msgid "%F%S non constant expression for %s\n"
-#~ msgstr "%F%S biểu thức thay đổi cho %s\n"
-
-#~ msgid "%P%F: out of memory during initialization"
-#~ msgstr "%P%F: hết bộ nhớ trong khi cài đặt"
-
-#~ msgid "%P%F: -static and -shared may not be used together\n"
-#~ msgstr "%P%F: không thể sử dụng cả « -static » (tĩnh) lẫn « -shared » (dùng chung) đều\n"
-
-#~ msgid "%P%X: generated"
-#~ msgstr "%P%X: đã tạo ra"
diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc
index 7368caf..23b3046 100644
--- a/ld/scripttempl/avr.sc
+++ b/ld/scripttempl/avr.sc
@@ -72,7 +72,7 @@
   .rela.plt    ${RELOCATING-0} : { *(.rela.plt)		}
 
   /* Internal text space or external memory.  */
-  .text :
+  .text ${RELOCATING-0} :
   {
     *(.vectors)
     KEEP(*(.vectors))
@@ -168,7 +168,7 @@
     ${RELOCATING+ PROVIDE (__data_end = .) ; }
   } ${RELOCATING+ > data}
 
-  .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
+  .bss ${RELOCATING-0} :${RELOCATING+ AT (ADDR (.bss))}
   {
     ${RELOCATING+ PROVIDE (__bss_start = .) ; }
     *(.bss)
@@ -181,7 +181,7 @@
   ${RELOCATING+ __data_load_end = __data_load_start + SIZEOF(.data); }
 
   /* Global data not cleared after reset.  */
-  .noinit ${RELOCATING+ SIZEOF(.bss) + ADDR(.bss)} :
+  .noinit ${RELOCATING-0}:
   {
     ${RELOCATING+ PROVIDE (__noinit_start = .) ; }
     *(.noinit*)
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
index 5c35e4f..120db06 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
@@ -36,6 +36,9 @@
 #	DATA_PLT - .plt should be in data segment, not text segment.
 #	PLT_BEFORE_GOT - .plt just before .got when .plt is in data segement.
 #	BSS_PLT - .plt should be in bss segment
+#	NO_REL_RELOCS - Don't include .rel.* sections in script
+#	NO_RELA_RELOCS - Don't include .rela.* sections in script
+#	NON_ALLOC_DYN - Place dynamic sections after data segment.
 #	TEXT_DYNAMIC - .dynamic in text segment, not data segment.
 #	EMBEDDED - whether this is for an embedded system. 
 #	SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set
@@ -268,6 +271,11 @@
   ${CREATE_PIE+${RELOCATING+. = ${SHLIB_TEXT_START_ADDR:-0} + SIZEOF_HEADERS;}}
   ${INITIAL_READONLY_SECTIONS}
   .note.gnu.build-id : { *(.note.gnu.build-id) }
+EOF
+
+test -n "${RELOCATING+0}" || unset NON_ALLOC_DYN
+test -z "${NON_ALLOC_DYN}" || TEXT_DYNAMIC=
+cat > ldscripts/dyntmp.$$ <<EOF
   ${TEXT_DYNAMIC+${DYNAMIC}}
   .hash         ${RELOCATING-0} : { *(.hash) }
   .gnu.hash     ${RELOCATING-0} : { *(.gnu.hash) }
@@ -276,10 +284,10 @@
   .gnu.version  ${RELOCATING-0} : { *(.gnu.version) }
   .gnu.version_d ${RELOCATING-0}: { *(.gnu.version_d) }
   .gnu.version_r ${RELOCATING-0}: { *(.gnu.version_r) }
-
 EOF
+
 if [ "x$COMBRELOC" = x ]; then
-  COMBRELOCCAT=cat
+  COMBRELOCCAT="cat >> ldscripts/dyntmp.$$"
 else
   COMBRELOCCAT="cat > $COMBRELOC"
 fi
@@ -316,27 +324,45 @@
   .rela.bss     ${RELOCATING-0} : { *(.rela.bss${RELOCATING+ .rela.bss.* .rela.gnu.linkonce.b.*}) }
   ${REL_LARGE}
 EOF
+
 if [ -n "$COMBRELOC" ]; then
-cat <<EOF
+cat >> ldscripts/dyntmp.$$ <<EOF
   .rel.dyn      ${RELOCATING-0} :
     {
 EOF
-sed -e '/^[ 	]*[{}][ 	]*$/d;/:[ 	]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/      \1/' $COMBRELOC
-cat <<EOF
+sed -e '/^[ 	]*[{}][ 	]*$/d;/:[ 	]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/      \1/' $COMBRELOC >> ldscripts/dyntmp.$$
+cat >> ldscripts/dyntmp.$$ <<EOF
     }
   .rela.dyn     ${RELOCATING-0} :
     {
 EOF
-sed -e '/^[ 	]*[{}][ 	]*$/d;/:[ 	]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/      \1/' $COMBRELOC
-cat <<EOF
+sed -e '/^[ 	]*[{}][ 	]*$/d;/:[ 	]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/      \1/' $COMBRELOC >> ldscripts/dyntmp.$$
+cat >> ldscripts/dyntmp.$$ <<EOF
     }
 EOF
 fi
-cat <<EOF
+
+cat >> ldscripts/dyntmp.$$ <<EOF
   .rel.plt      ${RELOCATING-0} : { *(.rel.plt) }
   .rela.plt     ${RELOCATING-0} : { *(.rela.plt) }
   ${OTHER_PLT_RELOC_SECTIONS}
+EOF
 
+if test -z "${NON_ALLOC_DYN}"; then
+  if test -z "${NO_REL_RELOCS}${NO_RELA_RELOCS}"; then
+    cat ldscripts/dyntmp.$$
+  else
+    if test -z "${NO_REL_RELOCS}"; then
+      sed -e '/^[ 	]*\.rela\.[^}]*$/,/}/d' -e '/^[ 	]*\.rela\./d' ldscripts/dyntmp.$$
+    fi
+    if test -z "${NO_RELA_RELOCS}"; then
+      sed -e '/^[ 	]*\.rel\.[^}]*$/,/}/d' -e '/^[ 	]*\.rel\./d' ldscripts/dyntmp.$$
+    fi
+  fi
+  rm -f ldscripts/dyntmp.$$
+fi
+
+cat <<EOF
   .init         ${RELOCATING-0} : 
   { 
     ${RELOCATING+${INIT_START}}
@@ -464,7 +490,23 @@
   ${RELOCATING+${OTHER_END_SYMBOLS}}
   ${RELOCATING+${END_SYMBOLS-${USER_LABEL_PREFIX}_end = .; PROVIDE (${USER_LABEL_PREFIX}end = .);}}
   ${RELOCATING+${DATA_SEGMENT_END}}
+EOF
 
+if test -n "${NON_ALLOC_DYN}"; then
+  if test -z "${NO_REL_RELOCS}${NO_RELA_RELOCS}"; then
+    cat ldscripts/dyntmp.$$
+  else
+    if test -z "${NO_REL_RELOCS}"; then
+      sed -e '/^[ 	]*\.rela\.[^}]*$/,/}/d' -e '/^[ 	]*\.rela\./d' ldscripts/dyntmp.$$
+    fi
+    if test -z "${NO_RELA_RELOCS}"; then
+      sed -e '/^[ 	]*\.rel\.[^}]*$/,/}/d' -e '/^[ 	]*\.rel\./d' ldscripts/dyntmp.$$
+    fi
+  fi
+  rm -f ldscripts/dyntmp.$$
+fi
+
+cat <<EOF
   /* Stabs debugging sections.  */
   .stab          0 : { *(.stab) }
   .stabstr       0 : { *(.stabstr) }
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index a2c3050..8c94dc8 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,103 @@
+2008-10-29  Nick Clifton  <nickc@redhat.com>
+
+	* ld-gc/gc.c (dummy_func): New function - present so that
+	underscore prefixed aliases can be created of the used_func and
+	main functions.
+
+2008-10-10  Nathan Froyd  <froydnj@codesourcery.com>
+
+	* ld-powerpc/gnu-attr-12-1.s: New file.
+	* ld-powerpc/gnu-attr-12-2.s: New file.
+	* ld-powerpc/gnu-attr-12-11.d: New file.
+	* ld-powerpc/gnu-attr-12-21.d: New file.
+	* ld-powerpc/powerpc.exp: Run new dump tests.
+
+2008-10-07  Nick Clifton  <nickc@redhat.com>
+
+	* ld-ia64/tlsbin.rd: Update expected output now that --wide does
+	not truncate section names.
+	* ld-ia64/tlspic.rd: Likewise.
+
+2008-10-06  Tom Tromey  <tromey@redhat.com>
+
+	* ld-elf/eh1.d, ld-elf/eh2.d, ld-elf/eh3.d, ld-elf/eh4.d,
+	ld-elf/eh5.d, ld-elf/eh6.d, ld-mips-elf/eh-frame1-n32.d,
+	ld-mips-elf/eh-frame1-n64.d, ld-mips-elf/eh-frame2-n32.d,
+	ld-mips-elf/eh-frame2-n64.d, ld-mips-elf/eh-frame3.d,
+	ld-mips-elf/eh-frame4.d: Update for readelf change.
+
+2008-10-04  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/6931
+	* ld-elf/group7.d: New.
+
+2008-10-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* ld-elf/group5.d: Updated.
+	* ld-elf/group6.d: Likewise.
+
+2008-10-03  Tristan Gingold  <gingold@adacore.com>
+
+	* ld-elf/stab.d: Don't run on alpha (to avoid relocation
+	overflow on 64 bits targets whose stab values is 32 bits).
+
+2008-10-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/6931
+	* ld-elf/group4.d: New.
+	* ld-elf/group5.d: Likewise.
+	* ld-elf/group6.d: Likewise.
+
+2008-10-03  Alan Modra  <amodra@bigpond.net.au>
+
+	* ld-powerpc/vxworks1-lib.rd: Update.
+
+2008-09-29  Alan Modra  <amodra@bigpond.net.au>
+
+	* ld-elf/extract-symbol-1sec.d: Correct section lma.
+
+2008-09-25  Alan Modra  <amodra@bigpond.net.au>
+
+	* ld-elf/eh-group.exp: Only run on ELF targets.
+	* ld-elf/eh5b.s: Export main, start, __start.
+
+2008-09-20  Richard Sandiford  <rdsandiford@googlemail.com>
+
+	* ld-mips-elf/reloc-estimate-1.d: Make endian-neutral.
+
+2008-09-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	Provide virtual target "cfi" for targets supporting CFI.
+	* ld-elf/eh-frame-hdr.d: Replace target and xfail statements by single
+	`target: cfi'.
+	* ld-elf/eh-group.exp: Call check_as_cfi instead of is_elf_format.
+	* ld-elf/eh-group1.s, elf/eh-group2.s: Use more compatible section
+	flags prefix '%'.
+	* ld-elf/eh5.d: Replace target statement by `target: cfi' with an Alpha
+	exception.  Relax the `Code alignment factor' matching.
+	* lib/ld-lib.exp: Rename istarget as istarget_ld.
+	(istarget, check_as_cfi): New procedure.
+	(run_dump_test): New comment for the virtual target `cfi'.
+
+2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* ld-elf/eh-group.exp, ld-elf/eh-group1.s, ld-elf/eh-group2.s: New test.
+
+2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	Fix testcases compilation failures due to unused variables.
+	* ld-elfcomm/common1b.c (dummy1): Mark the variable for GCC as USED.
+	* ld-shared/main.c (main): Move the P variable only to the places where
+	it is used.
+
+2008-09-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/6877
+	* ld-elf/comm1.c: New.
+	* ld-elf/func1.c: Likewise.
+
+	* ld-elf/shared.exp: Add tests for libfunc1.so and comm1.
+
 2008-08-26  Nick Clifton  <nickc@redhat.com>
 
 	* ld-arm/arm-elf.exp: Add farcall-thumb-arm-short test.
diff --git a/ld/testsuite/ld-elf/comm1.c b/ld/testsuite/ld-elf/comm1.c
new file mode 100644
index 0000000..c553d86
--- /dev/null
+++ b/ld/testsuite/ld-elf/comm1.c
@@ -0,0 +1,17 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+int foo;
+void bar (void);
+
+int
+main ()
+{
+  if (foo != 0)
+    abort ();
+  foo = 200; 
+  bar ();
+  if (foo == 200)
+    printf ("PASS\n");
+  return 0;
+}
diff --git a/ld/testsuite/ld-elf/eh-frame-hdr.d b/ld/testsuite/ld-elf/eh-frame-hdr.d
index b465e5d..af8ae04 100644
--- a/ld/testsuite/ld-elf/eh-frame-hdr.d
+++ b/ld/testsuite/ld-elf/eh-frame-hdr.d
@@ -1,17 +1,7 @@
 #source: eh-frame-hdr.s
 #ld: -e _start --eh-frame-hdr
 #objdump: -hw
-#target: alpha*-*-*
-#target: arm*-*-*
-#target: i?86-*-*
-#target: m68k-*-*
-#target: mips*-*-*
-#target: powerpc*-*-*
-#target: s390*-*-*
-#target: sh*-*-*
-#xfail: sh*l*-*-*
-#target: sparc*-*-*
-#target: x86_64-*-*
+#target: cfi
 #...
   [0-9] .eh_frame_hdr 0*[12][048c] .*
 #pass
diff --git a/ld/testsuite/ld-elf/eh-group.exp b/ld/testsuite/ld-elf/eh-group.exp
new file mode 100644
index 0000000..6072355
--- /dev/null
+++ b/ld/testsuite/ld-elf/eh-group.exp
@@ -0,0 +1,56 @@
+# Expect script for .eh_frame entries to a removed section.
+#   Copyright 2008  Free Software Foundation, Inc.
+#
+# This file is part of the GNU Binutils.
+#
+# 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+
+#
+# Written by Jan Kratochvil (jan.kratochvil@redhat.com)
+#
+# .eh_frame with relocations to a removed (group) section did result to:
+# error in tmpdir/eh-group.o(.eh_frame); no .eh_frame_hdr table will be created.
+# The purpose of this test is to merge two .o files with -r and then link this
+# merged file (containing a discarded R_X86_64_NONE relocation) to the final
+# executable trying to create .eh_frame_hdr.  It needs a separate .exp file due
+# to the requirement of two `ld' runs.
+
+# Exclude non-CFI (such as ia64) targets.
+
+if {![check_as_cfi]} {
+    return
+}
+
+# The test uses ELF .section directive
+if ![is_elf_format] {
+    return
+}
+
+set build_tests_ld {
+  {"Build eh-group1.o"
+   "-r" ""
+   {eh-group1.s eh-group2.s} {} "eh-group.o"}
+}
+
+run_ld_link_tests $build_tests_ld
+
+set testname "Link eh-group.o to eh-group"
+if [ld_simple_link $ld "tmpdir/eh-group" "-e _start tmpdir/eh-group.o"] {
+    pass $testname
+} else {
+    fail $testname
+}
diff --git a/ld/testsuite/ld-elf/eh-group1.s b/ld/testsuite/ld-elf/eh-group1.s
new file mode 100644
index 0000000..d6fdb88
--- /dev/null
+++ b/ld/testsuite/ld-elf/eh-group1.s
@@ -0,0 +1,6 @@
+	.section	sect, "axG", %progbits, sectgroup, comdat
+	.global	_start
+_start:
+	.cfi_startproc
+	.skip 16
+	.cfi_endproc
diff --git a/ld/testsuite/ld-elf/eh-group2.s b/ld/testsuite/ld-elf/eh-group2.s
new file mode 100644
index 0000000..2ec8919
--- /dev/null
+++ b/ld/testsuite/ld-elf/eh-group2.s
@@ -0,0 +1,4 @@
+	.section	sect, "axG", %progbits, sectgroup, comdat
+	.cfi_startproc
+	.skip 16
+	.cfi_endproc
diff --git a/ld/testsuite/ld-elf/eh1.d b/ld/testsuite/ld-elf/eh1.d
index a672f5b..f0874f7 100644
--- a/ld/testsuite/ld-elf/eh1.d
+++ b/ld/testsuite/ld-elf/eh1.d
@@ -4,7 +4,7 @@
 #readelf: -wf
 #target: x86_64-*-*
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-elf/eh2.d b/ld/testsuite/ld-elf/eh2.d
index 788d23d..1a05d7f 100644
--- a/ld/testsuite/ld-elf/eh2.d
+++ b/ld/testsuite/ld-elf/eh2.d
@@ -4,7 +4,7 @@
 #readelf: -wf
 #target: x86_64-*-*
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-elf/eh3.d b/ld/testsuite/ld-elf/eh3.d
index 6816313..1f76b8c 100644
--- a/ld/testsuite/ld-elf/eh3.d
+++ b/ld/testsuite/ld-elf/eh3.d
@@ -4,7 +4,7 @@
 #readelf: -wf
 #target: x86_64-*-*
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-elf/eh4.d b/ld/testsuite/ld-elf/eh4.d
index 5efecab..b8f9865 100644
--- a/ld/testsuite/ld-elf/eh4.d
+++ b/ld/testsuite/ld-elf/eh4.d
@@ -4,7 +4,7 @@
 #readelf: -wf
 #target: x86_64-*-*
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-elf/eh5.d b/ld/testsuite/ld-elf/eh5.d
index 13bff08..48ab7d7 100644
--- a/ld/testsuite/ld-elf/eh5.d
+++ b/ld/testsuite/ld-elf/eh5.d
@@ -3,14 +3,15 @@
 #source: eh5b.s
 #ld:
 #readelf: -wf
-#target: x86_64-*-* i?86-*-*
+#target: cfi
+#notarget: alpha*
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 0000001[04] 00000000 CIE
   Version:               1
   Augmentation:          "zR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     1b
@@ -29,7 +30,7 @@
 000000(2c|30) 00000014 00000000 CIE
   Version:               1
   Augmentation:          "zPR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     03 .. .. .. .. 1b
@@ -53,7 +54,7 @@
 0000007[48] 0000001[8c] 00000000 CIE
   Version:               1
   Augmentation:          "zPLR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     03 .. .. .. .. 0c 1b
@@ -74,7 +75,7 @@
 000000b[08] 0000001[04] 00000000 CIE
   Version:               1
   Augmentation:          "zR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     1b
@@ -89,7 +90,7 @@
 000000[de]8 00000014 00000000 CIE
   Version:               1
   Augmentation:          "zPR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     03 .. .. .. .. 1b
@@ -111,7 +112,7 @@
 000001(1c|30) 0000001[8c] 00000000 CIE
   Version:               1
   Augmentation:          "zPLR"
-  Code alignment factor: 1
+  Code alignment factor: .*
   Data alignment factor: .*
   Return address column: .*
   Augmentation data:     03 .. .. .. .. 0c 1b
diff --git a/ld/testsuite/ld-elf/eh5b.s b/ld/testsuite/ld-elf/eh5b.s
index 3e5e010..fa27edd 100644
--- a/ld/testsuite/ld-elf/eh5b.s
+++ b/ld/testsuite/ld-elf/eh5b.s
@@ -24,6 +24,12 @@
 	.cfi_def_cfa 0, 16
 	.cfi_endproc
 
+	.globl main
+	.globl start
 	.globl _start
+	.globl __start
+main:
+start:
 _start:
+__start:
 	.long 0
diff --git a/ld/testsuite/ld-elf/eh6.d b/ld/testsuite/ld-elf/eh6.d
index 7f4e47a..67c6a06 100644
--- a/ld/testsuite/ld-elf/eh6.d
+++ b/ld/testsuite/ld-elf/eh6.d
@@ -3,7 +3,7 @@
 #readelf: -wf
 #target: x86_64-*-linux-gnu i?86-*-linux-gnu
 
-The section .eh_frame contains:
+Contents of the .eh_frame section:
 
 00000000 0000001[4c] 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-elf/extract-symbol-1sec.d b/ld/testsuite/ld-elf/extract-symbol-1sec.d
index 87d42af..cbe0144 100644
--- a/ld/testsuite/ld-elf/extract-symbol-1sec.d
+++ b/ld/testsuite/ld-elf/extract-symbol-1sec.d
@@ -7,7 +7,7 @@
 #...
 Sections:
  *Idx +Name +Size +VMA +LMA .*
- *0 +\.foo +0+ +0+10000 +0+10000 .*
+ *0 +\.foo +0+ +0+10000 +0+ .*
  *CONTENTS, ALLOC, LOAD, CODE
- *1 +\.bar +0+ +0+20000 +0+20000 .*
+ *1 +\.bar +0+ +0+20000 +0+10000 .*
  *ALLOC, READONLY, CODE
diff --git a/ld/testsuite/ld-elf/func1.c b/ld/testsuite/ld-elf/func1.c
new file mode 100644
index 0000000..99443e4
--- /dev/null
+++ b/ld/testsuite/ld-elf/func1.c
@@ -0,0 +1,2 @@
+void foo (void) { }
+void bar (void) { }
diff --git a/ld/testsuite/ld-elf/group4.d b/ld/testsuite/ld-elf/group4.d
new file mode 100644
index 0000000..92a54bd
--- /dev/null
+++ b/ld/testsuite/ld-elf/group4.d
@@ -0,0 +1,16 @@
+#source: ../../../binutils/testsuite/binutils-all/group-2.s
+#ld: -r
+#readelf: -Sg --wide
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[.text.foo\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/ld/testsuite/ld-elf/group5.d b/ld/testsuite/ld-elf/group5.d
new file mode 100644
index 0000000..7d6eff6
--- /dev/null
+++ b/ld/testsuite/ld-elf/group5.d
@@ -0,0 +1,16 @@
+#source: ../../../binutils/testsuite/binutils-all/group-3.s
+#ld: -r
+#readelf: -Sg --wide
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo3\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/ld/testsuite/ld-elf/group6.d b/ld/testsuite/ld-elf/group6.d
new file mode 100644
index 0000000..b113414
--- /dev/null
+++ b/ld/testsuite/ld-elf/group6.d
@@ -0,0 +1,16 @@
+#source: ../../../binutils/testsuite/binutils-all/group-4.s
+#ld: -r
+#readelf: -Sg --wide
+
+#...
+  \[[ 0-9]+\] .group[ \t]+GROUP[ \t]+.*
+#...
+  \[[ 0-9]+\] \.text.*[ \t]+PROGBITS[ \t0-9a-f]+AXG[ \t]+.*
+#...
+  \[[ 0-9]+\] \.data.*[ \t]+PROGBITS[ \t0-9a-f]+WAG[ \t]+.*
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo4\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.*
+   \[[ 0-9]+\]   .data.*
+#pass
diff --git a/ld/testsuite/ld-elf/group7.d b/ld/testsuite/ld-elf/group7.d
new file mode 100644
index 0000000..bfd1f3f
--- /dev/null
+++ b/ld/testsuite/ld-elf/group7.d
@@ -0,0 +1,28 @@
+#source: ../../../binutils/testsuite/binutils-all/group.s
+#source: ../../../binutils/testsuite/binutils-all/group-2.s
+#source: ../../../binutils/testsuite/binutils-all/group-3.s
+#source: ../../../binutils/testsuite/binutils-all/group-4.s
+#ld: -r
+#readelf: -g --wide
+
+#...
+COMDAT group section \[[ 0-9]+\] `foo_group' \[foo_group\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.foo
+   \[[ 0-9]+\]   .data.foo
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[.text.foo\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.foo
+   \[[ 0-9]+\]   .data.bar
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo3\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.foo3
+   \[[ 0-9]+\]   .data.bar3
+#...
+COMDAT group section \[[ 0-9]+\] `.group' \[foo4\] contains 2 sections:
+   \[Index\]    Name
+   \[[ 0-9]+\]   .text.foo4
+   \[[ 0-9]+\]   .data.foo4
+#pass
diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp
index 846027e..f0bc403 100644
--- a/ld/testsuite/ld-elf/shared.exp
+++ b/ld/testsuite/ld-elf/shared.exp
@@ -123,6 +123,12 @@
   {"Build libdata1.so"
    "-shared" "-fPIC"
    {data1.c} {} "libdata1.so"}
+  {"Build libcomm1.o"
+   "-r -nostdlib" ""
+   {comm1.c} {} "libcomm1.o"}
+  {"Build libfunc1.so"
+   "-shared" "-fPIC"
+   {func1.c} {} "libfunc1.so"}
 }
 
 set run_tests {
@@ -235,6 +241,12 @@
     {"Run with libdata1.so"
      "tmpdir/libdata1.so" ""
      {dynbss1.c} "dynbss1" "pass.out"}
+    {"Run with libfunc1.so comm1.o"
+     "tmpdir/libfunc1.so tmpdir/comm1.o" ""
+     {dummy.c} "comm1" "pass.out"}
+    {"Run with comm1.o libfunc1.so"
+     "tmpdir/comm1.o tmpdir/libfunc1.so" ""
+     {dummy.c} "comm1" "pass.out"}
 }
 
 run_cc_link_tests $build_tests
diff --git a/ld/testsuite/ld-elf/stab.d b/ld/testsuite/ld-elf/stab.d
index 6676238..346640d 100644
--- a/ld/testsuite/ld-elf/stab.d
+++ b/ld/testsuite/ld-elf/stab.d
@@ -2,7 +2,10 @@
 #as: -gstabs
 #readelf: -S --wide
 #ld:
-#notarget: ia64-*-*
+#notarget: "ia64-*-*" "alpha*"
+
+# Disabled on alpha because the entry point may be above 4GB but the stabs
+# value on 32 bits.
 
 #...
   \[[0-9 ][0-9]\] \.stab +PROGBITS +0+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ +[1-9]+ +0.*
diff --git a/ld/testsuite/ld-elfcomm/common1b.c b/ld/testsuite/ld-elfcomm/common1b.c
index 4ed9e03..a375c90 100644
--- a/ld/testsuite/ld-elfcomm/common1b.c
+++ b/ld/testsuite/ld-elfcomm/common1b.c
@@ -1,3 +1,7 @@
-static char dummy1 = 'X';
+static
+#if     __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)
+  __attribute__((__used__))
+#endif  /* __GNUC__ */
+  char dummy1 = 'X';
 char foo1 [] = "Aligned at odd byte.";
 char foo2 [4];
diff --git a/ld/testsuite/ld-gc/gc.c b/ld/testsuite/ld-gc/gc.c
index 6b356ad..3b0e655 100644
--- a/ld/testsuite/ld-gc/gc.c
+++ b/ld/testsuite/ld-gc/gc.c
@@ -19,3 +19,23 @@
 {
   return used_func (5);
 }
+
+void
+dummy_func (void)
+{
+  /* These are here in case the target prepends an underscore to
+     the start of function names.  They are inside a dummy function
+     so that they will appear at the end of gcc's assembler output,
+     after the definitions of main() and used_func(), rather than
+     at the beginning of the file.  */
+
+  __asm__(".ifndef main\n\
+.global main\n\
+.set main, _main\n\
+.endif");
+
+  __asm__(".ifndef used_func\n\
+.global used_func\n\
+.set used_func, _used_func\n\
+.endif");
+}
diff --git a/ld/testsuite/ld-ia64/tlsbin.rd b/ld/testsuite/ld-ia64/tlsbin.rd
index 7f130a4..ca0d69e 100644
--- a/ld/testsuite/ld-ia64/tlsbin.rd
+++ b/ld/testsuite/ld-ia64/tlsbin.rd
@@ -15,10 +15,10 @@
  +\[[ 0-9]+\] .dynsym +.*
  +\[[ 0-9]+\] .dynstr +.*
  +\[[ 0-9]+\] .rela.dyn +.*
- +\[[ 0-9]+\] .rela.IA_64.pltof +.*
+ +\[[ 0-9]+\] .rela.IA_64.pltoff +.*
  +\[[ 0-9]+\] .plt +.*
  +\[[ 0-9]+\] .text +PROGBITS +40+1000 0+1000 0+140 00 +AX +0 +0 4096
- +\[[ 0-9]+\] .IA_64.unwind_inf +.*
+ +\[[ 0-9]+\] .IA_64.unwind_info +.*
  +\[[ 0-9]+\] .IA_64.unwind +.*
  +\[[ 0-9]+\] .tdata +PROGBITS +60+1[0-9a-f]+ 0+1[0-9a-f]+ 0+60 00 WAT +0 +0 +4
  +\[[ 0-9]+\] .tbss +NOBITS +60+1[0-9a-f]+ 0+1[0-9a-f]+ 0+40 00 WAT +0 +0 +1
diff --git a/ld/testsuite/ld-ia64/tlspic.rd b/ld/testsuite/ld-ia64/tlspic.rd
index 509e598..9bf4387 100644
--- a/ld/testsuite/ld-ia64/tlspic.rd
+++ b/ld/testsuite/ld-ia64/tlspic.rd
@@ -14,10 +14,10 @@
  +\[[ 0-9]+\] .dynsym +.*
  +\[[ 0-9]+\] .dynstr +.*
  +\[[ 0-9]+\] .rela.dyn +.*
- +\[[ 0-9]+\] .rela.IA_64.pltof +.*
+ +\[[ 0-9]+\] .rela.IA_64.pltoff +.*
  +\[[ 0-9]+\] .plt +.*
  +\[[ 0-9]+\] .text +PROGBITS +0+1000 0+1000 0+110 00 +AX +0 +0 4096
- +\[[ 0-9]+\] .IA_64.unwind_inf +.*
+ +\[[ 0-9]+\] .IA_64.unwind_info +.*
  +\[[ 0-9]+\] .IA_64.unwind +.*
  +\[[ 0-9]+\] .tdata +PROGBITS +0+11[0-9a-f]+ 0+1[0-9a-f]+ 0+60 00 WAT +0 +0 +4
  +\[[ 0-9]+\] .tbss +NOBITS +0+11[0-9a-f]+ 0+1[0-9a-f]+ 0+20 00 WAT +0 +0 +1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame1-n32.d b/ld/testsuite/ld-mips-elf/eh-frame1-n32.d
index 3924016..6adb355 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame1-n32.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame1-n32.d
@@ -17,7 +17,7 @@
 0003008b  [0-9a-f]+ R_MIPS_REL32      00000000   foo
 000300d0  [0-9a-f]+ R_MIPS_REL32      00000000   foo
 0003010e  [0-9a-f]+ R_MIPS_REL32      00000000   foo
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame1-n64.d b/ld/testsuite/ld-mips-elf/eh-frame1-n64.d
index f0925b9..1512b4a 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame1-n64.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame1-n64.d
@@ -33,7 +33,7 @@
 000000030192  [0-9a-f]+ R_MIPS_REL32      0000000000000000 foo
  *Type2: R_MIPS_64 *
  *Type3: R_MIPS_NONE *
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame2-n32.d b/ld/testsuite/ld-mips-elf/eh-frame2-n32.d
index ce2aa1d..d831d26 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame2-n32.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame2-n32.d
@@ -17,7 +17,7 @@
 0003008b  [0-9a-f]+ R_MIPS_REL32      00000000   foo
 000300cc  [0-9a-f]+ R_MIPS_REL32      00000000   foo
 0003010a  [0-9a-f]+ R_MIPS_REL32      00000000   foo
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 00000010 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame2-n64.d b/ld/testsuite/ld-mips-elf/eh-frame2-n64.d
index 50394f5..8e741f3 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame2-n64.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame2-n64.d
@@ -33,7 +33,7 @@
 00000003018a  [0-9a-f]+ R_MIPS_REL32      0000000000000000 foo
  *Type2: R_MIPS_64 *
  *Type3: R_MIPS_NONE *
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 00000014 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame3.d b/ld/testsuite/ld-mips-elf/eh-frame3.d
index 4c91d2c..80f13d9 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame3.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame3.d
@@ -9,7 +9,7 @@
 # combination of 32-bit objects and 64-bit FDE addresses.
 #
 
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 0000000c 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/eh-frame4.d b/ld/testsuite/ld-mips-elf/eh-frame4.d
index e04d5fc..c4b7e5c 100644
--- a/ld/testsuite/ld-mips-elf/eh-frame4.d
+++ b/ld/testsuite/ld-mips-elf/eh-frame4.d
@@ -8,7 +8,7 @@
 # This test is for the semi-official ILP32 variation of EABI64.
 #
 
-The section \.eh_frame contains:
+Contents of the section \.eh_frame:
 
 00000000 0000000c 00000000 CIE
   Version:               1
diff --git a/ld/testsuite/ld-mips-elf/reloc-estimate-1.d b/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
index 94dde81..0d49b05 100644
--- a/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
+++ b/ld/testsuite/ld-mips-elf/reloc-estimate-1.d
@@ -15,4 +15,4 @@
 # The address must be 0x810.  We should only ever allocate one dynamic
 # reloc over and above the first R_MIPS_NONE entry.
 Contents of section \.foo:
- 0810 deadbeef                             ....            
+ 0810 (deadbeef|efbeadde)                             ....            
diff --git a/ld/testsuite/ld-powerpc/attr-gnu-12-1.s b/ld/testsuite/ld-powerpc/attr-gnu-12-1.s
new file mode 100644
index 0000000..10cbe3b
--- /dev/null
+++ b/ld/testsuite/ld-powerpc/attr-gnu-12-1.s
@@ -0,0 +1 @@
+.gnu_attribute 12,1
diff --git a/ld/testsuite/ld-powerpc/attr-gnu-12-11.d b/ld/testsuite/ld-powerpc/attr-gnu-12-11.d
new file mode 100644
index 0000000..e88c4ba
--- /dev/null
+++ b/ld/testsuite/ld-powerpc/attr-gnu-12-11.d
@@ -0,0 +1,10 @@
+#source: attr-gnu-12-1.s
+#source: attr-gnu-12-1.s
+#as: -a32
+#ld: -r -melf32ppc
+#readelf: -A
+#target: powerpc*-*-*
+
+Attribute Section: gnu
+File Attributes
+  Tag_GNU_Power_ABI_Struct_Return: r3/r4
diff --git a/ld/testsuite/ld-powerpc/attr-gnu-12-2.s b/ld/testsuite/ld-powerpc/attr-gnu-12-2.s
new file mode 100644
index 0000000..c39de66
--- /dev/null
+++ b/ld/testsuite/ld-powerpc/attr-gnu-12-2.s
@@ -0,0 +1 @@
+.gnu_attribute 12,2
diff --git a/ld/testsuite/ld-powerpc/attr-gnu-12-21.d b/ld/testsuite/ld-powerpc/attr-gnu-12-21.d
new file mode 100644
index 0000000..ef14e35
--- /dev/null
+++ b/ld/testsuite/ld-powerpc/attr-gnu-12-21.d
@@ -0,0 +1,6 @@
+#source: attr-gnu-12-2.s
+#source: attr-gnu-12-1.s
+#as: -a32
+#ld: -r -melf32ppc
+#warning: Warning: .* uses r3/r4 for small structure returns, .* uses memory
+#target: powerpc*-*-*
diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp
index 4e03cf6..af812a0 100644
--- a/ld/testsuite/ld-powerpc/powerpc.exp
+++ b/ld/testsuite/ld-powerpc/powerpc.exp
@@ -177,3 +177,6 @@
 run_dump_test "attr-gnu-8-11"
 run_dump_test "attr-gnu-8-23"
 run_dump_test "attr-gnu-8-31"
+
+run_dump_test "attr-gnu-12-11"
+run_dump_test "attr-gnu-12-21"
diff --git a/ld/testsuite/ld-powerpc/vxworks1-lib.rd b/ld/testsuite/ld-powerpc/vxworks1-lib.rd
index 40a5d55..113462f 100644
--- a/ld/testsuite/ld-powerpc/vxworks1-lib.rd
+++ b/ld/testsuite/ld-powerpc/vxworks1-lib.rd
@@ -1,9 +1,4 @@
 
-Relocation section '\.rela\.plt' at offset .* contains 2 entries:
- Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
-0009040c  .*15 R_PPC_JMP_SLOT    00000000   sexternal \+ 0
-00090410  .*15 R_PPC_JMP_SLOT    00080c48   sglobal \+ 0
-
 Relocation section '\.rela\.dyn' at offset .* contains 5 entries:
  Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
 00090800  00000016 R_PPC_RELATIVE * 00080c44
@@ -11,3 +6,8 @@
 00080c12  .*04 R_PPC_ADDR16_LO   00000000   __GOTT_BASE__ \+ 0
 00080c16  .*03 R_PPC_ADDR16      00000000   __GOTT_INDEX__ \+ 0
 00090414  .*14 R_PPC_GLOB_DAT    00090c00   x \+ 0
+
+Relocation section '\.rela\.plt' at offset .* contains 2 entries:
+ Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
+0009040c  .*15 R_PPC_JMP_SLOT    00000000   sexternal \+ 0
+00090410  .*15 R_PPC_JMP_SLOT    00080c48   sglobal \+ 0
diff --git a/ld/testsuite/ld-shared/main.c b/ld/testsuite/ld-shared/main.c
index ce06261..0817d27 100644
--- a/ld/testsuite/ld-shared/main.c
+++ b/ld/testsuite/ld-shared/main.c
@@ -38,8 +38,6 @@
 int
 main ()
 {
-  int (*p) ();
-
   printf ("mainvar == %d\n", mainvar);
   printf ("overriddenvar == %d\n", overriddenvar);
   printf ("shlibvar1 == %d\n", shlibvar1);
@@ -62,21 +60,29 @@
   printf ("shlib_checkfunptr2 (main_called) == %d\n",
 	  shlib_checkfunptr2 (main_called));
 #endif
-  p = shlib_getfunptr1 ();
-  printf ("shlib_getfunptr1 () ");
-  if (p == shlib_shlibvar1)
-    printf ("==");
-  else
-    printf ("!=");
-  printf (" shlib_shlibvar1\n");
+  {
+    int (*p) ();
+
+    p = shlib_getfunptr1 ();
+    printf ("shlib_getfunptr1 () ");
+    if (p == shlib_shlibvar1)
+      printf ("==");
+    else
+      printf ("!=");
+    printf (" shlib_shlibvar1\n");
+  }
 #ifndef XCOFF_TEST
-  p = shlib_getfunptr2 ();
-  printf ("shlib_getfunptr2 () ");
-  if (p == main_called)
-    printf ("==");
-  else
-    printf ("!=");
-  printf (" main_called\n");
+  {
+    int (*p) ();
+
+    p = shlib_getfunptr2 ();
+    printf ("shlib_getfunptr2 () ");
+    if (p == main_called)
+      printf ("==");
+    else
+      printf ("!=");
+    printf (" main_called\n");
+  }
 #endif
 #endif
   printf ("shlib_check () == %d\n", shlib_check ());
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index 1ebb1a2..d4e996e 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -598,7 +598,8 @@
 #
 #   target: TARGET
 #       Only run the test for TARGET.  This may occur more than once; the
-#       target being tested must match at least one.
+#       target being tested must match at least one.  You may provide target
+#       name "cfi" for any target supporting the CFI statements.
 #
 #   notarget: TARGET
 #       Do not run the test for TARGET.  This may occur more than once;
@@ -1569,3 +1570,39 @@
     }
     return $gc_sections_available_saved
 }
+
+# Check if the assembler supports CFI statements.
+
+proc check_as_cfi { } {
+    global check_as_cfi_result
+    global as
+    if [info exists check_as_cfi_result] {
+	return $check_as_cfi_result
+    }
+    set as_file "tmpdir/check_as_cfi.s"
+    set as_fh [open $as_file w 0666]
+    puts $as_fh "# Generated file. DO NOT EDIT"
+    puts $as_fh "\t.cfi_startproc"
+    puts $as_fh "\t.cfi_endproc"
+    close $as_fh
+    remote_download host $as_file
+    verbose -log "Checking CFI support:"
+    rename "perror" "check_as_cfi_perror"
+    proc perror { args } { }
+    set success [ld_assemble $as $as_file "/dev/null"]
+    rename "perror" ""
+    rename "check_as_cfi_perror" "perror"
+    #remote_file host delete $as_file
+    set check_as_cfi_result $success
+    return $success
+}
+
+# Provide virtual target "cfi" for targets supporting CFI.
+
+rename "istarget" "istarget_ld"
+proc istarget { target } {
+    if {$target == "cfi"} {
+	return [check_as_cfi]
+    }
+    return [istarget_ld $target]
+}
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 837035c..fd9d300 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,56 @@
+2008-10-22  Daniel Jacobowitz  <dan@codesourcery.com>
+
+	* Makefile.in (CPPFLAGS): Define.
+	(FLAGS_TO_PASS, COMPILE.c): Add CPPFLAGS.
+
+2008-10-15  Paolo Bonzini  <bonzini@gnu.org>
+
+	PR bootstrap/37137
+	* Makefile.in (LIBCFLAGS): Remove.
+	(FLAGS_TO_PASS): Don't mention it.
+	(COMPILE.c, MULTIOSDIR): Replace it with CFLAGS.
+
+2008-10-08  David Edelsohn  <edelsohn@gnu.org>
+
+	* xstrdup.c: Include <sys/types.h> after "config.h"
+ 
+2008-10-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* configure.ac: Call AC_SYS_LARGEFILE.
+	* config.in: Regenerated.
+	* configure: Likewise.
+
+2008-10-06  Jason Merrill  <jason@redhat.com>
+
+	* cp-demangle.c (struct d_print_info): Add pack_index.
+	(d_dump): Add DEMANGLE_COMPONENT_PACK_EXPANSION.
+	(d_make_comp): Likewise.  DEMANGLE_COMPONENT_ARGLIST and
+	DEMANGLE_COMPONENT_TEMPLATE_ARGLIST can have two null args.
+	(cplus_demangle_builtin_types): Add char16/32_t.
+	(cplus_demangle_type): Recognize them.
+	(d_template_args): Handle empty argument packs.
+	(d_template_arg): Handle argument packs.
+	(d_expression): Handle dependent name.
+	(d_index_template_argument): New fn.
+	(d_lookup_template_argument): New fn.
+	(d_find_pack, d_pack_length): New fn.
+	(d_print_subexpr): Split out...
+	(d_print_comp): ...from here.  Use d_*_template_argument.
+	Handle empty arg lists.  Support pack expansions.
+	* cp-demangle.h (D_BUILTIN_TYPE_COUNT): Increase to 32.
+
+2008-09-09  Jason Merrill  <jason@redhat.com>
+
+	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_DECLTYPE.
+	(d_make_comp): Likewise.
+	(cplus_demangle_type): Handle decltype and DFP types.
+	(cplus_demangle_operators): Call operator takes 2 args.
+	(cplus_demangle_builtin_types): Add DFP types.
+	(d_exprlist): New fn.
+	(d_expression): Handle parm placeholders, T() and calls.
+	(d_print_comp): Handle decltype, T() and calls.
+	* testsuite/demangle-expected: Test the above.
+
 2008-08-07  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
 
 	* pex-win32.c (argv_to_argc): New function.
@@ -4901,7 +4954,7 @@
 
 	* Merge egcs & devo libiberty.
 
-1998-09-08  Martin von Löwis  <loewis@informatik.hu-berlin.de>
+1998-09-08  Martin von Löwis  <loewis@informatik.hu-berlin.de>
 
 	* cplus-dem.c (demangle_arm_pt): Demangle anonymous namespaces.
 
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index e18aff7..41a71f5 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -55,7 +55,7 @@
 
 CC = @CC@
 CFLAGS = @CFLAGS@
-LIBCFLAGS = $(CFLAGS)
+CPPFLAGS = @CPPFLAGS@
 RANLIB = @RANLIB@
 MAKEINFO = @MAKEINFO@
 PERL = @PERL@
@@ -79,8 +79,8 @@
 	"AR_FLAGS=$(AR_FLAGS)" \
 	"CC=$(CC)" \
 	"CFLAGS=$(CFLAGS)" \
+	"CPPFLAGS=$(CPPFLAGS)" \
 	"DESTDIR=$(DESTDIR)" \
-	"LIBCFLAGS=$(LIBCFLAGS)" \
 	"EXTRA_OFILES=$(EXTRA_OFILES)" \
 	"HDEFINES=$(HDEFINES)" \
 	"INSTALL=$(INSTALL)" \
@@ -111,7 +111,7 @@
 
 INCDIR=$(srcdir)/$(MULTISRCTOP)../include
 
-COMPILE.c = $(CC) -c @DEFS@ $(LIBCFLAGS) -I. -I$(INCDIR) $(HDEFINES) @ac_libiberty_warn_cflags@
+COMPILE.c = $(CC) -c @DEFS@ $(CFLAGS) $(CPPFLAGS) -I. -I$(INCDIR) $(HDEFINES) @ac_libiberty_warn_cflags@
 
 # Just to make sure we don't use a built-in rule with VPATH
 .c.o:
@@ -350,9 +350,9 @@
 
 # This is tricky.  Even though CC in the Makefile contains
 # multilib-specific flags, it's overridden by FLAGS_TO_PASS from the
-# default multilib, so we have to take LIBCFLAGS into account as well,
+# default multilib, so we have to take CFLAGS into account as well,
 # since it will be passed the multilib flags.
-MULTIOSDIR = `$(CC) $(LIBCFLAGS) -print-multi-os-directory`
+MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory`
 install_to_libdir: all
 	${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR)
 	$(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n
diff --git a/libiberty/config.in b/libiberty/config.in
index 436a58d..9260d56 100644
--- a/libiberty/config.in
+++ b/libiberty/config.in
@@ -425,6 +425,12 @@
    first (like Motorola and SPARC, unlike Intel and VAX). */
 #undef WORDS_BIGENDIAN
 
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
+
+/* Define for large files, on AIX-style hosts. */
+#undef _LARGE_FILES
+
 /* Define to empty if `const' does not conform to ANSI C. */
 #undef const
 
diff --git a/libiberty/configure b/libiberty/configure
index 50e9ba3..71b6ccd 100755
--- a/libiberty/configure
+++ b/libiberty/configure
@@ -849,6 +849,7 @@
                           enable make rules and dependencies not useful
                           (and sometimes confusing) to the casual installer
   --enable-multilib       build many library versions (default)
+  --disable-largefile     omit support for large files
   --enable-install-libiberty       Install headers for end users
 
 Optional Packages:
@@ -2741,6 +2742,371 @@
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
+
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+	 cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 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
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+	 break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+_ACEOF
+
+fi
+rm -f conftest*
+  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  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
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<_ACEOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+_ACEOF
+
+fi
+rm -f conftest*
+fi
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2980,7 +3346,6 @@
 
 ac_c_preproc_warn_flag=yes
 
-
 ac_libiberty_warn_cflags=
 save_CFLAGS="$CFLAGS"
 for option in -W -Wall -Wwrite-strings -Wc++-compat \
diff --git a/libiberty/configure.ac b/libiberty/configure.ac
index 419351b..ff0ae6a 100644
--- a/libiberty/configure.ac
+++ b/libiberty/configure.ac
@@ -130,6 +130,7 @@
 
 GCC_NO_EXECUTABLES
 AC_PROG_CC
+AC_SYS_LARGEFILE
 AC_PROG_CPP_WERROR
 
 ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wc++-compat \
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index 82107bc..3fa5f1f 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -299,6 +299,9 @@
   struct d_print_mod *modifiers;
   /* Set to 1 if we saw a demangling error.  */
   int demangle_failure;
+  /* The current index into any template argument packs we are using
+     for printing.  */
+  int pack_index;
 };
 
 #ifdef CP_DEMANGLE_DEBUG
@@ -660,6 +663,12 @@
     case DEMANGLE_COMPONENT_CHARACTER:
       printf ("character '%c'\n",  dc->u.s_character.character);
       return;
+    case DEMANGLE_COMPONENT_DECLTYPE:
+      printf ("decltype\n");
+      break;
+    case DEMANGLE_COMPONENT_PACK_EXPANSION:
+      printf ("pack expansion\n");
+      break;
     }
 
   d_dump (d_left (dc), indent + 2);
@@ -803,10 +812,10 @@
     case DEMANGLE_COMPONENT_COMPLEX:
     case DEMANGLE_COMPONENT_IMAGINARY:
     case DEMANGLE_COMPONENT_VENDOR_TYPE:
-    case DEMANGLE_COMPONENT_ARGLIST:
-    case DEMANGLE_COMPONENT_TEMPLATE_ARGLIST:
     case DEMANGLE_COMPONENT_CAST:
     case DEMANGLE_COMPONENT_JAVA_RESOURCE:
+    case DEMANGLE_COMPONENT_DECLTYPE:
+    case DEMANGLE_COMPONENT_PACK_EXPANSION:
       if (left == NULL)
 	return NULL;
       break;
@@ -827,6 +836,8 @@
     case DEMANGLE_COMPONENT_RESTRICT_THIS:
     case DEMANGLE_COMPONENT_VOLATILE_THIS:
     case DEMANGLE_COMPONENT_CONST_THIS:
+    case DEMANGLE_COMPONENT_ARGLIST:
+    case DEMANGLE_COMPONENT_TEMPLATE_ARGLIST:
       break;
 
       /* Other types should not be seen here.  */
@@ -1422,13 +1433,14 @@
   { "aa", NL ("&&"),        2 },
   { "ad", NL ("&"),         1 },
   { "an", NL ("&"),         2 },
-  { "cl", NL ("()"),        0 },
+  { "cl", NL ("()"),        2 },
   { "cm", NL (","),         2 },
   { "co", NL ("~"),         1 },
   { "dV", NL ("/="),        2 },
   { "da", NL ("delete[]"),  1 },
   { "de", NL ("*"),         1 },
   { "dl", NL ("delete"),    1 },
+  { "dt", NL ("."),         2 },
   { "dv", NL ("/"),         2 },
   { "eO", NL ("^="),        2 },
   { "eo", NL ("^"),         2 },
@@ -1883,6 +1895,12 @@
   /* y */ { NL ("unsigned long long"), NL ("unsigned long long"),
 	    D_PRINT_UNSIGNED_LONG_LONG },
   /* z */ { NL ("..."),		NL ("..."),		D_PRINT_DEFAULT },
+  /* 26 */ { NL ("decimal32"),	NL ("decimal32"),	D_PRINT_DEFAULT },
+  /* 27 */ { NL ("decimal64"),	NL ("decimal64"),	D_PRINT_DEFAULT },
+  /* 28 */ { NL ("decimal128"),	NL ("decimal128"),	D_PRINT_DEFAULT },
+  /* 29 */ { NL ("half"),	NL ("half"),		D_PRINT_FLOAT },
+  /* 30 */ { NL ("char16_t"),	NL ("char16_t"),	D_PRINT_DEFAULT },
+  /* 31 */ { NL ("char32_t"),	NL ("char32_t"),	D_PRINT_DEFAULT },
 };
 
 CP_STATIC_IF_GLIBCPP_V3
@@ -2046,6 +2064,60 @@
 			 cplus_demangle_type (di), ret);
       break;
 
+    case 'D':
+      can_subst = 0;
+      d_advance (di, 1);
+      peek = d_next_char (di);
+      switch (peek)
+	{
+	case 'T':
+	case 't':
+	  /* decltype (expression) */
+	  ret = d_make_comp (di, DEMANGLE_COMPONENT_DECLTYPE,
+			     d_expression (di), NULL);
+	  if (ret && d_next_char (di) != 'E')
+	    ret = NULL;
+	  break;
+	  
+	case 'p':
+	  /* Pack expansion.  */
+	  ret = d_make_comp (di, DEMANGLE_COMPONENT_PACK_EXPANSION,
+			     cplus_demangle_type (di), NULL);
+	  break;
+	  
+	case 'f':
+	  /* 32-bit decimal floating point */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[26]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	case 'd':
+	  /* 64-bit DFP */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[27]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	case 'e':
+	  /* 128-bit DFP */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[28]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	case 'h':
+	  /* 16-bit half-precision FP */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[29]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	case 's':
+	  /* char16_t */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[30]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	case 'i':
+	  /* char32_t */
+	  ret = d_make_builtin_type (di, &cplus_demangle_builtin_types[31]);
+	  di->expansion += ret->u.s_builtin.type->len;
+	  break;
+	}
+      break;
+
     default:
       return NULL;
     }
@@ -2337,6 +2409,13 @@
   if (! d_check_char (di, 'I'))
     return NULL;
 
+  if (d_peek_char (di) == 'E')
+    {
+      /* An argument pack can be empty.  */
+      d_advance (di, 1);
+      return d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE_ARGLIST, NULL, NULL);
+    }
+
   al = NULL;
   pal = &al;
   while (1)
@@ -2386,14 +2465,54 @@
     case 'L':
       return d_expr_primary (di);
 
+    case 'I':
+      /* An argument pack.  */
+      return d_template_args (di);
+
     default:
       return cplus_demangle_type (di);
     }
 }
 
+/* Subroutine of <expression> ::= cl <expression>+ E */
+
+static struct demangle_component *
+d_exprlist (struct d_info *di)
+{
+  struct demangle_component *list = NULL;
+  struct demangle_component **p = &list;
+
+  if (d_peek_char (di) == 'E')
+    {
+      d_advance (di, 1);
+      return d_make_comp (di, DEMANGLE_COMPONENT_ARGLIST, NULL, NULL);
+    }
+
+  while (1)
+    {
+      struct demangle_component *arg = d_expression (di);
+      if (arg == NULL)
+	return NULL;
+
+      *p = d_make_comp (di, DEMANGLE_COMPONENT_ARGLIST, arg, NULL);
+      if (*p == NULL)
+	return NULL;
+      p = &d_right (*p);
+
+      if (d_peek_char (di) == 'E')
+	{
+	  d_advance (di, 1);
+	  break;
+	}
+    }
+
+  return list;
+}
+
 /* <expression> ::= <(unary) operator-name> <expression>
                 ::= <(binary) operator-name> <expression> <expression>
                 ::= <(trinary) operator-name> <expression> <expression> <expression>
+		::= cl <expression>+ E
                 ::= st <type>
                 ::= <template-param>
                 ::= sr <type> <unqualified-name>
@@ -2426,6 +2545,25 @@
 			    d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, name,
 					 d_template_args (di)));
     }
+  else if (peek == 's' && d_peek_next_char (di) == 'T')
+    {
+      /* Just demangle a parameter placeholder as its type.  */
+      d_advance (di, 2);
+      return cplus_demangle_type (di);
+    }
+  else if (IS_DIGIT (peek))
+    {
+      /* We can get an unqualified name as an expression in the case of
+         a dependent member access, i.e. decltype(T().i).  */
+      struct demangle_component *name = d_unqualified_name (di);
+      if (name == NULL)
+	return NULL;
+      if (d_peek_char (di) == 'I')
+	return d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, name,
+			    d_template_args (di));
+      else
+	return name;
+    }
   else
     {
       struct demangle_component *op;
@@ -2454,7 +2592,12 @@
 	  args = op->u.s_extended_operator.args;
 	  break;
 	case DEMANGLE_COMPONENT_CAST:
-	  args = 1;
+	  if (d_peek_char (di) == 'v')
+	    /* T() encoded as an operand of void.  */
+	    return d_make_comp (di, DEMANGLE_COMPONENT_UNARY, op,
+				cplus_demangle_type (di));
+	  else
+	    args = 1;
 	  break;
 	}
 
@@ -2466,13 +2609,18 @@
 	case 2:
 	  {
 	    struct demangle_component *left;
+	    struct demangle_component *right;
 
 	    left = d_expression (di);
+	    if (!strcmp (op->u.s_operator.op->code, "cl"))
+	      right = d_exprlist (di);
+	    else
+	      right = d_expression (di);
+
 	    return d_make_comp (di, DEMANGLE_COMPONENT_BINARY, op,
 				d_make_comp (di,
 					     DEMANGLE_COMPONENT_BINARY_ARGS,
-					     left,
-					     d_expression (di)));
+					     left, right));
 	  }
 	case 3:
 	  {
@@ -2968,6 +3116,123 @@
   return dgs.buf;
 }
 
+/* Returns the I'th element of the template arglist ARGS, or NULL on
+   failure.  */
+
+static struct demangle_component *
+d_index_template_argument (struct demangle_component *args, int i)
+{
+  struct demangle_component *a;
+
+  for (a = args;
+       a != NULL;
+       a = d_right (a))
+    {
+      if (a->type != DEMANGLE_COMPONENT_TEMPLATE_ARGLIST)
+	return NULL;
+      if (i <= 0)
+	break;
+      --i;
+    }
+  if (i != 0 || a == NULL)
+    return NULL;
+
+  return d_left (a);
+}
+
+/* Returns the template argument from the current context indicated by DC,
+   which is a DEMANGLE_COMPONENT_TEMPLATE_PARAM, or NULL.  */
+
+static struct demangle_component *
+d_lookup_template_argument (struct d_print_info *dpi,
+			    const struct demangle_component *dc)
+{
+  if (dpi->templates == NULL)
+    {
+      d_print_error (dpi);
+      return NULL;
+    }
+	
+  return d_index_template_argument
+    (d_right (dpi->templates->template_decl),
+     dc->u.s_number.number);
+}
+
+/* Returns a template argument pack used in DC (any will do), or NULL.  */
+
+static struct demangle_component *
+d_find_pack (struct d_print_info *dpi,
+	     const struct demangle_component *dc)
+{
+  struct demangle_component *a;
+  if (dc == NULL)
+    return NULL;
+
+  switch (dc->type)
+    {
+    case DEMANGLE_COMPONENT_TEMPLATE_PARAM:
+      a = d_lookup_template_argument (dpi, dc);
+      if (a && a->type == DEMANGLE_COMPONENT_TEMPLATE_ARGLIST)
+	return a;
+      return NULL;
+
+    case DEMANGLE_COMPONENT_PACK_EXPANSION:
+      return NULL;
+      
+    case DEMANGLE_COMPONENT_NAME:
+    case DEMANGLE_COMPONENT_OPERATOR:
+    case DEMANGLE_COMPONENT_BUILTIN_TYPE:
+    case DEMANGLE_COMPONENT_SUB_STD:
+    case DEMANGLE_COMPONENT_CHARACTER:
+      return NULL;
+
+    case DEMANGLE_COMPONENT_EXTENDED_OPERATOR:
+      return d_find_pack (dpi, dc->u.s_extended_operator.name);
+    case DEMANGLE_COMPONENT_CTOR:
+      return d_find_pack (dpi, dc->u.s_ctor.name);
+    case DEMANGLE_COMPONENT_DTOR:
+      return d_find_pack (dpi, dc->u.s_dtor.name);
+
+    default:
+      a = d_find_pack (dpi, d_left (dc));
+      if (a)
+	return a;
+      return d_find_pack (dpi, d_right (dc));
+    }
+}
+
+/* Returns the length of the template argument pack DC.  */
+
+static int
+d_pack_length (const struct demangle_component *dc)
+{
+  int count = 0;
+  while (dc && dc->type == DEMANGLE_COMPONENT_TEMPLATE_ARGLIST
+	 && d_left (dc) != NULL)
+    {
+      ++count;
+      dc = d_right (dc);
+    }
+  return count;
+}
+
+/* DC is a component of a mangled expression.  Print it, wrapped in parens
+   if needed.  */
+
+static void
+d_print_subexpr (struct d_print_info *dpi,
+		 const struct demangle_component *dc)
+{
+  int simple = 0;
+  if (dc->type == DEMANGLE_COMPONENT_NAME)
+    simple = 1;
+  if (!simple)
+    d_append_char (dpi, '(');
+  d_print_comp (dpi, dc);
+  if (!simple)
+    d_append_char (dpi, ')');
+}
+
 /* Subroutine to handle components.  */
 
 static void
@@ -3153,30 +3418,13 @@
 
     case DEMANGLE_COMPONENT_TEMPLATE_PARAM:
       {
-	long i;
-	struct demangle_component *a;
 	struct d_print_template *hold_dpt;
+	struct demangle_component *a = d_lookup_template_argument (dpi, dc);
 
-	if (dpi->templates == NULL)
-	  {
-	    d_print_error (dpi);
-	    return;
-	  }
-	i = dc->u.s_number.number;
-	for (a = d_right (dpi->templates->template_decl);
-	     a != NULL;
-	     a = d_right (a))
-	  {
-	    if (a->type != DEMANGLE_COMPONENT_TEMPLATE_ARGLIST)
-	      {
-		d_print_error (dpi);
-		return;
-	      }
-	    if (i <= 0)
-	      break;
-	    --i;
-	  }
-	if (i != 0 || a == NULL)
+	if (a && a->type == DEMANGLE_COMPONENT_TEMPLATE_ARGLIST)
+	  a = d_index_template_argument (a, dpi->pack_index);
+
+	if (a == NULL)
 	  {
 	    d_print_error (dpi);
 	    return;
@@ -3190,7 +3438,7 @@
 	hold_dpt = dpi->templates;
 	dpi->templates = hold_dpt->next;
 
-	d_print_comp (dpi, d_left (a));
+	d_print_comp (dpi, a);
 
 	dpi->templates = hold_dpt;
 
@@ -3479,7 +3727,8 @@
 
     case DEMANGLE_COMPONENT_ARGLIST:
     case DEMANGLE_COMPONENT_TEMPLATE_ARGLIST:
-      d_print_comp (dpi, d_left (dc));
+      if (d_left (dc) != NULL)
+	d_print_comp (dpi, d_left (dc));
       if (d_right (dc) != NULL)
 	{
 	  d_append_string (dpi, ", ");
@@ -3519,9 +3768,12 @@
 	  d_print_cast (dpi, d_left (dc));
 	  d_append_char (dpi, ')');
 	}
-      d_append_char (dpi, '(');
-      d_print_comp (dpi, d_right (dc));
-      d_append_char (dpi, ')');
+      if (d_left (dc)->type == DEMANGLE_COMPONENT_CAST
+	  && d_right (dc)->type == DEMANGLE_COMPONENT_BUILTIN_TYPE)
+	/* type() -- FIXME what about type(multiple,args) */
+	d_append_string (dpi, "()");
+      else
+	d_print_subexpr (dpi, d_right (dc));
       return;
 
     case DEMANGLE_COMPONENT_BINARY:
@@ -3539,13 +3791,10 @@
 	  && d_left (dc)->u.s_operator.op->name[0] == '>')
 	d_append_char (dpi, '(');
 
-      d_append_char (dpi, '(');
-      d_print_comp (dpi, d_left (d_right (dc)));
-      d_append_string (dpi, ") ");
-      d_print_expr_op (dpi, d_left (dc));
-      d_append_string (dpi, " (");
-      d_print_comp (dpi, d_right (d_right (dc)));
-      d_append_char (dpi, ')');
+      d_print_subexpr (dpi, d_left (d_right (dc)));
+      if (strcmp (d_left (dc)->u.s_operator.op->code, "cl") != 0)
+	d_print_expr_op (dpi, d_left (dc));
+      d_print_subexpr (dpi, d_right (d_right (dc)));
 
       if (d_left (dc)->type == DEMANGLE_COMPONENT_OPERATOR
 	  && d_left (dc)->u.s_operator.op->len == 1
@@ -3566,15 +3815,11 @@
 	  d_print_error (dpi);
 	  return;
 	}
-      d_append_char (dpi, '(');
-      d_print_comp (dpi, d_left (d_right (dc)));
-      d_append_string (dpi, ") ");
+      d_print_subexpr (dpi, d_left (d_right (dc)));
       d_print_expr_op (dpi, d_left (dc));
-      d_append_string (dpi, " (");
-      d_print_comp (dpi, d_left (d_right (d_right (dc))));
-      d_append_string (dpi, ") : (");
-      d_print_comp (dpi, d_right (d_right (d_right (dc))));
-      d_append_char (dpi, ')');
+      d_print_subexpr (dpi, d_left (d_right (d_right (dc))));
+      d_append_string (dpi, " : ");
+      d_print_subexpr (dpi, d_right (d_right (d_right (dc))));
       return;
 
     case DEMANGLE_COMPONENT_TRINARY_ARG1:
@@ -3681,6 +3926,29 @@
       d_append_char (dpi, dc->u.s_character.character);
       return;
 
+    case DEMANGLE_COMPONENT_DECLTYPE:
+      d_append_string (dpi, "decltype (");
+      d_print_comp (dpi, d_left (dc));
+      d_append_char (dpi, ')');
+      return;
+
+    case DEMANGLE_COMPONENT_PACK_EXPANSION:
+      {
+	struct demangle_component *a = d_find_pack (dpi, d_left (dc));
+	int len = d_pack_length (a);
+	int i;
+
+	dc = d_left (dc);
+	for (i = 0; i < len; ++i)
+	  {
+	    dpi->pack_index = i;
+	    d_print_comp (dpi, dc);
+	    if (i < len-1)
+	      d_append_string (dpi, ", ");
+	  }
+      }
+      return;
+
     default:
       d_print_error (dpi);
       return;
diff --git a/libiberty/cp-demangle.h b/libiberty/cp-demangle.h
index 8622f29..aad3743 100644
--- a/libiberty/cp-demangle.h
+++ b/libiberty/cp-demangle.h
@@ -147,7 +147,7 @@
 extern const struct demangle_operator_info cplus_demangle_operators[];
 #endif
 
-#define D_BUILTIN_TYPE_COUNT (26)
+#define D_BUILTIN_TYPE_COUNT (32)
 
 CP_STATIC_IF_GLIBCPP_V3
 const struct demangle_builtin_type_info
diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected
index 2745dd3..d9efbc0 100644
--- a/libiberty/testsuite/demangle-expected
+++ b/libiberty/testsuite/demangle-expected
@@ -3345,7 +3345,7 @@
 #
 --format=gnu-v3 --no-params
 _ZngILi42EEvN1AIXplT_Li2EEE1TE
-void operator-<42>(A<(42) + (2)>::T)
+void operator-<42>(A<(42)+(2)>::T)
 operator-<42>
 #
 --format=gnu-v3 --no-params
@@ -3385,7 +3385,7 @@
 # 
 --format=gnu-v3 --no-params
 _Z3fooILi2EEvRAplT_Li1E_i
-void foo<2>(int (&) [(2) + (1)])
+void foo<2>(int (&) [(2)+(1)])
 foo<2>
 # 
 --format=gnu-v3 --no-params
@@ -3612,13 +3612,13 @@
 # This is from gcc PR 8861
 --format=gnu-v3 --no-params
 _Z1fILi1ELc120EEv1AIXplT_cviLd810000000000000000703DAD7A370C5EEE
-void f<1, (char)120>(A<(1) + ((int)((double)[810000000000000000703DAD7A370C5]))>)
+void f<1, (char)120>(A<(1)+((int)((double)[810000000000000000703DAD7A370C5]))>)
 f<1, (char)120>
 #
 # This is also from gcc PR 8861
 --format=gnu-v3 --no-params
 _Z1fILi1EEv1AIXplT_cvingLf3f800000EEE
-void f<1>(A<(1) + ((int)(-((float)[3f800000])))>)
+void f<1>(A<(1)+((int)(-((float)[3f800000])))>)
 f<1>
 #
 # This is from a libstdc++ debug mode patch.
@@ -3643,7 +3643,7 @@
 # confusion with the '>' which ends the template parameters.
 --format=gnu-v3 --no-params
 _Z4dep9ILi3EEvP3fooIXgtT_Li2EEE
-void dep9<3>(foo<((3) > (2))>*)
+void dep9<3>(foo<((3)>(2))>*)
 dep9<3>
 #
 # Watch out for templated version of `operator<'--it needs an extra
@@ -3882,3 +3882,23 @@
 --format=gnu-v3
 _ZGr32_java$Sutil$Siso4217$_properties
 java resource java/util/iso4217.properties
+# decltype/param placeholder test
+--format=gnu-v3
+_Z3addIidEDTplsTT_sTT0_ES0_S1_
+decltype ((int)+(double)) add<int, double>(int, double)
+# decltype/fn call test
+--format=gnu-v3
+_Z4add3IidEDTclL_Z1gEsTT_sTT0_EES0_S1_
+decltype (g(int, double)) add3<int, double>(int, double)
+# new (2008) built in types test
+--format=gnu-v3
+_Z1fDfDdDeDhDsDi
+f(decimal32, decimal64, decimal128, half, char16_t, char32_t)
+# pack expansion test
+--format=gnu-v3
+_Z1fIIPiPfPdEEvDpT_
+void f<int*, float*, double*>(int*, float*, double*)
+# '.' test
+--format=gnu-v3
+_Z1hI1AIiEdEDTcldtsTT_1gIT0_EEES2_S3_
+decltype (((A<int>).(g<double>))()) h<A<int>, double>(A<int>, double)
diff --git a/libiberty/xstrdup.c b/libiberty/xstrdup.c
index 9ac2ea0..fa12c96 100644
--- a/libiberty/xstrdup.c
+++ b/libiberty/xstrdup.c
@@ -13,10 +13,10 @@
 
 */
 
-#include <sys/types.h>
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
+#include <sys/types.h>
 #ifdef HAVE_STRING_H
 #include <string.h>
 #else
diff --git a/libtool.m4 b/libtool.m4
index 26a039a..39ba996 100644
--- a/libtool.m4
+++ b/libtool.m4
@@ -1,45 +1,43 @@
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
-#
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
 m4_define([_LT_COPYING], [dnl
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 ])
 
-# serial 53 LT_INIT
+# serial 56 LT_INIT
 
 
 # LT_PREREQ(VERSION)
@@ -53,12 +51,25 @@
        [$2])])
 
 
+# _LT_CHECK_BUILDDIR
+# ------------------
+# Complain if the absolute build directory name contains unusual characters
+m4_defun([_LT_CHECK_BUILDDIR],
+[case `pwd` in
+  *\ * | *\	*)
+    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+esac
+])
+
+
 # LT_INIT([OPTIONS])
 # ------------------
 AC_DEFUN([LT_INIT],
 [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
 AC_BEFORE([$0], [LT_LANG])dnl
 AC_BEFORE([$0], [LT_OUTPUT])dnl
+AC_BEFORE([$0], [LTDL_INIT])dnl
+m4_require([_LT_CHECK_BUILDDIR])dnl
 
 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
@@ -68,8 +79,11 @@
 AC_REQUIRE([LTOPTIONS_VERSION])dnl
 AC_REQUIRE([LTSUGAR_VERSION])dnl
 AC_REQUIRE([LTVERSION_VERSION])dnl
+AC_REQUIRE([LTOBSOLETE_VERSION])dnl
 m4_require([_LT_PROG_LTMAIN])dnl
-m4_require([_LT_SET_OPTIONS], [_LT_SET_OPTIONS([$1])])dnl
+
+dnl Parse OPTIONS
+_LT_SET_OPTIONS([$0], [$1])
 
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
@@ -82,7 +96,7 @@
 
 # Only expand once:
 m4_define([LT_INIT])
-])# _LT_INIT
+])# LT_INIT
 
 # Old names:
 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
@@ -141,9 +155,7 @@
 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
 dnl
 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-AC_REQUIRE([AC_OBJEXT])dnl
 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-AC_REQUIRE([AC_EXEEXT])dnl
 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
 dnl
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
@@ -368,12 +380,12 @@
 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
 # ---------------------------------------------------
 m4_define([lt_decl_varnames_tagged],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
-     m4_quote(m4_if([$2], [],
-		     m4_quote(lt_decl_tag_varnames),
-		  m4_quote(m4_shift($@)))),
-     m4_split(m4_normalize(m4_quote(_LT_TAGS))))])
-m4_define([_lt_decl_varnames_tagged], [lt_combine([$1], [$2], [_], $3)])
+[m4_assert([$# <= 2])dnl
+_$0(m4_quote(m4_default([$1], [[, ]])),
+    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
+    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
+m4_define([_lt_decl_varnames_tagged],
+[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
 
 
 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
@@ -589,7 +601,7 @@
 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
 configured by $[0], generated by m4_PACKAGE_STRING.
 
-Copyright (C) 2007 Free Software Foundation, Inc.
+Copyright (C) 2008 Free Software Foundation, Inc.
 This config.lt script is free software; the Free Software Foundation
 gives unlimited permision to copy, distribute and modify it."
 
@@ -606,10 +618,10 @@
       lt_cl_silent=: ;;
 
     -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try `$[0] --help' for more information.]) ;;
+Try \`$[0] --help' for more information.]) ;;
 
     *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try `$[0] --help for more information.]) ;;
+Try \`$[0] --help' for more information.]) ;;
   esac
   shift
 done
@@ -671,7 +683,7 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
@@ -871,9 +883,133 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 ])# _LT_LINKER_BOILERPLATE
 
+# _LT_REQUIRED_DARWIN_CHECKS
+# -------------------------
+m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+  case $host_os in
+    rhapsody* | darwin*)
+    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+    AC_CHECK_TOOL([LIPO], [lipo], [:])
+    AC_CHECK_TOOL([OTOOL], [otool], [:])
+    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+    _LT_DECL([], [DSYMUTIL], [1],
+      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+    _LT_DECL([], [NMEDIT], [1],
+      [Tool to change global to local symbols on Mac OS X])
+    _LT_DECL([], [LIPO], [1],
+      [Tool to manipulate fat objects and archives on Mac OS X])
+    _LT_DECL([], [OTOOL], [1],
+      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+    _LT_DECL([], [OTOOL64], [1],
+      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+
+    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+      [lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&AS_MESSAGE_LOG_FD
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi])
+    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+      [lt_cv_ld_exported_symbols_list],
+      [lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+	[lt_cv_ld_exported_symbols_list=yes],
+	[lt_cv_ld_exported_symbols_list=no])
+	LDFLAGS="$save_LDFLAGS"
+    ])
+    case $host_os in
+    rhapsody* | darwin1.[[012]])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[[012]]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+])
+
+
+# _LT_DARWIN_LINKER_FEATURES
+# --------------------------
+# Checks for linker and compiler features on darwin
+m4_defun([_LT_DARWIN_LINKER_FEATURES],
+[
+  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+  _LT_TAGVAR(hardcode_direct, $1)=no
+  _LT_TAGVAR(hardcode_automatic, $1)=yes
+  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+  _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+  _LT_TAGVAR(link_all_deplibs, $1)=yes
+  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+    m4_if([$1], [CXX],
+[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+    fi
+],[])
+  else
+  _LT_TAGVAR(ld_shlibs, $1)=no
+  fi
+])
 
 # _LT_SYS_MODULE_PATH_AIX
 # -----------------------
@@ -1075,8 +1211,7 @@
 # _LT_ENABLE_LOCK
 # ---------------
 m4_defun([_LT_ENABLE_LOCK],
-[AC_REQUIRE([AC_OBJEXT])dnl
-AC_ARG_ENABLE([libtool-lock],
+[AC_ARG_ENABLE([libtool-lock],
   [AS_HELP_STRING([--disable-libtool-lock],
     [avoid locking (might break parallel builds)])])
 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
@@ -1202,7 +1337,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -1234,7 +1373,7 @@
     [Commands used to install an old-style archive])
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -1261,8 +1400,7 @@
 # ----------------------------------------------------------------
 # Check whether the given compiler option works
 AC_DEFUN([_LT_COMPILER_OPTION],
-[AC_REQUIRE([AC_OBJEXT])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_DECL_SED])dnl
 AC_CACHE_CHECK([$1], [$2],
   [$2=no
@@ -1335,7 +1473,7 @@
        $2=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 ])
 
@@ -1378,7 +1516,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -1439,8 +1577,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -1546,10 +1684,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -1565,7 +1699,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }]
 _LT_EOF
   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
@@ -1604,7 +1738,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -1628,7 +1762,7 @@
     AC_CHECK_FUNC([shl_load],
 	  [lt_cv_dlopen="shl_load"],
       [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
+	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
 	[AC_CHECK_FUNC([dlopen],
 	      [lt_cv_dlopen="dlopen"],
 	  [AC_CHECK_LIB([dl], [dlopen],
@@ -1636,7 +1770,7 @@
 	    [AC_CHECK_LIB([svld], [dlopen],
 		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
 	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
+		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
 	      ])
 	    ])
 	  ])
@@ -1714,8 +1848,7 @@
 # Check to see if options -c and -o are simultaneously supported by compiler.
 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
 m4_defun([_LT_COMPILER_C_O],
-[AC_REQUIRE([AC_OBJEXT])dnl
-m4_require([_LT_DECL_SED])dnl
+[m4_require([_LT_DECL_SED])dnl
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_TAG_COMPILER])dnl
 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
@@ -1902,16 +2035,12 @@
 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
 m4_require([_LT_DECL_EGREP])dnl
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_OBJDUMP])dnl
 m4_require([_LT_DECL_SED])dnl
 AC_MSG_CHECKING([dynamic linker characteristics])
-m4_case([$1],
-	[C], [withGCC=$GCC],
-	[CXX], [withGCC=$GXX],
-	[F77], [withGCC=$G77],
-	[FC], [withGCC=$ac_cv_fc_compiler_gnu],
-	[GCJ], [withGCC=$GCC],
-	[], [withGCC=$GCC
-if test "$withGCC" = yes; then
+m4_if([$1],
+	[], [
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -1961,8 +2090,7 @@
   sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
 else
   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi],
-[withGCC=$GCC])
+fi])
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
@@ -2038,13 +2166,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -2067,14 +2200,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -2097,7 +2230,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -2140,7 +2273,7 @@
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
 m4_if([$1], [],[
-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) 
+  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -2321,13 +2454,13 @@
   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
-  # Some binutils ld are patched to set DT_RUNPATH 
+  # Some binutils ld are patched to set DT_RUNPATH
   save_LDFLAGS=$LDFLAGS
   save_libdir=$libdir
   eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
        LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
   AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
-    [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"],
+    [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
        [shlibpath_overrides_runpath=yes])])
   LDFLAGS=$save_LDFLAGS
   libdir=$save_libdir
@@ -2339,7 +2472,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -2523,7 +2656,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -2548,6 +2681,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 _LT_DECL([], [variables_saved_for_relink], [1],
     [Variables whose values should be saved in libtool wrapper scripts and
     restored at link time])
@@ -2817,6 +2957,7 @@
 #  -- PORTME fill in with the dynamic library characteristics
 m4_defun([_LT_CHECK_MAGIC_METHOD],
 [m4_require([_LT_DECL_EGREP])
+m4_require([_LT_DECL_OBJDUMP])
 AC_CACHE_CHECK([how to recognize dependent libraries],
 lt_cv_deplibs_check_method,
 [lt_cv_file_magic_cmd='$MAGIC_CMD'
@@ -2867,6 +3008,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -3019,7 +3166,6 @@
 # find the pathname to a BSD- or MS-compatible name lister
 AC_DEFUN([LT_PATH_NM],
 [AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_OBJEXT])dnl
 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
 [if test -n "$NM"; then
   # Let the user override the test.
@@ -3155,7 +3301,6 @@
 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
 AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_OBJEXT])dnl
 AC_REQUIRE([LT_PATH_NM])dnl
 AC_REQUIRE([LT_PATH_LD])dnl
 m4_require([_LT_DECL_SED])dnl
@@ -3180,7 +3325,7 @@
 aix*)
   symcode='[[BCDT]]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[[ABCDGISTW]]'
   ;;
 hpux*)
@@ -3224,6 +3369,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -3351,7 +3497,7 @@
     echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -3377,6 +3523,9 @@
 _LT_DECL([global_symbol_to_c_name_address],
     [lt_cv_sys_global_symbol_to_c_name_address], [1],
     [Transform the output of nm in a C name address pair])
+_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+    [Transform the output of nm in a C name address pair when lib prefix is needed])
 ]) # _LT_CMD_GLOBAL_SYMBOLS
 
 
@@ -3403,18 +3552,26 @@
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
       ;;
+
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
+
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
-    mingw* | cygwin* | os2* | pw32*)
+    mingw* | cygwin* | os2* | pw32* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -3441,10 +3598,11 @@
       fi
       ;;
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	;;
       *)
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
@@ -3479,16 +3637,6 @@
 	  ;;
 	esac
 	;;
-      darwin*)
-        # PIC is the default on this platform
-        # Common symbols not allowed in MH_DYLIB files
-        case $cc_basename in
-          xlc*)
-          _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
-          _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-          ;;
-        esac
-        ;;
       dgux*)
 	case $cc_basename in
 	  ec++*)
@@ -3552,13 +3700,20 @@
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
 	    ;;
-	  icpc* | ecpc* )
-	    # Intel C++
+	  ecpc* )
+	    # old Intel C++ for x86_64 which still supported -KPIC.
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
 	    ;;
-	  pgCC*)
+	  icpc* )
+	    # Intel C++, used to be incompatible with GCC.
+	    # ICC 10 doesn't accept -KPIC any more.
+	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+	    ;;
+	  pgCC* | pgcpp*)
 	    # Portland Group C++ compiler
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
@@ -3571,6 +3726,12 @@
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
 	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
 	    ;;
+	  xlc* | xlC*)
+	    # IBM XL 8.0 on PPC
+	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+	    ;;
 	  *)
 	    case `$CC -V 2>&1 | sed 5q` in
 	    *Sun\ C*)
@@ -3699,19 +3860,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -3727,10 +3894,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -3779,18 +3947,8 @@
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
-        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       m4_if([$1], [GCJ], [],
@@ -3821,11 +3979,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -3838,6 +4010,12 @@
         # All Alpha code is PIC.
         _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -3948,7 +4126,7 @@
 #
 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
   _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
-    [_LT_TAGVAR(lt_prog_compiler_pic_works, $1)],
+    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
     [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
     [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
      "" | " "*) ;;
@@ -3965,7 +4143,7 @@
 #
 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
-  _LT_TAGVAR(lt_prog_compiler_static_works, $1),
+  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
   $lt_tmp_static_flag,
   [],
   [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
@@ -4001,13 +4179,14 @@
   pw32*)
     _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
   ;;
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   *)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   esac
+  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
 ], [
   runpath_var=
   _LT_TAGVAR(allow_undefined_flag, $1)=
@@ -4041,16 +4220,18 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  _LT_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
+  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -4112,19 +4293,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-        _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      _LT_TAGVAR(ld_shlibs, $1)=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+        ;;
+      m68k)
+            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -4138,7 +4318,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
       # as there is no search path for DLLs.
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
@@ -4189,6 +4369,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -4203,6 +4384,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
+	  tmp_sharedflag='--shared' ;;
+	xl[[cC]]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -4211,8 +4398,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -4222,6 +4407,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         _LT_TAGVAR(ld_shlibs, $1)=no
       fi
@@ -4417,6 +4618,7 @@
 	fi
       fi
 
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       _LT_TAGVAR(always_export_symbols, $1)=yes
@@ -4453,20 +4655,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-        _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      _LT_TAGVAR(ld_shlibs, $1)=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+        ;;
+      m68k)
+            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+        ;;
+      esac
       ;;
 
     bsdi[[45]]*)
       _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -4488,69 +4695,7 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[[012]])
-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[[012]])
-	  _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_direct, $1)=no
-      _LT_TAGVAR(hardcode_automatic, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-      _LT_TAGVAR(whole_archive_flag_spec, $1)=''
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      if test "$GCC" = yes ; then
-	AC_CACHE_VAL([lt_cv_apple_cc_single_mod],
-	[lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi])
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	_LT_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	_LT_TAGVAR(module_expsym_cmds, $1)='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  _LT_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  _LT_TAGVAR(module_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	  ;;
-	esac
-      fi
+      _LT_DARWIN_LINKER_FEATURES($1)
       ;;
 
     dgux*)
@@ -4632,7 +4777,7 @@
 	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -4719,25 +4864,29 @@
       ;;
 
     openbsd*)
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      else
-        case $host_os in
-	openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	_LT_TAGVAR(hardcode_direct, $1)=yes
+	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+	     ;;
+	   *)
+	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	_LT_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
 
@@ -5413,6 +5562,7 @@
           fi
         fi
 
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
         # It seems that -bexpall does not export symbols beginning with
         # underscore (_), so it is better to generate a list of symbols to
 	# export.
@@ -5471,7 +5621,7 @@
         esac
         ;;
 
-      cygwin* | mingw* | pw32*)
+      cygwin* | mingw* | pw32* | cegcc*)
         # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
         # as there is no search path for DLLs.
         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
@@ -5495,71 +5645,7 @@
         fi
         ;;
       darwin* | rhapsody*)
-	case $host_os in
-	  rhapsody* | darwin1.[[012]])
-	    _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
-	    ;;
-	  *) # Darwin 1.3 on
-	    case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	      10.[[012]])
-		_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-		;;
-	      10.*)
-		_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
-		;;
-	    esac
-	    ;;
-	esac
-	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	_LT_TAGVAR(hardcode_direct, $1)=no
-	_LT_TAGVAR(hardcode_automatic, $1)=yes
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-	_LT_TAGVAR(whole_archive_flag_spec, $1)=''
-	_LT_TAGVAR(link_all_deplibs, $1)=yes
-
-	if test "$GXX" = yes ; then
-	  AC_CACHE_VAL([lt_cv_apple_cc_single_mod],
-	  [lt_cv_apple_cc_single_mod=no
-	  if test -z "${LT_MULTI_MODULE}"; then
-	    # By default we will add the -single_module flag. You can override
-	    # by either setting the environment variable LT_MULTI_MODULE
-	    # non-empty at configure time, or by adding -multi-module to the
-	    # link flags.
-	    echo "int foo(void){return 1;}" > conftest.c
-	    $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-		-dynamiclib ${wl}-single_module conftest.c
-	    if test -f libconftest.dylib; then
-		lt_cv_apple_cc_single_mod=yes
-		rm libconftest.dylib
-	    fi
-	    rm conftest.$ac_ext
-	  fi])
-	  output_verbose_link_cmd=echo
-	  if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	   _LT_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  else
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  fi
-	  _LT_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  _LT_TAGVAR(module_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  case $cc_basename in
-	    xlc*)
-	      output_verbose_link_cmd=echo
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO "$rpath/$soname"` $verstring'
-	      _LT_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	      # Don't fix this by using the ld -exported_symbols_list flag,
-	      # it doesn't exist in older darwin lds
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	      _LT_TAGVAR(module_expsym_cmds, $1)='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	      ;;
-	    *)
-	      _LT_TAGVAR(ld_shlibs, $1)=no
-	      ;;
-	  esac
-	fi
+        _LT_DARWIN_LINKER_FEATURES($1)
 	;;
 
       dgux*)
@@ -5807,10 +5893,10 @@
 	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
 	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
 	    ;;
-          pgCC*)
+          pgCC* | pgcpp*)
             # Portland Group C++ compiler
 	    case `$CC -V` in
-	    *pgCC\ [[1-5]]*)
+	    *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
 	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
 		rm -rf $tpldir~
 		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -5858,6 +5944,18 @@
 	    # dependencies.
 	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
 	    ;;
+	  xl*)
+	    # IBM XL 8.0 on PPC, with GNU ld
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	    if test "x$supports_anon_versioning" = xyes; then
+	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+		echo "local: *; };" >> $output_objdir/$libname.ver~
+		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+	    fi
+	    ;;
 	  *)
 	    case `$CC -V 2>&1 | sed 5q` in
 	    *Sun\ C*)
@@ -5930,17 +6028,21 @@
 	;;
 
       openbsd*)
-	_LT_TAGVAR(hardcode_direct, $1)=yes
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+	if test -f /usr/libexec/ld.so; then
+	  _LT_TAGVAR(hardcode_direct, $1)=yes
+	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+	  fi
+	  output_verbose_link_cmd=echo
+	else
+	  _LT_TAGVAR(ld_shlibs, $1)=no
 	fi
-	output_verbose_link_cmd=echo
 	;;
 
       osf3* | osf4* | osf5*)
@@ -6302,12 +6404,7 @@
   # the conftest object file.
   pre_test_object_deps_done=no
 
-  # The `*' in the case matches for architectures that use `case' in
-  # $output_verbose_cmd can trigger glob expansion during the loop
-  # eval without this substitution.
-  output_verbose_link_cmd=`$ECHO "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
-
-  for p in `eval $output_verbose_link_cmd`; do
+  for p in `eval "$output_verbose_link_cmd"`; do
     case $p in
 
     -L* | -R* | -l*)
@@ -6442,6 +6539,12 @@
 case " $_LT_TAGVAR(postdeps, $1) " in
 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
 esac
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+    [The directories searched by this compiler when creating a shared library])
 _LT_TAGDECL([], [predep_objects], [1],
     [Dependencies to place before and after the objects being linked to
     create a shared library])
@@ -6536,11 +6639,12 @@
 
   # Allow CC to be a program name with arguments.
   lt_save_CC="$CC"
+  lt_save_GCC=$GCC
   CC=${F77-"f77"}
   compiler=$CC
   _LT_TAGVAR(compiler, $1)=$CC
   _LT_CC_BASENAME([$compiler])
-
+  GCC=$G77
   if test -n "$compiler"; then
     AC_MSG_CHECKING([if libtool supports shared libraries])
     AC_MSG_RESULT([$can_build_shared])
@@ -6588,6 +6692,7 @@
     _LT_CONFIG($1)
   fi # test -n "$compiler"
 
+  GCC=$lt_save_GCC
   CC="$lt_save_CC"
 fi # test "$_lt_disable_F77" != yes
 
@@ -6677,8 +6782,11 @@
 
   # Allow CC to be a program name with arguments.
   lt_save_CC="$CC"
+  lt_save_GCC=$GCC
   CC=${FC-"f95"}
   compiler=$CC
+  GCC=$ac_cv_fc_compiler_gnu
+
   _LT_TAGVAR(compiler, $1)=$CC
   _LT_CC_BASENAME([$compiler])
 
@@ -6730,6 +6838,7 @@
     _LT_CONFIG($1)
   fi # test -n "$compiler"
 
+  GCC=$lt_save_GCC
   CC="$lt_save_CC"
 fi # test "$_lt_disable_FC" != yes
 
@@ -6768,9 +6877,12 @@
 
 # Allow CC to be a program name with arguments.
 lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=yes
 CC=${GCJ-"gcj"}
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
+_LT_TAGVAR(LD, $1)="$LD"
 _LT_CC_BASENAME([$compiler])
 
 # GCJ did not exist at the time GCC didn't implicitly link libc in.
@@ -6788,13 +6900,14 @@
   _LT_COMPILER_C_O($1)
   _LT_COMPILER_FILE_LOCKS($1)
   _LT_LINKER_SHLIBS($1)
-  _LT_SYS_DYNAMIC_LINKER($1)
   _LT_LINKER_HARDCODE_LIBPATH($1)
 
   _LT_CONFIG($1)
 fi
 
 AC_LANG_RESTORE
+
+GCC=$lt_save_GCC
 CC="$lt_save_CC"
 ])# _LT_LANG_GCJ_CONFIG
 
@@ -6830,6 +6943,8 @@
 
 # Allow CC to be a program name with arguments.
 lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=
 CC=${RC-"windres"}
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
@@ -6841,6 +6956,7 @@
   _LT_CONFIG($1)
 fi
 
+GCC=$lt_save_GCC
 AC_LANG_RESTORE
 CC="$lt_save_CC"
 ])# _LT_LANG_RC_CONFIG
@@ -6890,6 +7006,18 @@
 ])
 
 
+# _LT_DECL_OBJDUMP
+# --------------
+# If we don't have a new enough Autoconf to choose the best objdump
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_OBJDUMP],
+[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+AC_SUBST([OBJDUMP])
+])
+
+
 # _LT_DECL_SED
 # ------------
 # Check for a fully-functional sed program, that truncates
@@ -6983,7 +7111,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 AC_MSG_RESULT([$xsi_shell])
 _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
@@ -7027,6 +7157,7 @@
 [case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -7044,6 +7175,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -7073,10 +7225,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $[*] ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -7097,6 +7270,10 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+dnl func_dirname_and_basename
+dnl A portable version of this function is already defined in general.m4sh
+dnl so there is no need for it here.
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -7129,6 +7306,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$[@]"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -7153,6 +7350,7 @@
 {
   eval "$[1]=\$$[1]\$[2]"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/ltgcc.m4 b/ltgcc.m4
index fb7b6ee..844e2bc 100644
--- a/ltgcc.m4
+++ b/ltgcc.m4
@@ -30,6 +30,7 @@
 _LT_LINKER_BOILERPLATE
 
 # Allow CC to be a program name with arguments.
+GCC=yes
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
 _LT_CC_BASENAME([$compiler])
@@ -49,7 +50,6 @@
   _LT_COMPILER_C_O($1)
   _LT_COMPILER_FILE_LOCKS($1)
   _LT_LINKER_SHLIBS($1)
-  _LT_SYS_DYNAMIC_LINKER($1)
   _LT_LINKER_HARDCODE_LIBPATH($1)
 
   _LT_CONFIG($1)
diff --git a/ltmain.sh b/ltmain.sh
index 8ee3afc..8dfa0b3 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -1,30 +1,32 @@
-# Generated from ltmain.m4sh; do not edit by hand
+# Generated from ltmain.m4sh.
 
-# ltmain.sh (GNU libtool 1.2435 2007/03/18 18:44:42) 2.1a
+# ltmain.sh (GNU libtool) 2.2.6
 # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.
 # This is free software; see the source for copying conditions.  There is NO
 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
-# This program is free software; you can redistribute it and/or modify
+# GNU Libtool 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
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 # Usage: $progname [OPTION]... [MODE-ARG]...
 #
@@ -63,7 +65,7 @@
 #       compiler:		$LTCC
 #       compiler flags:		$LTCFLAGS
 #       linker:		$LD (gnu? $with_gnu_ld)
-#       $progname:		(GNU libtool 1.2435 2007/03/18 18:44:42) 2.1a
+#       $progname:		(GNU libtool) 2.2.6
 #       automake:		$automake_version
 #       autoconf:		$autoconf_version
 #
@@ -71,9 +73,9 @@
 
 PROGRAM=ltmain.sh
 PACKAGE=libtool
-VERSION=2.1a
-TIMESTAMP=" 1.2435 2007/03/18 18:44:42"
-package_revision=1.2435
+VERSION=2.2.6
+TIMESTAMP=""
+package_revision=1.3012
 
 # Be Bourne compatible
 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
@@ -93,12 +95,16 @@
 # Only set LANG and LC_ALL to C if already set.
 # These must not be set unconditionally because not all systems understand
 # e.g. LANG=C (notably SCO).
-for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+lt_user_locale=
+lt_safe_locale=
+for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
 do
   eval "if test \"\${$lt_var+set}\" = set; then
           save_$lt_var=\$$lt_var
           $lt_var=C
 	  export $lt_var
+	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
+	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
 	fi"
 done
 
@@ -110,15 +116,15 @@
 
 : ${CP="cp -f"}
 : ${ECHO="echo"}
-: ${EGREP="/bin/grep -E"}
-: ${FGREP="/bin/grep -F"}
-: ${GREP="/bin/grep"}
+: ${EGREP="/usr/bin/grep -E"}
+: ${FGREP="/usr/bin/grep -F"}
+: ${GREP="/usr/bin/grep"}
 : ${LN_S="ln -s"}
 : ${MAKE="make"}
 : ${MKDIR="mkdir"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
-: ${SED="/bin/sed"}
+: ${SED="/opt/local/bin/gsed"}
 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
 : ${Xsed="$SED -e 1s/^X//"}
 
@@ -138,6 +144,32 @@
 dirname="s,/[^/]*$,,"
 basename="s,^.*/,,"
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  # Extract subdirectory from the argument.
+  func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+  if test "X$func_dirname_result" = "X${1}"; then
+    func_dirname_result="${3}"
+  else
+    func_dirname_result="$func_dirname_result${2}"
+  fi
+  func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+# Generated shell functions inserted here.
+
 # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
 # is ksh but when the shell is invoked as "sh" and the current value of
 # the _XPG environment variable is not equal to 1 (one), the special
@@ -148,13 +180,17 @@
 # The name of this program:
 # In the unlikely event $progname began with a '-', it would play havoc with
 # func_echo (imagine progname=-n), so we prepend ./ in that case:
-progname=`$ECHO "X$progpath" | $Xsed -e "$basename" -e 's,^-,./-,'`
+func_dirname_and_basename "$progpath"
+progname=$func_basename_result
+case $progname in
+  -*) progname=./$progname ;;
+esac
 
 # Make sure we have an absolute path for reexecution:
 case $progpath in
   [\\/]*|[A-Za-z]:\\*) ;;
   *[\\/]*)
-     progdir=`$ECHO "X$progpath" | $Xsed -e "$dirname"`
+     progdir=$func_dirname_result
      progdir=`cd "$progdir" && pwd`
      progpath="$progdir/$progname"
      ;;
@@ -200,13 +236,14 @@
 opt_help=false
 opt_quiet=false
 opt_verbose=false
+opt_warning=:
 
 # func_echo arg...
 # Echo program name prefixed message, along with the current mode
 # name if it has been set yet.
 func_echo ()
 {
-    $ECHO "$progname${mode+: }$mode: "${1+"$@"}
+    $ECHO "$progname${mode+: }$mode: $*"
 }
 
 # func_verbose arg...
@@ -232,7 +269,10 @@
 # Echo program name prefixed warning message to standard error.
 func_warning ()
 {
-    $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2
+    $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2
+
+    # bash bug again:
+    :
 }
 
 # func_fatal_error arg...
@@ -423,6 +463,32 @@
 }
 
 
+# func_show_eval_locale cmd [fail_exp]
+# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
+# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.  Use the saved locale for evaluation.
+func_show_eval_locale ()
+{
+    my_cmd="$1"
+    my_fail_exp="${2-:}"
+
+    ${opt_silent-false} || {
+      func_quote_for_expand "$my_cmd"
+      eval "func_echo $func_quote_for_expand_result"
+    }
+
+    if ${opt_dry_run-false}; then :; else
+      eval "$lt_user_locale
+	    $my_cmd"
+      my_status=$?
+      eval "$lt_safe_locale"
+      if test "$my_status" -eq 0; then :; else
+	eval "(exit $my_status); $my_fail_exp"
+      fi
+    fi
+}
+
+
 
 
 
@@ -515,7 +581,7 @@
 fi
 
 magic="%%%MAGIC variable%%%"
-
+magic_exe="%%%MAGIC EXE variable%%%"
 
 # Global variables.
 # $mode is unset
@@ -626,6 +692,761 @@
   esac
 }
 
+# Parse options once, thoroughly.  This comes as soon as possible in
+# the script to make things like `libtool --version' happen quickly.
+{
+
+  # Shorthand for --mode=foo, only valid as the first argument
+  case $1 in
+  clean|clea|cle|cl)
+    shift; set dummy --mode clean ${1+"$@"}; shift
+    ;;
+  compile|compil|compi|comp|com|co|c)
+    shift; set dummy --mode compile ${1+"$@"}; shift
+    ;;
+  execute|execut|execu|exec|exe|ex|e)
+    shift; set dummy --mode execute ${1+"$@"}; shift
+    ;;
+  finish|finis|fini|fin|fi|f)
+    shift; set dummy --mode finish ${1+"$@"}; shift
+    ;;
+  install|instal|insta|inst|ins|in|i)
+    shift; set dummy --mode install ${1+"$@"}; shift
+    ;;
+  link|lin|li|l)
+    shift; set dummy --mode link ${1+"$@"}; shift
+    ;;
+  uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+    shift; set dummy --mode uninstall ${1+"$@"}; shift
+    ;;
+  esac
+
+  # Parse non-mode specific arguments:
+  while test "$#" -gt 0; do
+    opt="$1"
+    shift
+
+    case $opt in
+      --config)		func_config					;;
+
+      --debug)		preserve_args="$preserve_args $opt"
+			func_echo "enabling shell trace mode"
+			opt_debug='set -x'
+			$opt_debug
+			;;
+
+      -dlopen)		test "$#" -eq 0 && func_missing_arg "$opt" && break
+			execute_dlfiles="$execute_dlfiles $1"
+			shift
+			;;
+
+      --dry-run | -n)	opt_dry_run=:					;;
+      --features)       func_features					;;
+      --finish)		mode="finish"					;;
+
+      --mode)		test "$#" -eq 0 && func_missing_arg "$opt" && break
+			case $1 in
+			  # Valid mode arguments:
+			  clean)	;;
+			  compile)	;;
+			  execute)	;;
+			  finish)	;;
+			  install)	;;
+			  link)		;;
+			  relink)	;;
+			  uninstall)	;;
+
+			  # Catch anything else as an error
+			  *) func_error "invalid argument for $opt"
+			     exit_cmd=exit
+			     break
+			     ;;
+		        esac
+
+			mode="$1"
+			shift
+			;;
+
+      --preserve-dup-deps)
+			opt_duplicate_deps=:				;;
+
+      --quiet|--silent)	preserve_args="$preserve_args $opt"
+			opt_silent=:
+			;;
+
+      --verbose| -v)	preserve_args="$preserve_args $opt"
+			opt_silent=false
+			;;
+
+      --tag)		test "$#" -eq 0 && func_missing_arg "$opt" && break
+			preserve_args="$preserve_args $opt $1"
+			func_enable_tag "$1"	# tagname is set here
+			shift
+			;;
+
+      # Separate optargs to long options:
+      -dlopen=*|--mode=*|--tag=*)
+			func_opt_split "$opt"
+			set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}
+			shift
+			;;
+
+      -\?|-h)		func_usage					;;
+      --help)		opt_help=:					;;
+      --version)	func_version					;;
+
+      -*)		func_fatal_help "unrecognized option \`$opt'"	;;
+
+      *)		nonopt="$opt"
+			break
+			;;
+    esac
+  done
+
+
+  case $host in
+    *cygwin* | *mingw* | *pw32* | *cegcc*)
+      # don't eliminate duplications in $postdeps and $predeps
+      opt_duplicate_compiler_generated_deps=:
+      ;;
+    *)
+      opt_duplicate_compiler_generated_deps=$opt_duplicate_deps
+      ;;
+  esac
+
+  # Having warned about all mis-specified options, bail out if
+  # anything was wrong.
+  $exit_cmd $EXIT_FAILURE
+}
+
+# func_check_version_match
+# Ensure that we are using m4 macros, and libtool script from the same
+# release of libtool.
+func_check_version_match ()
+{
+  if test "$package_revision" != "$macro_revision"; then
+    if test "$VERSION" != "$macro_version"; then
+      if test -z "$macro_version"; then
+        cat >&2 <<_LT_EOF
+$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from an older release.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+      else
+        cat >&2 <<_LT_EOF
+$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+      fi
+    else
+      cat >&2 <<_LT_EOF
+$progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
+$progname: but the definition of this LT_INIT comes from revision $macro_revision.
+$progname: You should recreate aclocal.m4 with macros from revision $package_revision
+$progname: of $PACKAGE $VERSION and run autoconf again.
+_LT_EOF
+    fi
+
+    exit $EXIT_MISMATCH
+  fi
+}
+
+
+## ----------- ##
+##    Main.    ##
+## ----------- ##
+
+$opt_help || {
+  # Sanity checks first:
+  func_check_version_match
+
+  if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
+    func_fatal_configuration "not configured to build any kind of library"
+  fi
+
+  test -z "$mode" && func_fatal_error "error: you must specify a MODE."
+
+
+  # Darwin sucks
+  eval std_shrext=\"$shrext_cmds\"
+
+
+  # Only execute mode is allowed to have -dlopen flags.
+  if test -n "$execute_dlfiles" && test "$mode" != execute; then
+    func_error "unrecognized option \`-dlopen'"
+    $ECHO "$help" 1>&2
+    exit $EXIT_FAILURE
+  fi
+
+  # Change the help message to a mode-specific one.
+  generic_help="$help"
+  help="Try \`$progname --help --mode=$mode' for more information."
+}
+
+
+# func_lalib_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_lalib_p ()
+{
+    test -f "$1" &&
+      $SED -e 4q "$1" 2>/dev/null \
+        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+}
+
+# func_lalib_unsafe_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function implements the same check as func_lalib_p without
+# resorting to external programs.  To this end, it redirects stdin and
+# closes it afterwards, without saving the original file descriptor.
+# As a safety measure, use it only where a negative result would be
+# fatal anyway.  Works if `file' does not exist.
+func_lalib_unsafe_p ()
+{
+    lalib_p=no
+    if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
+	for lalib_p_l in 1 2 3 4
+	do
+	    read lalib_p_line
+	    case "$lalib_p_line" in
+		\#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
+	    esac
+	done
+	exec 0<&5 5<&-
+    fi
+    test "$lalib_p" = yes
+}
+
+# func_ltwrapper_script_p file
+# True iff FILE is a libtool wrapper script
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_script_p ()
+{
+    func_lalib_p "$1"
+}
+
+# func_ltwrapper_executable_p file
+# True iff FILE is a libtool wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_executable_p ()
+{
+    func_ltwrapper_exec_suffix=
+    case $1 in
+    *.exe) ;;
+    *) func_ltwrapper_exec_suffix=.exe ;;
+    esac
+    $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
+}
+
+# func_ltwrapper_scriptname file
+# Assumes file is an ltwrapper_executable
+# uses $file to determine the appropriate filename for a
+# temporary ltwrapper_script.
+func_ltwrapper_scriptname ()
+{
+    func_ltwrapper_scriptname_result=""
+    if func_ltwrapper_executable_p "$1"; then
+	func_dirname_and_basename "$1" "" "."
+	func_stripname '' '.exe' "$func_basename_result"
+	func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
+    fi
+}
+
+# func_ltwrapper_p file
+# True iff FILE is a libtool wrapper script or wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_p ()
+{
+    func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
+}
+
+
+# func_execute_cmds commands fail_cmd
+# Execute tilde-delimited COMMANDS.
+# If FAIL_CMD is given, eval that upon failure.
+# FAIL_CMD may read-access the current command in variable CMD!
+func_execute_cmds ()
+{
+    $opt_debug
+    save_ifs=$IFS; IFS='~'
+    for cmd in $1; do
+      IFS=$save_ifs
+      eval cmd=\"$cmd\"
+      func_show_eval "$cmd" "${2-:}"
+    done
+    IFS=$save_ifs
+}
+
+
+# func_source file
+# Source FILE, adding directory component if necessary.
+# Note that it is not necessary on cygwin/mingw to append a dot to
+# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
+# behavior happens only for exec(3), not for open(2)!  Also, sourcing
+# `FILE.' does not work on cygwin managed mounts.
+func_source ()
+{
+    $opt_debug
+    case $1 in
+    */* | *\\*)	. "$1" ;;
+    *)		. "./$1" ;;
+    esac
+}
+
+
+# func_infer_tag arg
+# Infer tagged configuration to use if any are available and
+# if one wasn't chosen via the "--tag" command line option.
+# Only attempt this if the compiler in the base compile
+# command doesn't match the default compiler.
+# arg is usually of the form 'gcc ...'
+func_infer_tag ()
+{
+    $opt_debug
+    if test -n "$available_tags" && test -z "$tagname"; then
+      CC_quoted=
+      for arg in $CC; do
+        func_quote_for_eval "$arg"
+	CC_quoted="$CC_quoted $func_quote_for_eval_result"
+      done
+      case $@ in
+      # Blanks in the command may have been stripped by the calling shell,
+      # but not from the CC environment variable when configure was run.
+      " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;
+      # Blanks at the start of $base_compile will cause this to fail
+      # if we don't check for them as well.
+      *)
+	for z in $available_tags; do
+	  if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
+	    # Evaluate the configuration.
+	    eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+	    CC_quoted=
+	    for arg in $CC; do
+	      # Double-quote args containing other shell metacharacters.
+	      func_quote_for_eval "$arg"
+	      CC_quoted="$CC_quoted $func_quote_for_eval_result"
+	    done
+	    case "$@ " in
+	      " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)
+	      # The compiler in the base compile command matches
+	      # the one in the tagged configuration.
+	      # Assume this is the tagged configuration we want.
+	      tagname=$z
+	      break
+	      ;;
+	    esac
+	  fi
+	done
+	# If $tagname still isn't set, then no tagged configuration
+	# was found and let the user know that the "--tag" command
+	# line option must be used.
+	if test -z "$tagname"; then
+	  func_echo "unable to infer tagged configuration"
+	  func_fatal_error "specify a tag with \`--tag'"
+#	else
+#	  func_verbose "using $tagname tagged configuration"
+	fi
+	;;
+      esac
+    fi
+}
+
+
+
+# func_write_libtool_object output_name pic_name nonpic_name
+# Create a libtool object file (analogous to a ".la" file),
+# but don't create it if we're doing a dry run.
+func_write_libtool_object ()
+{
+    write_libobj=${1}
+    if test "$build_libtool_libs" = yes; then
+      write_lobj=\'${2}\'
+    else
+      write_lobj=none
+    fi
+
+    if test "$build_old_libs" = yes; then
+      write_oldobj=\'${3}\'
+    else
+      write_oldobj=none
+    fi
+
+    $opt_dry_run || {
+      cat >${write_libobj}T <<EOF
+# $write_libobj - a libtool object file
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# Name of the PIC object.
+pic_object=$write_lobj
+
+# Name of the non-PIC object
+non_pic_object=$write_oldobj
+
+EOF
+      $MV "${write_libobj}T" "${write_libobj}"
+    }
+}
+
+# func_mode_compile arg...
+func_mode_compile ()
+{
+    $opt_debug
+    # Get the compilation command and the source file.
+    base_compile=
+    srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
+    suppress_opt=yes
+    suppress_output=
+    arg_mode=normal
+    libobj=
+    later=
+    pie_flag=
+
+    for arg
+    do
+      case $arg_mode in
+      arg  )
+	# do not "continue".  Instead, add this to base_compile
+	lastarg="$arg"
+	arg_mode=normal
+	;;
+
+      target )
+	libobj="$arg"
+	arg_mode=normal
+	continue
+	;;
+
+      normal )
+	# Accept any command-line options.
+	case $arg in
+	-o)
+	  test -n "$libobj" && \
+	    func_fatal_error "you cannot specify \`-o' more than once"
+	  arg_mode=target
+	  continue
+	  ;;
+
+	-pie | -fpie | -fPIE)
+          pie_flag="$pie_flag $arg"
+	  continue
+	  ;;
+
+	-shared | -static | -prefer-pic | -prefer-non-pic)
+	  later="$later $arg"
+	  continue
+	  ;;
+
+	-no-suppress)
+	  suppress_opt=no
+	  continue
+	  ;;
+
+	-Xcompiler)
+	  arg_mode=arg  #  the next one goes into the "base_compile" arg list
+	  continue      #  The current "srcfile" will either be retained or
+	  ;;            #  replaced later.  I would guess that would be a bug.
+
+	-Wc,*)
+	  func_stripname '-Wc,' '' "$arg"
+	  args=$func_stripname_result
+	  lastarg=
+	  save_ifs="$IFS"; IFS=','
+	  for arg in $args; do
+	    IFS="$save_ifs"
+	    func_quote_for_eval "$arg"
+	    lastarg="$lastarg $func_quote_for_eval_result"
+	  done
+	  IFS="$save_ifs"
+	  func_stripname ' ' '' "$lastarg"
+	  lastarg=$func_stripname_result
+
+	  # Add the arguments to base_compile.
+	  base_compile="$base_compile $lastarg"
+	  continue
+	  ;;
+
+	*)
+	  # Accept the current argument as the source file.
+	  # The previous "srcfile" becomes the current argument.
+	  #
+	  lastarg="$srcfile"
+	  srcfile="$arg"
+	  ;;
+	esac  #  case $arg
+	;;
+      esac    #  case $arg_mode
+
+      # Aesthetically quote the previous argument.
+      func_quote_for_eval "$lastarg"
+      base_compile="$base_compile $func_quote_for_eval_result"
+    done # for arg
+
+    case $arg_mode in
+    arg)
+      func_fatal_error "you must specify an argument for -Xcompile"
+      ;;
+    target)
+      func_fatal_error "you must specify a target with \`-o'"
+      ;;
+    *)
+      # Get the name of the library object.
+      test -z "$libobj" && {
+	func_basename "$srcfile"
+	libobj="$func_basename_result"
+      }
+      ;;
+    esac
+
+    # Recognize several different file suffixes.
+    # If the user specifies -o file.o, it is replaced with file.lo
+    case $libobj in
+    *.[cCFSifmso] | \
+    *.ada | *.adb | *.ads | *.asm | \
+    *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
+    *.[fF][09]? | *.for | *.java | *.obj | *.sx)
+      func_xform "$libobj"
+      libobj=$func_xform_result
+      ;;
+    esac
+
+    case $libobj in
+    *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
+    *)
+      func_fatal_error "cannot determine name of library object from \`$libobj'"
+      ;;
+    esac
+
+    func_infer_tag $base_compile
+
+    for arg in $later; do
+      case $arg in
+      -shared)
+	test "$build_libtool_libs" != yes && \
+	  func_fatal_configuration "can not build a shared library"
+	build_old_libs=no
+	continue
+	;;
+
+      -static)
+	build_libtool_libs=no
+	build_old_libs=yes
+	continue
+	;;
+
+      -prefer-pic)
+	pic_mode=yes
+	continue
+	;;
+
+      -prefer-non-pic)
+	pic_mode=no
+	continue
+	;;
+      esac
+    done
+
+    func_quote_for_eval "$libobj"
+    test "X$libobj" != "X$func_quote_for_eval_result" \
+      && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'	 &()|`$[]' \
+      && func_warning "libobj name \`$libobj' may not contain shell special characters."
+    func_dirname_and_basename "$obj" "/" ""
+    objname="$func_basename_result"
+    xdir="$func_dirname_result"
+    lobj=${xdir}$objdir/$objname
+
+    test -z "$base_compile" && \
+      func_fatal_help "you must specify a compilation command"
+
+    # Delete any leftover library objects.
+    if test "$build_old_libs" = yes; then
+      removelist="$obj $lobj $libobj ${libobj}T"
+    else
+      removelist="$lobj $libobj ${libobj}T"
+    fi
+
+    # On Cygwin there's no "real" PIC flag so we must build both object types
+    case $host_os in
+    cygwin* | mingw* | pw32* | os2* | cegcc*)
+      pic_mode=default
+      ;;
+    esac
+    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+      # non-PIC code in shared libraries is not supported
+      pic_mode=default
+    fi
+
+    # Calculate the filename of the output object if compiler does
+    # not support -o with -c
+    if test "$compiler_c_o" = no; then
+      output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
+      lockfile="$output_obj.lock"
+    else
+      output_obj=
+      need_locks=no
+      lockfile=
+    fi
+
+    # Lock this critical section if it is needed
+    # We use this script file to make the link, it avoids creating a new file
+    if test "$need_locks" = yes; then
+      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
+	func_echo "Waiting for $lockfile to be removed"
+	sleep 2
+      done
+    elif test "$need_locks" = warn; then
+      if test -f "$lockfile"; then
+	$ECHO "\
+*** ERROR, $lockfile exists and contains:
+`cat $lockfile 2>/dev/null`
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together.  If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+	$opt_dry_run || $RM $removelist
+	exit $EXIT_FAILURE
+      fi
+      removelist="$removelist $output_obj"
+      $ECHO "$srcfile" > "$lockfile"
+    fi
+
+    $opt_dry_run || $RM $removelist
+    removelist="$removelist $lockfile"
+    trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
+
+    if test -n "$fix_srcfile_path"; then
+      eval srcfile=\"$fix_srcfile_path\"
+    fi
+    func_quote_for_eval "$srcfile"
+    qsrcfile=$func_quote_for_eval_result
+
+    # Only build a PIC object if we are building libtool libraries.
+    if test "$build_libtool_libs" = yes; then
+      # Without this assignment, base_compile gets emptied.
+      fbsd_hideous_sh_bug=$base_compile
+
+      if test "$pic_mode" != no; then
+	command="$base_compile $qsrcfile $pic_flag"
+      else
+	# Don't build PIC code
+	command="$base_compile $qsrcfile"
+      fi
+
+      func_mkdir_p "$xdir$objdir"
+
+      if test -z "$output_obj"; then
+	# Place PIC objects in $objdir
+	command="$command -o $lobj"
+      fi
+
+      func_show_eval_locale "$command"	\
+          'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
+
+      if test "$need_locks" = warn &&
+	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+	$ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together.  If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+	$opt_dry_run || $RM $removelist
+	exit $EXIT_FAILURE
+      fi
+
+      # Just move the object if needed, then go on to compile the next one
+      if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
+	func_show_eval '$MV "$output_obj" "$lobj"' \
+	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+      fi
+
+      # Allow error messages only from the first compilation.
+      if test "$suppress_opt" = yes; then
+	suppress_output=' >/dev/null 2>&1'
+      fi
+    fi
+
+    # Only build a position-dependent object if we build old libraries.
+    if test "$build_old_libs" = yes; then
+      if test "$pic_mode" != yes; then
+	# Don't build PIC code
+	command="$base_compile $qsrcfile$pie_flag"
+      else
+	command="$base_compile $qsrcfile $pic_flag"
+      fi
+      if test "$compiler_c_o" = yes; then
+	command="$command -o $obj"
+      fi
+
+      # Suppress compiler output if we already did a PIC compilation.
+      command="$command$suppress_output"
+      func_show_eval_locale "$command" \
+        '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
+
+      if test "$need_locks" = warn &&
+	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+	$ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together.  If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+	$opt_dry_run || $RM $removelist
+	exit $EXIT_FAILURE
+      fi
+
+      # Just move the object if needed
+      if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
+	func_show_eval '$MV "$output_obj" "$obj"' \
+	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+      fi
+    fi
+
+    $opt_dry_run || {
+      func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
+
+      # Unlock the critical section if it was locked
+      if test "$need_locks" != no; then
+	removelist=$lockfile
+        $RM "$lockfile"
+      fi
+    }
+
+    exit $EXIT_SUCCESS
+}
+
+$opt_help || {
+test "$mode" = compile && func_mode_compile ${1+"$@"}
+}
 
 func_mode_help ()
 {
@@ -808,1144 +1629,9 @@
     exit $?
 }
 
-# Generated shell functions inserted here.
-
-
-# Parse options once, thoroughly.  This comes as soon as possible in
-# the script to make things like `libtool --version' happen quickly.
-{
-
-  # Shorthand for --mode=foo, only valid as the first argument
-  case $1 in
-  clean|clea|cle|cl)
-    shift; set dummy --mode clean ${1+"$@"}; shift
-    ;;
-  compile|compil|compi|comp|com|co|c)
-    shift; set dummy --mode compile ${1+"$@"}; shift
-    ;;
-  execute|execut|execu|exec|exe|ex|e)
-    shift; set dummy --mode execute ${1+"$@"}; shift
-    ;;
-  finish|finis|fini|fin|fi|f)
-    shift; set dummy --mode finish ${1+"$@"}; shift
-    ;;
-  install|instal|insta|inst|ins|in|i)
-    shift; set dummy --mode install ${1+"$@"}; shift
-    ;;
-  link|lin|li|l)
-    shift; set dummy --mode link ${1+"$@"}; shift
-    ;;
-  uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
-    shift; set dummy --mode uninstall ${1+"$@"}; shift
-    ;;
-  esac
-
-  # Parse non-mode specific arguments:
-  while test "$#" -gt 0; do
-    opt="$1"
-    shift
-
-    case $opt in
-      --config)		func_config 					;;
-
-      --debug)		preserve_args="$preserve_args $opt"
-	    		func_echo "enabling shell trace mode"
-	    		opt_debug='set -x'
-			$opt_debug
-			;;
-
-      -dlopen)		test "$#" -eq 0 && func_missing_arg "$opt" && break
-			execute_dlfiles="$execute_dlfiles $1"
-			shift
-			;;
-
-      --dry-run | -n)	opt_dry_run=:					;;
-      --features)       func_features					;;
-      --finish)		mode="finish"					;;
-
-      --mode)		test "$#" -eq 0 && func_missing_arg "$opt" && break
-	    		case $1 in
-			  # Valid mode arguments:
-			  clean)	;;
-			  compile)	;;
-			  execute)	;;
-			  finish)	;;
-			  install)	;;
-			  link)		;;
-			  relink)	;;
-			  uninstall)	;;
-
-			  # Catch anything else as an error
-			  *) func_error "invalid argument for $opt"
-			     exit_cmd=exit
-			     break
-			     ;;
-		        esac
-
-	    		mode="$1"
-			shift
-			;;
-
-      --preserve-dup-deps)
-      			opt_duplicate_deps=:				;;
-
-      --quiet|--silent)	preserve_args="$preserve_args $opt"
-	    		opt_silent=:
-			;;
-
-      --verbose| -v)	preserve_args="$preserve_args $opt"
-	    		opt_silent=false
-			;;
-
-      --tag)		test "$#" -eq 0 && func_missing_arg "$opt" && break
-			preserve_args="$preserve_args $opt $1"
-			func_enable_tag "$1"	# tagname is set here
-			shift
-			;;
-
-      # Separate optargs to long options:
-      -dlopen=*|--mode=*|--tag=*)
-			func_opt_split "$opt"
-			set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}
-			shift
-			;;
-
-      -\?|-h)		func_usage					;;
-      --help)		opt_help=:					;;
-      --version)	func_version					;;
-
-      -*)		func_fatal_help "unrecognized option \`$opt'"	;;
-
-      *)		nonopt="$opt"
-      			break
-			;;
-    esac
-  done
-
   # Now that we've collected a possible --mode arg, show help if necessary
   $opt_help && func_mode_help
 
-  case $host in
-    *cygwin* | *mingw* | *pw32*)
-      # don't eliminate duplications in $postdeps and $predeps
-      opt_duplicate_compiler_generated_deps=:
-      ;;
-    *)
-      opt_duplicate_compiler_generated_deps=$opt_duplicate_deps
-      ;;
-  esac
-
-  # Having warned about all mis-specified options, bail out if
-  # anything was wrong.
-  $exit_cmd $EXIT_FAILURE
-}
-
-# func_check_version_match
-# Ensure that we are using m4 macros, and libtool script from the same
-# release of libtool.
-func_check_version_match ()
-{
-  if test "$package_revision" != "$macro_revision"; then
-    if test "$VERSION" != "$macro_version"; then
-      if test -z "$macro_version"; then
-        cat >&2 <<_LT_EOF
-$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
-$progname: definition of this LT_INIT comes from an older release.
-$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
-$progname: and run autoconf again.
-_LT_EOF
-      else
-        cat >&2 <<_LT_EOF
-$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
-$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
-$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
-$progname: and run autoconf again.
-_LT_EOF
-      fi
-    else
-      cat >&2 <<_LT_EOF
-$progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
-$progname: but the definition of this LT_INIT comes from revision $macro_revision.
-$progname: You should recreate aclocal.m4 with macros from revision $package_revision
-$progname: of $PACKAGE $VERSION and run autoconf again.
-_LT_EOF
-    fi
-
-    exit $EXIT_MISMATCH
-  fi
-}
-
-
-## ----------- ##
-##    Main.    ##
-## ----------- ##
-
-{
-  # Sanity checks first:
-  func_check_version_match
-
-  if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-    func_fatal_configuration "not configured to build any kind of library"
-  fi
-
-  test -z "$mode" && func_fatal_error "error: you must specify a MODE."
-
-
-  # Darwin sucks
-  eval std_shrext=\"$shrext_cmds\"
-
-
-  # Only execute mode is allowed to have -dlopen flags.
-  if test -n "$execute_dlfiles" && test "$mode" != execute; then
-    func_error "unrecognized option \`-dlopen'"
-    $ECHO "$help" 1>&2
-    exit $EXIT_FAILURE
-  fi
-
-  # Change the help message to a mode-specific one.
-  generic_help="$help"
-  help="Try \`$progname --help --mode=$mode' for more information."
-}
-
-
-# func_lalib_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_lalib_p ()
-{
-    $SED -e 4q "$1" 2>/dev/null \
-      | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
-}
-
-# func_lalib_unsafe_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
-# This function implements the same check as func_lalib_p without
-# resorting to external programs.  To this end, it redirects stdin and
-# closes it afterwards, without saving the original file descriptor.
-# As a safety measure, use it only where a negative result would be
-# fatal anyway.  Works if `file' does not exist.
-func_lalib_unsafe_p ()
-{
-    lalib_p=no
-    if test -r "$1" && exec 5<&1 <"$1"; then
-	for lalib_p_l in 1 2 3 4
-	do
-	    read lalib_p_line
-	    case "$lalib_p_line" in
-		\#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
-	    esac
-	done
-	exec 1<&5 5<&-
-    fi
-    test "$lalib_p" = yes
-}
-
-# func_ltwrapper_p file
-# True iff FILE is a libtool wrapper script.
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_ltwrapper_p ()
-{
-    func_lalib_p "$1"
-}
-
-
-# func_execute_cmds commands fail_cmd
-# Execute tilde-delimited COMMANDS.
-# If FAIL_CMD is given, eval that upon failure.
-# FAIL_CMD may read-access the current command in variable CMD!
-func_execute_cmds ()
-{
-    $opt_debug
-    save_ifs=$IFS; IFS='~'
-    for cmd in $1; do
-      IFS=$save_ifs
-      eval cmd=\"$cmd\"
-      func_show_eval "$cmd" "${2-:}"
-    done
-    IFS=$save_ifs
-}
-
-
-# func_source file
-# Source FILE, adding directory component if necessary.
-# Note that it is not necessary on cygwin/mingw to append a dot to
-# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
-# behavior happens only for exec(3), not for open(2)!  Also, sourcing
-# `FILE.' does not work on cygwin managed mounts.
-func_source ()
-{
-    $opt_debug
-    case $1 in
-    */* | *\\*)	. "$1" ;;
-    *)		. "./$1" ;;
-    esac
-}
-
-
-# func_win32_libid arg
-# return the library type of file 'arg'
-#
-# Need a lot of goo to handle *both* DLLs and import libs
-# Has to be a shell function in order to 'eat' the argument
-# that is supplied when $file_magic_command is called.
-func_win32_libid ()
-{
-  $opt_debug
-  win32_libid_type="unknown"
-  win32_fileres=`file -L $1 2>/dev/null`
-  case $win32_fileres in
-  *ar\ archive\ import\ library*) # definitely import
-    win32_libid_type="x86 archive import"
-    ;;
-  *ar\ archive*) # could be an import, or static
-    if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
-       $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
-      win32_nmres=`eval $NM -f posix -A $1 |
-	$SED -n -e '
-	    1,100{
-		/ I /{
-		    s,.*,import,
-		    p
-		    q
-		}
-	    }'`
-      case $win32_nmres in
-      import*)  win32_libid_type="x86 archive import";;
-      *)        win32_libid_type="x86 archive static";;
-      esac
-    fi
-    ;;
-  *DLL*)
-    win32_libid_type="x86 DLL"
-    ;;
-  *executable*) # but shell scripts are "executable" too...
-    case $win32_fileres in
-    *MS\ Windows\ PE\ Intel*)
-      win32_libid_type="x86 DLL"
-      ;;
-    esac
-    ;;
-  esac
-  $ECHO "$win32_libid_type"
-}
-
-
-
-# func_infer_tag arg
-# Infer tagged configuration to use if any are available and
-# if one wasn't chosen via the "--tag" command line option.
-# Only attempt this if the compiler in the base compile
-# command doesn't match the default compiler.
-# arg is usually of the form 'gcc ...'
-func_infer_tag ()
-{
-    $opt_debug
-    if test -n "$available_tags" && test -z "$tagname"; then
-      CC_quoted=
-      for arg in $CC; do
-        func_quote_for_eval "$arg"
-	CC_quoted="$CC_quoted $func_quote_for_eval_result"
-      done
-      case $@ in
-      # Blanks in the command may have been stripped by the calling shell,
-      # but not from the CC environment variable when configure was run.
-      " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;
-      # Blanks at the start of $base_compile will cause this to fail
-      # if we don't check for them as well.
-      *)
-	for z in $available_tags; do
-	  if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
-	    # Evaluate the configuration.
-	    eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
-	    CC_quoted=
-	    for arg in $CC; do
-	      # Double-quote args containing other shell metacharacters.
-	      func_quote_for_eval "$arg"
-	      CC_quoted="$CC_quoted $func_quote_for_eval_result"
-	    done
-	    case "$@ " in
-	      " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)
-	      # The compiler in the base compile command matches
-	      # the one in the tagged configuration.
-	      # Assume this is the tagged configuration we want.
-	      tagname=$z
-	      break
-	      ;;
-	    esac
-	  fi
-	done
-	# If $tagname still isn't set, then no tagged configuration
-	# was found and let the user know that the "--tag" command
-	# line option must be used.
-	if test -z "$tagname"; then
-	  func_echo "unable to infer tagged configuration"
-	  func_fatal_error "specify a tag with \`--tag'"
-#	else
-#	  func_verbose "using $tagname tagged configuration"
-	fi
-	;;
-      esac
-    fi
-}
-
-
-
-# func_generate_dlsyms outputname originator pic_p
-# Extract symbols from dlprefiles and create ${outputname}S.o with
-# a dlpreopen symbol table.
-func_generate_dlsyms ()
-{
-    $opt_debug
-    my_outputname="$1"
-    my_originator="$2"
-    my_pic_p="${3-no}"
-    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
-    my_dlsyms=
-
-    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-      if test -n "$NM" && test -n "$global_symbol_pipe"; then
-	my_dlsyms="${my_outputname}S.c"
-      else
-	func_error "not configured to extract global symbols from dlpreopened files"
-      fi
-    fi
-
-    if test -n "$my_dlsyms"; then
-      case $my_dlsyms in
-      "") ;;
-      *.c)
-	# Discover the nlist of each of the dlfiles.
-	nlist="$output_objdir/${my_outputname}.nm"
-
-	func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
-
-	# Parse the name list into a source file.
-	func_echo "creating $output_objdir/$my_dlsyms"
-
-	$opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
-/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
-/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
-
-#ifdef __cplusplus
-extern \"C\" {
-#endif
-
-/* External symbol declarations for the compiler. */\
-"
-
-	if test "$dlself" = yes; then
-	  func_echo "generating symbol list for \`$output'"
-
-	  $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
-
-	  # Add our own program objects to the symbol list.
-	  progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-	  for progfile in $progfiles; do
-	    func_echo "extracting global C symbols from \`$progfile'"
-	    $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"
-	  done
-
-	  if test -n "$exclude_expsyms"; then
-	    $opt_dry_run || {
-	      eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
-	      eval '$MV "$nlist"T "$nlist"'
-	    }
-	  fi
-
-	  if test -n "$export_symbols_regex"; then
-	    $opt_dry_run || {
-	      eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
-	      eval '$MV "$nlist"T "$nlist"'
-	    }
-	  fi
-
-	  # Prepare the list of exported symbols
-	  if test -z "$export_symbols"; then
-	    export_symbols="$output_objdir/$outputname.exp"
-	    $opt_dry_run || {
-	      $RM $export_symbols
-	      eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-	      case $host in
-	      *cygwin* | *mingw* )
-                eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
-                eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
-	        ;;
-	      esac
-	    }
-	  else
-	    $opt_dry_run || {
-	      eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
-	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
-	      eval '$MV "$nlist"T "$nlist"'
-	      case $host in
-	        *cygwin | *mingw* )
-	          eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
-	          eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
-	          ;;
-	      esac
-	    }
-	  fi
-	fi
-
-	for dlprefile in $dlprefiles; do
-	  func_echo "extracting global C symbols from \`$dlprefile'"
-	  func_basename "$dlprefile"
-	  name="$func_basename_result"
-	  $opt_dry_run || {
-	    eval '$ECHO ": $name " >> "$nlist"'
-	    eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"
-	  }
-	done
-
-	$opt_dry_run || {
-	  # Make sure we have at least an empty file.
-	  test -f "$nlist" || : > "$nlist"
-
-	  if test -n "$exclude_expsyms"; then
-	    $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
-	    $MV "$nlist"T "$nlist"
-	  fi
-
-	  # Try sorting and uniquifying the output.
-	  if $GREP -v "^: " < "$nlist" |
-	      if sort -k 3 </dev/null >/dev/null 2>&1; then
-		sort -k 3
-	      else
-		sort +2
-	      fi |
-	      uniq > "$nlist"S; then
-	    :
-	  else
-	    $GREP -v "^: " < "$nlist" > "$nlist"S
-	  fi
-
-	  if test -f "$nlist"S; then
-	    eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
-	  else
-	    $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"
-	  fi
-
-	  $ECHO >> "$output_objdir/$my_dlsyms" "\
-
-/* The mapping between symbol names and symbols.  */
-typedef struct {
-  const char *name;
-  void *address;
-} lt_dlsymlist;
-"
-	  case $host in
-	  *cygwin* | *mingw* )
-	    $ECHO >> "$output_objdir/$my_dlsyms" "\
-/* DATA imports from DLLs on WIN32 con't be const, because
-   runtime relocations are performed -- see ld's documentation
-   on pseudo-relocs.  */"
-	    lt_dlsym_const= ;;
-	  *osf5*)
-	    echo >> "$output_objdir/$my_dlsyms" "\
-/* This system does not cope well with relocations in const data */"
-	    lt_dlsym_const= ;;
-	  *)
-	    lt_dlsym_const=const ;;
-	  esac
-
-	  $ECHO >> "$output_objdir/$my_dlsyms" "\
-extern $lt_dlsym_const lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[];
-$lt_dlsym_const lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
-  { \"$my_originator\", (void *) 0 },"
-
-	  eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
-
-	  $ECHO >> "$output_objdir/$my_dlsyms" "\
-  {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
-  return lt_${my_prefix}_LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif\
-"
-	} # !$opt_dry_run
-
-  	pic_flag_for_symtable=
-	case "$compile_command " in
-	*" -static "*) ;;
-	*)
-	  case $host in
-	  # compiling the symbol table file with pic_flag works around
-	  # a FreeBSD bug that causes programs to crash when -lm is
-	  # linked before any other PIC object.  But we must not use
-	  # pic_flag when linking with -static.  The problem exists in
-	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-	  *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
-	    pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
-	  *-*-hpux*)
-	    pic_flag_for_symtable=" $pic_flag"  ;;
-	  *)
-	    if test "X$my_pic_p" != Xno; then
-	      pic_flag_for_symtable=" $pic_flag"
-	    fi
-	    ;;
-	  esac
-	  ;;
-	esac
-	symtab_cflags=
-	for arg in $LTCFLAGS; do
-	  case $arg in
-	  -pie | -fpie | -fPIE) ;;
-	  *) symtab_cflags="$symtab_cflags $arg" ;;
-	  esac
-	done
-
-	# Now compile the dynamic symbol file.
-	func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
-
-	# Clean up the generated files.
-	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
-
-	# Transform the symbol file into the correct name.
-	symfileobj="$output_objdir/${my_outputname}S.$objext"
-	case $host in
-	*cygwin* | *mingw* )
-	  if test -f "$output_objdir/$my_outputname.def"; then
-	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
-	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
-	  else
-	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
-	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
-	  fi
-	  ;;
-	*)
-	  compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
-	  finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
-	  ;;
-	esac
-	;;
-      *)
-	func_fatal_error "unknown suffix for \`$my_dlsyms'"
-	;;
-      esac
-    else
-      # We keep going just in case the user didn't refer to
-      # lt_preloaded_symbols.  The linker will fail if global_symbol_pipe
-      # really was required.
-
-      # Nullify the symbol file.
-      compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
-      finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
-    fi
-}
-
-# func_extract_an_archive dir oldlib
-func_extract_an_archive ()
-{
-    $opt_debug
-    f_ex_an_ar_dir="$1"; shift
-    f_ex_an_ar_oldlib="$1"
-    func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" 'exit $?'
-    if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
-     :
-    else
-      func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
-    fi
-}
-
-
-# func_extract_archives gentop oldlib ...
-func_extract_archives ()
-{
-    $opt_debug
-    my_gentop="$1"; shift
-    my_oldlibs=${1+"$@"}
-    my_oldobjs=""
-    my_xlib=""
-    my_xabs=""
-    my_xdir=""
-
-    for my_xlib in $my_oldlibs; do
-      # Extract the objects.
-      case $my_xlib in
-	[\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
-	*) my_xabs=`pwd`"/$my_xlib" ;;
-      esac
-      func_basename "$my_xlib"
-      my_xlib="$func_basename_result"
-      my_xlib_u=$my_xlib
-      while :; do
-        case " $extracted_archives " in
-	*" $my_xlib_u "*)
-	  extracted_serial=`expr $extracted_serial + 1`
-	  my_xlib_u=lt$extracted_serial-$my_xlib ;;
-	*) break ;;
-	esac
-      done
-      extracted_archives="$extracted_archives $my_xlib_u"
-      my_xdir="$my_gentop/$my_xlib_u"
-
-      func_mkdir_p "$my_xdir"
-
-      case $host in
-      *-darwin*)
-	func_echo "Extracting $my_xabs"
-	# Do not bother doing anything if just a dry run
-	$opt_dry_run || {
-	  darwin_orig_dir=`pwd`
-	  cd $my_xdir || exit $?
-	  darwin_archive=$my_xabs
-	  darwin_curdir=`pwd`
-	  darwin_base_archive=`basename $darwin_archive`
-	  darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
-	  if test -n "$darwin_arches"; then
-	    darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
-	    darwin_arch=
-	    func_echo "$darwin_base_archive has multiple architectures $darwin_arches"
-	    for darwin_arch in  $darwin_arches ; do
-	      func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-	      lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
-	      cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-	      func_extract_an_archive "`pwd`" "${darwin_base_archive}"
-	      cd "$darwin_curdir"
-	      $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
-	    done # $darwin_arches
-            ## Okay now we've a bunch of thin objects, gotta fatten them up :)
-	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP`
-	    darwin_file=
-	    darwin_files=
-	    for darwin_file in $darwin_filelist; do
-	      darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
-	      lipo -create -output "$darwin_file" $darwin_files
-	    done # $darwin_filelist
-	    $RM -rf unfat-$$
-	    cd "$darwin_orig_dir"
-	  else
-	    cd $darwin_orig_dir
-	    func_extract_an_archive "$my_xdir" "$my_xabs"
-	  fi # $darwin_arches
-	} # !$opt_dry_run
-	;;
-      *)
-        func_extract_an_archive "$my_xdir" "$my_xabs"
-	;;
-      esac
-      my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
-    done
-
-    func_extract_archives_result="$my_oldobjs"
-}
-
-
-
-# func_write_libtool_object output_name pic_name nonpic_name
-# Create a libtool object file (analogous to a ".la" file),
-# but don't create it if we're doing a dry run.
-func_write_libtool_object ()
-{
-    write_libobj=${1}
-    if test "$build_libtool_libs" = yes; then
-      write_lobj=\'${2}\'
-    else
-      write_lobj=none
-    fi
-
-    if test "$build_old_libs" = yes; then
-      write_oldobj=\'${3}\'
-    else
-      write_oldobj=none
-    fi
-
-    $opt_dry_run || {
-      cat >${write_libobj}T <<EOF
-# $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# Name of the PIC object.
-pic_object=$write_lobj
-
-# Name of the non-PIC object
-non_pic_object=$write_oldobj
-
-EOF
-      mv -f "${write_libobj}T" "${write_libobj}"
-    }
-}
-
-# func_mode_compile arg...
-func_mode_compile ()
-{
-    $opt_debug
-    # Get the compilation command and the source file.
-    base_compile=
-    srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
-    suppress_opt=yes
-    suppress_output=
-    arg_mode=normal
-    libobj=
-    later=
-    pie_flag=
-
-    for arg
-    do
-      case $arg_mode in
-      arg  )
-	# do not "continue".  Instead, add this to base_compile
-	lastarg="$arg"
-	arg_mode=normal
-	;;
-
-      target )
-	libobj="$arg"
-	arg_mode=normal
-	continue
-	;;
-
-      normal )
-	# Accept any command-line options.
-	case $arg in
-	-o)
-	  test -n "$libobj" && \
-	    func_fatal_error "you cannot specify \`-o' more than once"
-	  arg_mode=target
-	  continue
-	  ;;
-
-	-pie | -fpie | -fPIE)
-          pie_flag="$pie_flag $arg"
-	  continue
-	  ;;
-
-	-shared | -static | -prefer-pic | -prefer-non-pic)
-	  later="$later $arg"
-	  continue
-	  ;;
-
-	-no-suppress)
-	  suppress_opt=no
-	  continue
-	  ;;
-
-	-Xcompiler)
-	  arg_mode=arg  #  the next one goes into the "base_compile" arg list
-	  continue      #  The current "srcfile" will either be retained or
-	  ;;            #  replaced later.  I would guess that would be a bug.
-
-	-Wc,*)
-	  func_stripname '-Wc,' '' "$arg"
-	  args=$func_stripname_result
-	  lastarg=
-	  save_ifs="$IFS"; IFS=','
-	  for arg in $args; do
-	    IFS="$save_ifs"
-	    func_quote_for_eval "$arg"
-	    lastarg="$lastarg $func_quote_for_eval_result"
-	  done
-	  IFS="$save_ifs"
-	  func_stripname ' ' '' "$lastarg"
-	  lastarg=$func_stripname_result
-
-	  # Add the arguments to base_compile.
-	  base_compile="$base_compile $lastarg"
-	  continue
-	  ;;
-
-	*)
-	  # Accept the current argument as the source file.
-	  # The previous "srcfile" becomes the current argument.
-	  #
-	  lastarg="$srcfile"
-	  srcfile="$arg"
-	  ;;
-	esac  #  case $arg
-	;;
-      esac    #  case $arg_mode
-
-      # Aesthetically quote the previous argument.
-      func_quote_for_eval "$lastarg"
-      base_compile="$base_compile $func_quote_for_eval_result"
-    done # for arg
-
-    case $arg_mode in
-    arg)
-      func_fatal_error "you must specify an argument for -Xcompile"
-      ;;
-    target)
-      func_fatal_error "you must specify a target with \`-o'"
-      ;;
-    *)
-      # Get the name of the library object.
-      test -z "$libobj" && {
-	func_basename "$srcfile"
-	libobj="$func_basename_result"
-      }
-      ;;
-    esac
-
-    # Recognize several different file suffixes.
-    # If the user specifies -o file.o, it is replaced with file.lo
-    xform='[cCFSifmso]'
-    case $libobj in
-    *.ada) xform=ada ;;
-    *.adb) xform=adb ;;
-    *.ads) xform=ads ;;
-    *.asm) xform=asm ;;
-    *.c++) xform=c++ ;;
-    *.cc) xform=cc ;;
-    *.ii) xform=ii ;;
-    *.class) xform=class ;;
-    *.cpp) xform=cpp ;;
-    *.cxx) xform=cxx ;;
-    *.[fF][09]?) xform='[fF][09].' ;;
-    *.for) xform=for ;;
-    *.java) xform=java ;;
-    *.obj) xform=obj ;;
-    esac
-
-    libobj=`$ECHO "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-
-    case $libobj in
-    *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
-    *)
-      func_fatal_error "cannot determine name of library object from \`$libobj'"
-      ;;
-    esac
-
-    func_infer_tag $base_compile
-
-    for arg in $later; do
-      case $arg in
-      -shared)
-	test "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not build a shared library"
-	build_old_libs=no
-	continue
-	;;
-
-      -static)
-	build_libtool_libs=no
-	build_old_libs=yes
-	continue
-	;;
-
-      -prefer-pic)
-	pic_mode=yes
-	continue
-	;;
-
-      -prefer-non-pic)
-	pic_mode=no
-	continue
-	;;
-      esac
-    done
-
-    func_quote_for_eval "$libobj"
-    test "X$libobj" != "X$func_quote_for_eval_result" \
-      && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' 	&()|`$[]' \
-      && func_warning "libobj name \`$libobj' may not contain shell special characters."
-    func_basename "$obj"
-    objname="$func_basename_result"
-    func_dirname "$obj" "/" ""
-    xdir="$func_dirname_result"
-    lobj=${xdir}$objdir/$objname
-
-    test -z "$base_compile" && \
-      func_fatal_help "you must specify a compilation command"
-
-    # Delete any leftover library objects.
-    if test "$build_old_libs" = yes; then
-      removelist="$obj $lobj $libobj ${libobj}T"
-    else
-      removelist="$lobj $libobj ${libobj}T"
-    fi
-
-    $opt_dry_run || $RM $removelist
-    trap "$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE" 1 2 15
-
-    # On Cygwin there's no "real" PIC flag so we must build both object types
-    case $host_os in
-    cygwin* | mingw* | pw32* | os2*)
-      pic_mode=default
-      ;;
-    esac
-    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
-      # non-PIC code in shared libraries is not supported
-      pic_mode=default
-    fi
-
-    # Calculate the filename of the output object if compiler does
-    # not support -o with -c
-    if test "$compiler_c_o" = no; then
-      output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
-      lockfile="$output_obj.lock"
-      removelist="$removelist $output_obj $lockfile"
-      trap "$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE" 1 2 15
-    else
-      output_obj=
-      need_locks=no
-      lockfile=
-    fi
-
-    # Lock this critical section if it is needed
-    # We use this script file to make the link, it avoids creating a new file
-    if test "$need_locks" = yes; then
-      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
-	func_echo "Waiting for $lockfile to be removed"
-	sleep 2
-      done
-    elif test "$need_locks" = warn; then
-      if test -f "$lockfile"; then
-	$ECHO "\
-*** ERROR, $lockfile exists and contains:
-`cat $lockfile 2>/dev/null`
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
-	$opt_dry_run || $RM $removelist
-	exit $EXIT_FAILURE
-      fi
-      $ECHO "$srcfile" > "$lockfile"
-    fi
-
-    if test -n "$fix_srcfile_path"; then
-      eval srcfile=\"$fix_srcfile_path\"
-    fi
-    func_quote_for_eval "$srcfile"
-    qsrcfile=$func_quote_for_eval_result
-
-    $opt_dry_run || $RM "$libobj" "${libobj}T"
-
-    # Only build a PIC object if we are building libtool libraries.
-    if test "$build_libtool_libs" = yes; then
-      # Without this assignment, base_compile gets emptied.
-      fbsd_hideous_sh_bug=$base_compile
-
-      if test "$pic_mode" != no; then
-	command="$base_compile $qsrcfile $pic_flag"
-      else
-	# Don't build PIC code
-	command="$base_compile $qsrcfile"
-      fi
-
-      func_mkdir_p "$xdir$objdir"
-
-      if test -z "$output_obj"; then
-	# Place PIC objects in $objdir
-	command="$command -o $lobj"
-      fi
-
-      $opt_dry_run || $RM "$lobj" "$output_obj"
-
-      func_show_eval "$command"	\
-          'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
-
-      if test "$need_locks" = warn &&
-	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
-	$ECHO "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
-	$opt_dry_run || $RM $removelist
-	exit $EXIT_FAILURE
-      fi
-
-      # Just move the object if needed, then go on to compile the next one
-      if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
-	func_show_eval '$MV "$output_obj" "$lobj"' \
-	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
-      fi
-
-      # Allow error messages only from the first compilation.
-      if test "$suppress_opt" = yes; then
-	suppress_output=' >/dev/null 2>&1'
-      fi
-    fi
-
-    # Only build a position-dependent object if we build old libraries.
-    if test "$build_old_libs" = yes; then
-      if test "$pic_mode" != yes; then
-	# Don't build PIC code
-	command="$base_compile $qsrcfile$pie_flag"
-      else
-	command="$base_compile $qsrcfile $pic_flag"
-      fi
-      if test "$compiler_c_o" = yes; then
-	command="$command -o $obj"
-      fi
-
-      # Suppress compiler output if we already did a PIC compilation.
-      command="$command$suppress_output"
-      $opt_dry_run || $RM "$obj" "$output_obj"
-      func_show_eval "$command" \
-        '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
-
-      if test "$need_locks" = warn &&
-	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
-	$ECHO "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
-	$opt_dry_run || $RM $removelist
-	exit $EXIT_FAILURE
-      fi
-
-      # Just move the object if needed
-      if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
-	func_show_eval '$MV "$output_obj" "$obj"' \
-	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
-      fi
-    fi
-
-    $opt_dry_run || {
-      func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
-
-      # Unlock the critical section if it was locked
-      if test "$need_locks" != no; then
-        $RM "$lockfile"
-      fi
-    }
-
-    exit $EXIT_SUCCESS
-}
-
-test "$mode" = compile && func_mode_compile ${1+"$@"}
-
 
 # func_mode_execute arg...
 func_mode_execute ()
@@ -2029,9 +1715,13 @@
       -*) ;;
       *)
 	# Do a test to see if this is really a libtool program.
-	if func_ltwrapper_p "$file"; then
+	if func_ltwrapper_script_p "$file"; then
 	  func_source "$file"
-
+	  # Transform arg to wrapped name.
+	  file="$progdir/$program"
+	elif func_ltwrapper_executable_p "$file"; then
+	  func_ltwrapper_scriptname "$file"
+	  func_source "$func_ltwrapper_scriptname_result"
 	  # Transform arg to wrapped name.
 	  file="$progdir/$program"
 	fi
@@ -2049,7 +1739,7 @@
       fi
 
       # Restore saved environment variables
-      for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+      for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
       do
 	eval "if test \"\${save_$lt_var+set}\" = set; then
                 $lt_var=\$save_$lt_var; export $lt_var
@@ -2197,7 +1887,7 @@
       case $arg in
       -d) isdir=yes ;;
       -f)
-      	case " $install_prog " in
+	case " $install_prog " in
 	*[\\\ /]cp\ *) ;;
 	*) prev=$arg ;;
 	esac
@@ -2251,9 +1941,8 @@
       destdir="$dest"
       destname=
     else
-      func_dirname "$dest" "" "."
+      func_dirname_and_basename "$dest" "" "."
       destdir="$func_dirname_result"
-      func_basename "$dest"
       destname="$func_basename_result"
 
       # Not a directory, so check to see that there is only one file specified.
@@ -2358,7 +2047,7 @@
 	      'exit $?'
 	  tstripme="$stripme"
 	  case $host_os in
-	  cygwin* | mingw* | pw32*)
+	  cygwin* | mingw* | pw32* | cegcc*)
 	    case $realname in
 	    *.dll.a)
 	      tstripme=""
@@ -2464,15 +2153,20 @@
 
 	# Do a test to see if this is really a libtool program.
 	case $host in
-	*cygwin*|*mingw*)
-	    func_stripname '' '.exe' "$file"
-	    wrapper=$func_stripname_result
+	*cygwin* | *mingw*)
+	    if func_ltwrapper_executable_p "$file"; then
+	      func_ltwrapper_scriptname "$file"
+	      wrapper=$func_ltwrapper_scriptname_result
+	    else
+	      func_stripname '' '.exe' "$file"
+	      wrapper=$func_stripname_result
+	    fi
 	    ;;
 	*)
 	    wrapper=$file
 	    ;;
 	esac
-	if func_ltwrapper_p "$wrapper"; then
+	if func_ltwrapper_script_p "$wrapper"; then
 	  notinst_deplibs=
 	  relink_command=
 
@@ -2589,12 +2283,1757 @@
 test "$mode" = install && func_mode_install ${1+"$@"}
 
 
+# func_generate_dlsyms outputname originator pic_p
+# Extract symbols from dlprefiles and create ${outputname}S.o with
+# a dlpreopen symbol table.
+func_generate_dlsyms ()
+{
+    $opt_debug
+    my_outputname="$1"
+    my_originator="$2"
+    my_pic_p="${3-no}"
+    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
+    my_dlsyms=
+
+    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+      if test -n "$NM" && test -n "$global_symbol_pipe"; then
+	my_dlsyms="${my_outputname}S.c"
+      else
+	func_error "not configured to extract global symbols from dlpreopened files"
+      fi
+    fi
+
+    if test -n "$my_dlsyms"; then
+      case $my_dlsyms in
+      "") ;;
+      *.c)
+	# Discover the nlist of each of the dlfiles.
+	nlist="$output_objdir/${my_outputname}.nm"
+
+	func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
+
+	# Parse the name list into a source file.
+	func_verbose "creating $output_objdir/$my_dlsyms"
+
+	$opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
+/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
+/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
+
+#ifdef __cplusplus
+extern \"C\" {
+#endif
+
+/* External symbol declarations for the compiler. */\
+"
+
+	if test "$dlself" = yes; then
+	  func_verbose "generating symbol list for \`$output'"
+
+	  $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
+
+	  # Add our own program objects to the symbol list.
+	  progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+	  for progfile in $progfiles; do
+	    func_verbose "extracting global C symbols from \`$progfile'"
+	    $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"
+	  done
+
+	  if test -n "$exclude_expsyms"; then
+	    $opt_dry_run || {
+	      eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
+	      eval '$MV "$nlist"T "$nlist"'
+	    }
+	  fi
+
+	  if test -n "$export_symbols_regex"; then
+	    $opt_dry_run || {
+	      eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
+	      eval '$MV "$nlist"T "$nlist"'
+	    }
+	  fi
+
+	  # Prepare the list of exported symbols
+	  if test -z "$export_symbols"; then
+	    export_symbols="$output_objdir/$outputname.exp"
+	    $opt_dry_run || {
+	      $RM $export_symbols
+	      eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
+	      case $host in
+	      *cygwin* | *mingw* | *cegcc* )
+                eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+                eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
+	        ;;
+	      esac
+	    }
+	  else
+	    $opt_dry_run || {
+	      eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
+	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
+	      eval '$MV "$nlist"T "$nlist"'
+	      case $host in
+	        *cygwin | *mingw* | *cegcc* )
+	          eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+	          eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
+	          ;;
+	      esac
+	    }
+	  fi
+	fi
+
+	for dlprefile in $dlprefiles; do
+	  func_verbose "extracting global C symbols from \`$dlprefile'"
+	  func_basename "$dlprefile"
+	  name="$func_basename_result"
+	  $opt_dry_run || {
+	    eval '$ECHO ": $name " >> "$nlist"'
+	    eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"
+	  }
+	done
+
+	$opt_dry_run || {
+	  # Make sure we have at least an empty file.
+	  test -f "$nlist" || : > "$nlist"
+
+	  if test -n "$exclude_expsyms"; then
+	    $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
+	    $MV "$nlist"T "$nlist"
+	  fi
+
+	  # Try sorting and uniquifying the output.
+	  if $GREP -v "^: " < "$nlist" |
+	      if sort -k 3 </dev/null >/dev/null 2>&1; then
+		sort -k 3
+	      else
+		sort +2
+	      fi |
+	      uniq > "$nlist"S; then
+	    :
+	  else
+	    $GREP -v "^: " < "$nlist" > "$nlist"S
+	  fi
+
+	  if test -f "$nlist"S; then
+	    eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
+	  else
+	    $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"
+	  fi
+
+	  $ECHO >> "$output_objdir/$my_dlsyms" "\
+
+/* The mapping between symbol names and symbols.  */
+typedef struct {
+  const char *name;
+  void *address;
+} lt_dlsymlist;
+"
+	  case $host in
+	  *cygwin* | *mingw* | *cegcc* )
+	    $ECHO >> "$output_objdir/$my_dlsyms" "\
+/* DATA imports from DLLs on WIN32 con't be const, because
+   runtime relocations are performed -- see ld's documentation
+   on pseudo-relocs.  */"
+	    lt_dlsym_const= ;;
+	  *osf5*)
+	    echo >> "$output_objdir/$my_dlsyms" "\
+/* This system does not cope well with relocations in const data */"
+	    lt_dlsym_const= ;;
+	  *)
+	    lt_dlsym_const=const ;;
+	  esac
+
+	  $ECHO >> "$output_objdir/$my_dlsyms" "\
+extern $lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[];
+$lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[] =
+{\
+  { \"$my_originator\", (void *) 0 },"
+
+	  case $need_lib_prefix in
+	  no)
+	    eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
+	    ;;
+	  *)
+	    eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
+	    ;;
+	  esac
+	  $ECHO >> "$output_objdir/$my_dlsyms" "\
+  {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+  return lt_${my_prefix}_LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif\
+"
+	} # !$opt_dry_run
+
+	pic_flag_for_symtable=
+	case "$compile_command " in
+	*" -static "*) ;;
+	*)
+	  case $host in
+	  # compiling the symbol table file with pic_flag works around
+	  # a FreeBSD bug that causes programs to crash when -lm is
+	  # linked before any other PIC object.  But we must not use
+	  # pic_flag when linking with -static.  The problem exists in
+	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
+	  *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
+	    pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
+	  *-*-hpux*)
+	    pic_flag_for_symtable=" $pic_flag"  ;;
+	  *)
+	    if test "X$my_pic_p" != Xno; then
+	      pic_flag_for_symtable=" $pic_flag"
+	    fi
+	    ;;
+	  esac
+	  ;;
+	esac
+	symtab_cflags=
+	for arg in $LTCFLAGS; do
+	  case $arg in
+	  -pie | -fpie | -fPIE) ;;
+	  *) symtab_cflags="$symtab_cflags $arg" ;;
+	  esac
+	done
+
+	# Now compile the dynamic symbol file.
+	func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
+
+	# Clean up the generated files.
+	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
+
+	# Transform the symbol file into the correct name.
+	symfileobj="$output_objdir/${my_outputname}S.$objext"
+	case $host in
+	*cygwin* | *mingw* | *cegcc* )
+	  if test -f "$output_objdir/$my_outputname.def"; then
+	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+	  else
+	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+	  fi
+	  ;;
+	*)
+	  compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+	  finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+	  ;;
+	esac
+	;;
+      *)
+	func_fatal_error "unknown suffix for \`$my_dlsyms'"
+	;;
+      esac
+    else
+      # We keep going just in case the user didn't refer to
+      # lt_preloaded_symbols.  The linker will fail if global_symbol_pipe
+      # really was required.
+
+      # Nullify the symbol file.
+      compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
+      finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+    fi
+}
+
+# func_win32_libid arg
+# return the library type of file 'arg'
+#
+# Need a lot of goo to handle *both* DLLs and import libs
+# Has to be a shell function in order to 'eat' the argument
+# that is supplied when $file_magic_command is called.
+func_win32_libid ()
+{
+  $opt_debug
+  win32_libid_type="unknown"
+  win32_fileres=`file -L $1 2>/dev/null`
+  case $win32_fileres in
+  *ar\ archive\ import\ library*) # definitely import
+    win32_libid_type="x86 archive import"
+    ;;
+  *ar\ archive*) # could be an import, or static
+    if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
+       $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
+      win32_nmres=`eval $NM -f posix -A $1 |
+	$SED -n -e '
+	    1,100{
+		/ I /{
+		    s,.*,import,
+		    p
+		    q
+		}
+	    }'`
+      case $win32_nmres in
+      import*)  win32_libid_type="x86 archive import";;
+      *)        win32_libid_type="x86 archive static";;
+      esac
+    fi
+    ;;
+  *DLL*)
+    win32_libid_type="x86 DLL"
+    ;;
+  *executable*) # but shell scripts are "executable" too...
+    case $win32_fileres in
+    *MS\ Windows\ PE\ Intel*)
+      win32_libid_type="x86 DLL"
+      ;;
+    esac
+    ;;
+  esac
+  $ECHO "$win32_libid_type"
+}
+
+
+
+# func_extract_an_archive dir oldlib
+func_extract_an_archive ()
+{
+    $opt_debug
+    f_ex_an_ar_dir="$1"; shift
+    f_ex_an_ar_oldlib="$1"
+    func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?'
+    if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
+     :
+    else
+      func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
+    fi
+}
+
+
+# func_extract_archives gentop oldlib ...
+func_extract_archives ()
+{
+    $opt_debug
+    my_gentop="$1"; shift
+    my_oldlibs=${1+"$@"}
+    my_oldobjs=""
+    my_xlib=""
+    my_xabs=""
+    my_xdir=""
+
+    for my_xlib in $my_oldlibs; do
+      # Extract the objects.
+      case $my_xlib in
+	[\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
+	*) my_xabs=`pwd`"/$my_xlib" ;;
+      esac
+      func_basename "$my_xlib"
+      my_xlib="$func_basename_result"
+      my_xlib_u=$my_xlib
+      while :; do
+        case " $extracted_archives " in
+	*" $my_xlib_u "*)
+	  func_arith $extracted_serial + 1
+	  extracted_serial=$func_arith_result
+	  my_xlib_u=lt$extracted_serial-$my_xlib ;;
+	*) break ;;
+	esac
+      done
+      extracted_archives="$extracted_archives $my_xlib_u"
+      my_xdir="$my_gentop/$my_xlib_u"
+
+      func_mkdir_p "$my_xdir"
+
+      case $host in
+      *-darwin*)
+	func_verbose "Extracting $my_xabs"
+	# Do not bother doing anything if just a dry run
+	$opt_dry_run || {
+	  darwin_orig_dir=`pwd`
+	  cd $my_xdir || exit $?
+	  darwin_archive=$my_xabs
+	  darwin_curdir=`pwd`
+	  darwin_base_archive=`basename "$darwin_archive"`
+	  darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
+	  if test -n "$darwin_arches"; then
+	    darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
+	    darwin_arch=
+	    func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
+	    for darwin_arch in  $darwin_arches ; do
+	      func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+	      $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
+	      cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+	      func_extract_an_archive "`pwd`" "${darwin_base_archive}"
+	      cd "$darwin_curdir"
+	      $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
+	    done # $darwin_arches
+            ## Okay now we've a bunch of thin objects, gotta fatten them up :)
+	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
+	    darwin_file=
+	    darwin_files=
+	    for darwin_file in $darwin_filelist; do
+	      darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
+	      $LIPO -create -output "$darwin_file" $darwin_files
+	    done # $darwin_filelist
+	    $RM -rf unfat-$$
+	    cd "$darwin_orig_dir"
+	  else
+	    cd $darwin_orig_dir
+	    func_extract_an_archive "$my_xdir" "$my_xabs"
+	  fi # $darwin_arches
+	} # !$opt_dry_run
+	;;
+      *)
+        func_extract_an_archive "$my_xdir" "$my_xabs"
+	;;
+      esac
+      my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
+    done
+
+    func_extract_archives_result="$my_oldobjs"
+}
+
+
+
+# func_emit_wrapper_part1 [arg=no]
+#
+# Emit the first part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part1 ()
+{
+	func_emit_wrapper_part1_arg1=no
+	if test -n "$1" ; then
+	  func_emit_wrapper_part1_arg1=$1
+	fi
+
+	$ECHO "\
+#! $SHELL
+
+# $output - temporary wrapper script for $objdir/$outputname
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# The $output program cannot be directly executed until all the libtool
+# libraries that it depends on are installed.
+#
+# This wrapper script should never be moved out of the build directory.
+# If it is, it will not operate correctly.
+
+# Sed substitution that helps us do robust quoting.  It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='${SED} -e 1s/^X//'
+sed_quote_subst='$sed_quote_subst'
+
+# Be Bourne compatible
+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+  # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
+  # is contrary to our usage.  Disable this feature.
+  alias -g '\${1+\"\$@\"}'='\"\$@\"'
+  setopt NO_GLOB_SUBST
+else
+  case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+relink_command=\"$relink_command\"
+
+# This environment variable determines our operation mode.
+if test \"\$libtool_install_magic\" = \"$magic\"; then
+  # install mode needs the following variables:
+  generated_by_libtool_version='$macro_version'
+  notinst_deplibs='$notinst_deplibs'
+else
+  # When we are sourced in execute mode, \$file and \$ECHO are already set.
+  if test \"\$libtool_execute_magic\" != \"$magic\"; then
+    ECHO=\"$qecho\"
+    file=\"\$0\"
+    # Make sure echo works.
+    if test \"X\$1\" = X--no-reexec; then
+      # Discard the --no-reexec flag, and continue.
+      shift
+    elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then
+      # Yippee, \$ECHO works!
+      :
+    else
+      # Restart under the correct shell, and then maybe \$ECHO will work.
+      exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
+    fi
+  fi\
+"
+	$ECHO "\
+
+  # Find the directory that this script lives in.
+  thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
+  test \"x\$thisdir\" = \"x\$file\" && thisdir=.
+
+  # Follow symbolic links until we get to the real thisdir.
+  file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
+  while test -n \"\$file\"; do
+    destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
+
+    # If there was a directory component, then change thisdir.
+    if test \"x\$destdir\" != \"x\$file\"; then
+      case \"\$destdir\" in
+      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
+      *) thisdir=\"\$thisdir/\$destdir\" ;;
+      esac
+    fi
+
+    file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
+    file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
+  done
+"
+}
+# end: func_emit_wrapper_part1
+
+# func_emit_wrapper_part2 [arg=no]
+#
+# Emit the second part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part2 ()
+{
+	func_emit_wrapper_part2_arg1=no
+	if test -n "$1" ; then
+	  func_emit_wrapper_part2_arg1=$1
+	fi
+
+	$ECHO "\
+
+  # Usually 'no', except on cygwin/mingw when embedded into
+  # the cwrapper.
+  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1
+  if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
+    # special case for '.'
+    if test \"\$thisdir\" = \".\"; then
+      thisdir=\`pwd\`
+    fi
+    # remove .libs from thisdir
+    case \"\$thisdir\" in
+    *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;;
+    $objdir )   thisdir=. ;;
+    esac
+  fi
+
+  # Try to get the absolute directory name.
+  absdir=\`cd \"\$thisdir\" && pwd\`
+  test -n \"\$absdir\" && thisdir=\"\$absdir\"
+"
+
+	if test "$fast_install" = yes; then
+	  $ECHO "\
+  program=lt-'$outputname'$exeext
+  progdir=\"\$thisdir/$objdir\"
+
+  if test ! -f \"\$progdir/\$program\" ||
+     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
+       test \"X\$file\" != \"X\$progdir/\$program\"; }; then
+
+    file=\"\$\$-\$program\"
+
+    if test ! -d \"\$progdir\"; then
+      $MKDIR \"\$progdir\"
+    else
+      $RM \"\$progdir/\$file\"
+    fi"
+
+	  $ECHO "\
+
+    # relink executable if necessary
+    if test -n \"\$relink_command\"; then
+      if relink_command_output=\`eval \$relink_command 2>&1\`; then :
+      else
+	$ECHO \"\$relink_command_output\" >&2
+	$RM \"\$progdir/\$file\"
+	exit 1
+      fi
+    fi
+
+    $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
+    { $RM \"\$progdir/\$program\";
+      $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
+    $RM \"\$progdir/\$file\"
+  fi"
+	else
+	  $ECHO "\
+  program='$outputname'
+  progdir=\"\$thisdir/$objdir\"
+"
+	fi
+
+	$ECHO "\
+
+  if test -f \"\$progdir/\$program\"; then"
+
+	# Export our shlibpath_var if we have one.
+	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+	  $ECHO "\
+    # Add our own library path to $shlibpath_var
+    $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
+
+    # Some systems cannot cope with colon-terminated $shlibpath_var
+    # The second colon is a workaround for a bug in BeOS R4 sed
+    $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
+
+    export $shlibpath_var
+"
+	fi
+
+	# fixup the dll searchpath if we need to.
+	if test -n "$dllsearchpath"; then
+	  $ECHO "\
+    # Add the dll search path components to the executable PATH
+    PATH=$dllsearchpath:\$PATH
+"
+	fi
+
+	$ECHO "\
+    if test \"\$libtool_execute_magic\" != \"$magic\"; then
+      # Run the actual program with our arguments.
+"
+	case $host in
+	# Backslashes separate directories on plain windows
+	*-*-mingw | *-*-os2* | *-cegcc*)
+	  $ECHO "\
+      exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
+"
+	  ;;
+
+	*)
+	  $ECHO "\
+      exec \"\$progdir/\$program\" \${1+\"\$@\"}
+"
+	  ;;
+	esac
+	$ECHO "\
+      \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
+      exit 1
+    fi
+  else
+    # The program doesn't exist.
+    \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
+    \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
+    $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
+    exit 1
+  fi
+fi\
+"
+}
+# end: func_emit_wrapper_part2
+
+
+# func_emit_wrapper [arg=no]
+#
+# Emit a libtool wrapper script on stdout.
+# Don't directly open a file because we may want to
+# incorporate the script contents within a cygwin/mingw
+# wrapper executable.  Must ONLY be called from within
+# func_mode_link because it depends on a number of variables
+# set therein.
+#
+# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
+# variable will take.  If 'yes', then the emitted script
+# will assume that the directory in which it is stored is
+# the $objdir directory.  This is a cygwin/mingw-specific
+# behavior.
+func_emit_wrapper ()
+{
+	func_emit_wrapper_arg1=no
+	if test -n "$1" ; then
+	  func_emit_wrapper_arg1=$1
+	fi
+
+	# split this up so that func_emit_cwrapperexe_src
+	# can call each part independently.
+	func_emit_wrapper_part1 "${func_emit_wrapper_arg1}"
+	func_emit_wrapper_part2 "${func_emit_wrapper_arg1}"
+}
+
+
+# func_to_host_path arg
+#
+# Convert paths to host format when used with build tools.
+# Intended for use with "native" mingw (where libtool itself
+# is running under the msys shell), or in the following cross-
+# build environments:
+#    $build          $host
+#    mingw (msys)    mingw  [e.g. native]
+#    cygwin          mingw
+#    *nix + wine     mingw
+# where wine is equipped with the `winepath' executable.
+# In the native mingw case, the (msys) shell automatically
+# converts paths for any non-msys applications it launches,
+# but that facility isn't available from inside the cwrapper.
+# Similar accommodations are necessary for $host mingw and
+# $build cygwin.  Calling this function does no harm for other
+# $host/$build combinations not listed above.
+#
+# ARG is the path (on $build) that should be converted to
+# the proper representation for $host. The result is stored
+# in $func_to_host_path_result.
+func_to_host_path ()
+{
+  func_to_host_path_result="$1"
+  if test -n "$1" ; then
+    case $host in
+      *mingw* )
+        lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+        case $build in
+          *mingw* ) # actually, msys
+            # awkward: cmd appends spaces to result
+            lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+            func_to_host_path_tmp1=`( cmd //c echo "$1" |\
+              $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+            func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+              $SED -e "$lt_sed_naive_backslashify"`
+            ;;
+          *cygwin* )
+            func_to_host_path_tmp1=`cygpath -w "$1"`
+            func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+              $SED -e "$lt_sed_naive_backslashify"`
+            ;;
+          * )
+            # Unfortunately, winepath does not exit with a non-zero
+            # error code, so we are forced to check the contents of
+            # stdout. On the other hand, if the command is not
+            # found, the shell will set an exit code of 127 and print
+            # *an error message* to stdout. So we must check for both
+            # error code of zero AND non-empty stdout, which explains
+            # the odd construction:
+            func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null`
+            if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then
+              func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+                $SED -e "$lt_sed_naive_backslashify"`
+            else
+              # Allow warning below.
+              func_to_host_path_result=""
+            fi
+            ;;
+        esac
+        if test -z "$func_to_host_path_result" ; then
+          func_error "Could not determine host path corresponding to"
+          func_error "  '$1'"
+          func_error "Continuing, but uninstalled executables may not work."
+          # Fallback:
+          func_to_host_path_result="$1"
+        fi
+        ;;
+    esac
+  fi
+}
+# end: func_to_host_path
+
+# func_to_host_pathlist arg
+#
+# Convert pathlists to host format when used with build tools.
+# See func_to_host_path(), above. This function supports the
+# following $build/$host combinations (but does no harm for
+# combinations not listed here):
+#    $build          $host
+#    mingw (msys)    mingw  [e.g. native]
+#    cygwin          mingw
+#    *nix + wine     mingw
+#
+# Path separators are also converted from $build format to
+# $host format. If ARG begins or ends with a path separator
+# character, it is preserved (but converted to $host format)
+# on output.
+#
+# ARG is a pathlist (on $build) that should be converted to
+# the proper representation on $host. The result is stored
+# in $func_to_host_pathlist_result.
+func_to_host_pathlist ()
+{
+  func_to_host_pathlist_result="$1"
+  if test -n "$1" ; then
+    case $host in
+      *mingw* )
+        lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+        # Remove leading and trailing path separator characters from
+        # ARG. msys behavior is inconsistent here, cygpath turns them
+        # into '.;' and ';.', and winepath ignores them completely.
+        func_to_host_pathlist_tmp2="$1"
+        # Once set for this call, this variable should not be
+        # reassigned. It is used in tha fallback case.
+        func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\
+          $SED -e 's|^:*||' -e 's|:*$||'`
+        case $build in
+          *mingw* ) # Actually, msys.
+            # Awkward: cmd appends spaces to result.
+            lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+            func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\
+              $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+            func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+              $SED -e "$lt_sed_naive_backslashify"`
+            ;;
+          *cygwin* )
+            func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"`
+            func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+              $SED -e "$lt_sed_naive_backslashify"`
+            ;;
+          * )
+            # unfortunately, winepath doesn't convert pathlists
+            func_to_host_pathlist_result=""
+            func_to_host_pathlist_oldIFS=$IFS
+            IFS=:
+            for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do
+              IFS=$func_to_host_pathlist_oldIFS
+              if test -n "$func_to_host_pathlist_f" ; then
+                func_to_host_path "$func_to_host_pathlist_f"
+                if test -n "$func_to_host_path_result" ; then
+                  if test -z "$func_to_host_pathlist_result" ; then
+                    func_to_host_pathlist_result="$func_to_host_path_result"
+                  else
+                    func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result"
+                  fi
+                fi
+              fi
+              IFS=:
+            done
+            IFS=$func_to_host_pathlist_oldIFS
+            ;;
+        esac
+        if test -z "$func_to_host_pathlist_result" ; then
+          func_error "Could not determine the host path(s) corresponding to"
+          func_error "  '$1'"
+          func_error "Continuing, but uninstalled executables may not work."
+          # Fallback. This may break if $1 contains DOS-style drive
+          # specifications. The fix is not to complicate the expression
+          # below, but for the user to provide a working wine installation
+          # with winepath so that path translation in the cross-to-mingw
+          # case works properly.
+          lt_replace_pathsep_nix_to_dos="s|:|;|g"
+          func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\
+            $SED -e "$lt_replace_pathsep_nix_to_dos"`
+        fi
+        # Now, add the leading and trailing path separators back
+        case "$1" in
+          :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result"
+            ;;
+        esac
+        case "$1" in
+          *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;"
+            ;;
+        esac
+        ;;
+    esac
+  fi
+}
+# end: func_to_host_pathlist
+
+# func_emit_cwrapperexe_src
+# emit the source code for a wrapper executable on stdout
+# Must ONLY be called from within func_mode_link because
+# it depends on a number of variable set therein.
+func_emit_cwrapperexe_src ()
+{
+	cat <<EOF
+
+/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
+   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+
+   The $output program cannot be directly executed until all the libtool
+   libraries that it depends on are installed.
+
+   This wrapper executable should never be moved out of the build directory.
+   If it is, it will not operate correctly.
+
+   Currently, it simply execs the wrapper *script* "$SHELL $output",
+   but could eventually absorb all of the scripts functionality and
+   exec $objdir/$outputname directly.
+*/
+EOF
+	    cat <<"EOF"
+#include <stdio.h>
+#include <stdlib.h>
+#ifdef _MSC_VER
+# include <direct.h>
+# include <process.h>
+# include <io.h>
+# define setmode _setmode
+#else
+# include <unistd.h>
+# include <stdint.h>
+# ifdef __CYGWIN__
+#  include <io.h>
+#  define HAVE_SETENV
+#  ifdef __STRICT_ANSI__
+char *realpath (const char *, char *);
+int putenv (char *);
+int setenv (const char *, const char *, int);
+#  endif
+# endif
+#endif
+#include <malloc.h>
+#include <stdarg.h>
+#include <assert.h>
+#include <string.h>
+#include <ctype.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+
+#if defined(PATH_MAX)
+# define LT_PATHMAX PATH_MAX
+#elif defined(MAXPATHLEN)
+# define LT_PATHMAX MAXPATHLEN
+#else
+# define LT_PATHMAX 1024
+#endif
+
+#ifndef S_IXOTH
+# define S_IXOTH 0
+#endif
+#ifndef S_IXGRP
+# define S_IXGRP 0
+#endif
+
+#ifdef _MSC_VER
+# define S_IXUSR _S_IEXEC
+# define stat _stat
+# ifndef _INTPTR_T_DEFINED
+#  define intptr_t int
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR
+# define DIR_SEPARATOR '/'
+# define PATH_SEPARATOR ':'
+#endif
+
+#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
+  defined (__OS2__)
+# define HAVE_DOS_BASED_FILE_SYSTEM
+# define FOPEN_WB "wb"
+# ifndef DIR_SEPARATOR_2
+#  define DIR_SEPARATOR_2 '\\'
+# endif
+# ifndef PATH_SEPARATOR_2
+#  define PATH_SEPARATOR_2 ';'
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR_2
+# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
+#else /* DIR_SEPARATOR_2 */
+# define IS_DIR_SEPARATOR(ch) \
+	(((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
+#endif /* DIR_SEPARATOR_2 */
+
+#ifndef PATH_SEPARATOR_2
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
+#else /* PATH_SEPARATOR_2 */
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
+#endif /* PATH_SEPARATOR_2 */
+
+#ifdef __CYGWIN__
+# define FOPEN_WB "wb"
+#endif
+
+#ifndef FOPEN_WB
+# define FOPEN_WB "w"
+#endif
+#ifndef _O_BINARY
+# define _O_BINARY 0
+#endif
+
+#define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
+#define XFREE(stale) do { \
+  if (stale) { free ((void *) stale); stale = 0; } \
+} while (0)
+
+#undef LTWRAPPER_DEBUGPRINTF
+#if defined DEBUGWRAPPER
+# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args
+static void
+ltwrapper_debugprintf (const char *fmt, ...)
+{
+    va_list args;
+    va_start (args, fmt);
+    (void) vfprintf (stderr, fmt, args);
+    va_end (args);
+}
+#else
+# define LTWRAPPER_DEBUGPRINTF(args)
+#endif
+
+const char *program_name = NULL;
+
+void *xmalloc (size_t num);
+char *xstrdup (const char *string);
+const char *base_name (const char *name);
+char *find_executable (const char *wrapper);
+char *chase_symlinks (const char *pathspec);
+int make_executable (const char *path);
+int check_executable (const char *path);
+char *strendzap (char *str, const char *pat);
+void lt_fatal (const char *message, ...);
+void lt_setenv (const char *name, const char *value);
+char *lt_extend_str (const char *orig_value, const char *add, int to_end);
+void lt_opt_process_env_set (const char *arg);
+void lt_opt_process_env_prepend (const char *arg);
+void lt_opt_process_env_append (const char *arg);
+int lt_split_name_value (const char *arg, char** name, char** value);
+void lt_update_exe_path (const char *name, const char *value);
+void lt_update_lib_path (const char *name, const char *value);
+
+static const char *script_text_part1 =
+EOF
+
+	    func_emit_wrapper_part1 yes |
+	        $SED -e 's/\([\\"]\)/\\\1/g' \
+	             -e 's/^/  "/' -e 's/$/\\n"/'
+	    echo ";"
+	    cat <<EOF
+
+static const char *script_text_part2 =
+EOF
+	    func_emit_wrapper_part2 yes |
+	        $SED -e 's/\([\\"]\)/\\\1/g' \
+	             -e 's/^/  "/' -e 's/$/\\n"/'
+	    echo ";"
+
+	    cat <<EOF
+const char * MAGIC_EXE = "$magic_exe";
+const char * LIB_PATH_VARNAME = "$shlibpath_var";
+EOF
+
+	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+              func_to_host_pathlist "$temp_rpath"
+	      cat <<EOF
+const char * LIB_PATH_VALUE   = "$func_to_host_pathlist_result";
+EOF
+	    else
+	      cat <<"EOF"
+const char * LIB_PATH_VALUE   = "";
+EOF
+	    fi
+
+	    if test -n "$dllsearchpath"; then
+              func_to_host_pathlist "$dllsearchpath:"
+	      cat <<EOF
+const char * EXE_PATH_VARNAME = "PATH";
+const char * EXE_PATH_VALUE   = "$func_to_host_pathlist_result";
+EOF
+	    else
+	      cat <<"EOF"
+const char * EXE_PATH_VARNAME = "";
+const char * EXE_PATH_VALUE   = "";
+EOF
+	    fi
+
+	    if test "$fast_install" = yes; then
+	      cat <<EOF
+const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
+EOF
+	    else
+	      cat <<EOF
+const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
+EOF
+	    fi
+
+
+	    cat <<"EOF"
+
+#define LTWRAPPER_OPTION_PREFIX         "--lt-"
+#define LTWRAPPER_OPTION_PREFIX_LENGTH  5
+
+static const size_t opt_prefix_len         = LTWRAPPER_OPTION_PREFIX_LENGTH;
+static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
+
+static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";
+
+static const size_t env_set_opt_len     = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;
+static const char *env_set_opt          = LTWRAPPER_OPTION_PREFIX "env-set";
+  /* argument is putenv-style "foo=bar", value of foo is set to bar */
+
+static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;
+static const char *env_prepend_opt      = LTWRAPPER_OPTION_PREFIX "env-prepend";
+  /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */
+
+static const size_t env_append_opt_len  = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;
+static const char *env_append_opt       = LTWRAPPER_OPTION_PREFIX "env-append";
+  /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */
+
+int
+main (int argc, char *argv[])
+{
+  char **newargz;
+  int  newargc;
+  char *tmp_pathspec;
+  char *actual_cwrapper_path;
+  char *actual_cwrapper_name;
+  char *target_name;
+  char *lt_argv_zero;
+  intptr_t rval = 127;
+
+  int i;
+
+  program_name = (char *) xstrdup (base_name (argv[0]));
+  LTWRAPPER_DEBUGPRINTF (("(main) argv[0]      : %s\n", argv[0]));
+  LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name));
+
+  /* very simple arg parsing; don't want to rely on getopt */
+  for (i = 1; i < argc; i++)
+    {
+      if (strcmp (argv[i], dumpscript_opt) == 0)
+	{
+EOF
+	    case "$host" in
+	      *mingw* | *cygwin* )
+		# make stdout use "unix" line endings
+		echo "          setmode(1,_O_BINARY);"
+		;;
+	      esac
+
+	    cat <<"EOF"
+	  printf ("%s", script_text_part1);
+	  printf ("%s", script_text_part2);
+	  return 0;
+	}
+    }
+
+  newargz = XMALLOC (char *, argc + 1);
+  tmp_pathspec = find_executable (argv[0]);
+  if (tmp_pathspec == NULL)
+    lt_fatal ("Couldn't find %s", argv[0]);
+  LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n",
+			  tmp_pathspec));
+
+  actual_cwrapper_path = chase_symlinks (tmp_pathspec);
+  LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n",
+			  actual_cwrapper_path));
+  XFREE (tmp_pathspec);
+
+  actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));
+  strendzap (actual_cwrapper_path, actual_cwrapper_name);
+
+  /* wrapper name transforms */
+  strendzap (actual_cwrapper_name, ".exe");
+  tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
+  XFREE (actual_cwrapper_name);
+  actual_cwrapper_name = tmp_pathspec;
+  tmp_pathspec = 0;
+
+  /* target_name transforms -- use actual target program name; might have lt- prefix */
+  target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
+  strendzap (target_name, ".exe");
+  tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
+  XFREE (target_name);
+  target_name = tmp_pathspec;
+  tmp_pathspec = 0;
+
+  LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n",
+			  target_name));
+EOF
+
+	    cat <<EOF
+  newargz[0] =
+    XMALLOC (char, (strlen (actual_cwrapper_path) +
+		    strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
+  strcpy (newargz[0], actual_cwrapper_path);
+  strcat (newargz[0], "$objdir");
+  strcat (newargz[0], "/");
+EOF
+
+	    cat <<"EOF"
+  /* stop here, and copy so we don't have to do this twice */
+  tmp_pathspec = xstrdup (newargz[0]);
+
+  /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
+  strcat (newargz[0], actual_cwrapper_name);
+
+  /* DO want the lt- prefix here if it exists, so use target_name */
+  lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
+  XFREE (tmp_pathspec);
+  tmp_pathspec = NULL;
+EOF
+
+	    case $host_os in
+	      mingw*)
+	    cat <<"EOF"
+  {
+    char* p;
+    while ((p = strchr (newargz[0], '\\')) != NULL)
+      {
+	*p = '/';
+      }
+    while ((p = strchr (lt_argv_zero, '\\')) != NULL)
+      {
+	*p = '/';
+      }
+  }
+EOF
+	    ;;
+	    esac
+
+	    cat <<"EOF"
+  XFREE (target_name);
+  XFREE (actual_cwrapper_path);
+  XFREE (actual_cwrapper_name);
+
+  lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
+  lt_setenv ("DUALCASE", "1");  /* for MSK sh */
+  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
+  lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
+
+  newargc=0;
+  for (i = 1; i < argc; i++)
+    {
+      if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0)
+        {
+          if (argv[i][env_set_opt_len] == '=')
+            {
+              const char *p = argv[i] + env_set_opt_len + 1;
+              lt_opt_process_env_set (p);
+            }
+          else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc)
+            {
+              lt_opt_process_env_set (argv[++i]); /* don't copy */
+            }
+          else
+            lt_fatal ("%s missing required argument", env_set_opt);
+          continue;
+        }
+      if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0)
+        {
+          if (argv[i][env_prepend_opt_len] == '=')
+            {
+              const char *p = argv[i] + env_prepend_opt_len + 1;
+              lt_opt_process_env_prepend (p);
+            }
+          else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc)
+            {
+              lt_opt_process_env_prepend (argv[++i]); /* don't copy */
+            }
+          else
+            lt_fatal ("%s missing required argument", env_prepend_opt);
+          continue;
+        }
+      if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0)
+        {
+          if (argv[i][env_append_opt_len] == '=')
+            {
+              const char *p = argv[i] + env_append_opt_len + 1;
+              lt_opt_process_env_append (p);
+            }
+          else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc)
+            {
+              lt_opt_process_env_append (argv[++i]); /* don't copy */
+            }
+          else
+            lt_fatal ("%s missing required argument", env_append_opt);
+          continue;
+        }
+      if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0)
+        {
+          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
+             namespace, but it is not one of the ones we know about and
+             have already dealt with, above (inluding dump-script), then
+             report an error. Otherwise, targets might begin to believe
+             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
+             namespace. The first time any user complains about this, we'll
+             need to make LTWRAPPER_OPTION_PREFIX a configure-time option
+             or a configure.ac-settable value.
+           */
+          lt_fatal ("Unrecognized option in %s namespace: '%s'",
+                    ltwrapper_option_prefix, argv[i]);
+        }
+      /* otherwise ... */
+      newargz[++newargc] = xstrdup (argv[i]);
+    }
+  newargz[++newargc] = NULL;
+
+  LTWRAPPER_DEBUGPRINTF     (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>")));
+  for (i = 0; i < newargc; i++)
+    {
+      LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d]   : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>")));
+    }
+
+EOF
+
+	    case $host_os in
+	      mingw*)
+		cat <<"EOF"
+  /* execv doesn't actually work on mingw as expected on unix */
+  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
+  if (rval == -1)
+    {
+      /* failed to start process */
+      LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno));
+      return 127;
+    }
+  return rval;
+EOF
+		;;
+	      *)
+		cat <<"EOF"
+  execv (lt_argv_zero, newargz);
+  return rval; /* =127, but avoids unused variable warning */
+EOF
+		;;
+	    esac
+
+	    cat <<"EOF"
+}
+
+void *
+xmalloc (size_t num)
+{
+  void *p = (void *) malloc (num);
+  if (!p)
+    lt_fatal ("Memory exhausted");
+
+  return p;
+}
+
+char *
+xstrdup (const char *string)
+{
+  return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
+			  string) : NULL;
+}
+
+const char *
+base_name (const char *name)
+{
+  const char *base;
+
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+  /* Skip over the disk name in MSDOS pathnames. */
+  if (isalpha ((unsigned char) name[0]) && name[1] == ':')
+    name += 2;
+#endif
+
+  for (base = name; *name; name++)
+    if (IS_DIR_SEPARATOR (*name))
+      base = name + 1;
+  return base;
+}
+
+int
+check_executable (const char *path)
+{
+  struct stat st;
+
+  LTWRAPPER_DEBUGPRINTF (("(check_executable)  : %s\n",
+			  path ? (*path ? path : "EMPTY!") : "NULL!"));
+  if ((!path) || (!*path))
+    return 0;
+
+  if ((stat (path, &st) >= 0)
+      && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
+    return 1;
+  else
+    return 0;
+}
+
+int
+make_executable (const char *path)
+{
+  int rval = 0;
+  struct stat st;
+
+  LTWRAPPER_DEBUGPRINTF (("(make_executable)   : %s\n",
+			  path ? (*path ? path : "EMPTY!") : "NULL!"));
+  if ((!path) || (!*path))
+    return 0;
+
+  if (stat (path, &st) >= 0)
+    {
+      rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
+    }
+  return rval;
+}
+
+/* Searches for the full path of the wrapper.  Returns
+   newly allocated full path name if found, NULL otherwise
+   Does not chase symlinks, even on platforms that support them.
+*/
+char *
+find_executable (const char *wrapper)
+{
+  int has_slash = 0;
+  const char *p;
+  const char *p_next;
+  /* static buffer for getcwd */
+  char tmp[LT_PATHMAX + 1];
+  int tmp_len;
+  char *concat_name;
+
+  LTWRAPPER_DEBUGPRINTF (("(find_executable)   : %s\n",
+			  wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));
+
+  if ((wrapper == NULL) || (*wrapper == '\0'))
+    return NULL;
+
+  /* Absolute path? */
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+  if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
+    {
+      concat_name = xstrdup (wrapper);
+      if (check_executable (concat_name))
+	return concat_name;
+      XFREE (concat_name);
+    }
+  else
+    {
+#endif
+      if (IS_DIR_SEPARATOR (wrapper[0]))
+	{
+	  concat_name = xstrdup (wrapper);
+	  if (check_executable (concat_name))
+	    return concat_name;
+	  XFREE (concat_name);
+	}
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+    }
+#endif
+
+  for (p = wrapper; *p; p++)
+    if (*p == '/')
+      {
+	has_slash = 1;
+	break;
+      }
+  if (!has_slash)
+    {
+      /* no slashes; search PATH */
+      const char *path = getenv ("PATH");
+      if (path != NULL)
+	{
+	  for (p = path; *p; p = p_next)
+	    {
+	      const char *q;
+	      size_t p_len;
+	      for (q = p; *q; q++)
+		if (IS_PATH_SEPARATOR (*q))
+		  break;
+	      p_len = q - p;
+	      p_next = (*q == '\0' ? q : q + 1);
+	      if (p_len == 0)
+		{
+		  /* empty path: current directory */
+		  if (getcwd (tmp, LT_PATHMAX) == NULL)
+		    lt_fatal ("getcwd failed");
+		  tmp_len = strlen (tmp);
+		  concat_name =
+		    XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+		  memcpy (concat_name, tmp, tmp_len);
+		  concat_name[tmp_len] = '/';
+		  strcpy (concat_name + tmp_len + 1, wrapper);
+		}
+	      else
+		{
+		  concat_name =
+		    XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
+		  memcpy (concat_name, p, p_len);
+		  concat_name[p_len] = '/';
+		  strcpy (concat_name + p_len + 1, wrapper);
+		}
+	      if (check_executable (concat_name))
+		return concat_name;
+	      XFREE (concat_name);
+	    }
+	}
+      /* not found in PATH; assume curdir */
+    }
+  /* Relative path | not found in path: prepend cwd */
+  if (getcwd (tmp, LT_PATHMAX) == NULL)
+    lt_fatal ("getcwd failed");
+  tmp_len = strlen (tmp);
+  concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+  memcpy (concat_name, tmp, tmp_len);
+  concat_name[tmp_len] = '/';
+  strcpy (concat_name + tmp_len + 1, wrapper);
+
+  if (check_executable (concat_name))
+    return concat_name;
+  XFREE (concat_name);
+  return NULL;
+}
+
+char *
+chase_symlinks (const char *pathspec)
+{
+#ifndef S_ISLNK
+  return xstrdup (pathspec);
+#else
+  char buf[LT_PATHMAX];
+  struct stat s;
+  char *tmp_pathspec = xstrdup (pathspec);
+  char *p;
+  int has_symlinks = 0;
+  while (strlen (tmp_pathspec) && !has_symlinks)
+    {
+      LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n",
+			      tmp_pathspec));
+      if (lstat (tmp_pathspec, &s) == 0)
+	{
+	  if (S_ISLNK (s.st_mode) != 0)
+	    {
+	      has_symlinks = 1;
+	      break;
+	    }
+
+	  /* search backwards for last DIR_SEPARATOR */
+	  p = tmp_pathspec + strlen (tmp_pathspec) - 1;
+	  while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+	    p--;
+	  if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+	    {
+	      /* no more DIR_SEPARATORS left */
+	      break;
+	    }
+	  *p = '\0';
+	}
+      else
+	{
+	  char *errstr = strerror (errno);
+	  lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);
+	}
+    }
+  XFREE (tmp_pathspec);
+
+  if (!has_symlinks)
+    {
+      return xstrdup (pathspec);
+    }
+
+  tmp_pathspec = realpath (pathspec, buf);
+  if (tmp_pathspec == 0)
+    {
+      lt_fatal ("Could not follow symlinks for %s", pathspec);
+    }
+  return xstrdup (tmp_pathspec);
+#endif
+}
+
+char *
+strendzap (char *str, const char *pat)
+{
+  size_t len, patlen;
+
+  assert (str != NULL);
+  assert (pat != NULL);
+
+  len = strlen (str);
+  patlen = strlen (pat);
+
+  if (patlen <= len)
+    {
+      str += len - patlen;
+      if (strcmp (str, pat) == 0)
+	*str = '\0';
+    }
+  return str;
+}
+
+static void
+lt_error_core (int exit_status, const char *mode,
+	       const char *message, va_list ap)
+{
+  fprintf (stderr, "%s: %s: ", program_name, mode);
+  vfprintf (stderr, message, ap);
+  fprintf (stderr, ".\n");
+
+  if (exit_status >= 0)
+    exit (exit_status);
+}
+
+void
+lt_fatal (const char *message, ...)
+{
+  va_list ap;
+  va_start (ap, message);
+  lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
+  va_end (ap);
+}
+
+void
+lt_setenv (const char *name, const char *value)
+{
+  LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n",
+                          (name ? name : "<NULL>"),
+                          (value ? value : "<NULL>")));
+  {
+#ifdef HAVE_SETENV
+    /* always make a copy, for consistency with !HAVE_SETENV */
+    char *str = xstrdup (value);
+    setenv (name, str, 1);
+#else
+    int len = strlen (name) + 1 + strlen (value) + 1;
+    char *str = XMALLOC (char, len);
+    sprintf (str, "%s=%s", name, value);
+    if (putenv (str) != EXIT_SUCCESS)
+      {
+        XFREE (str);
+      }
+#endif
+  }
+}
+
+char *
+lt_extend_str (const char *orig_value, const char *add, int to_end)
+{
+  char *new_value;
+  if (orig_value && *orig_value)
+    {
+      int orig_value_len = strlen (orig_value);
+      int add_len = strlen (add);
+      new_value = XMALLOC (char, add_len + orig_value_len + 1);
+      if (to_end)
+        {
+          strcpy (new_value, orig_value);
+          strcpy (new_value + orig_value_len, add);
+        }
+      else
+        {
+          strcpy (new_value, add);
+          strcpy (new_value + add_len, orig_value);
+        }
+    }
+  else
+    {
+      new_value = xstrdup (add);
+    }
+  return new_value;
+}
+
+int
+lt_split_name_value (const char *arg, char** name, char** value)
+{
+  const char *p;
+  int len;
+  if (!arg || !*arg)
+    return 1;
+
+  p = strchr (arg, (int)'=');
+
+  if (!p)
+    return 1;
+
+  *value = xstrdup (++p);
+
+  len = strlen (arg) - strlen (*value);
+  *name = XMALLOC (char, len);
+  strncpy (*name, arg, len-1);
+  (*name)[len - 1] = '\0';
+
+  return 0;
+}
+
+void
+lt_opt_process_env_set (const char *arg)
+{
+  char *name = NULL;
+  char *value = NULL;
+
+  if (lt_split_name_value (arg, &name, &value) != 0)
+    {
+      XFREE (name);
+      XFREE (value);
+      lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg);
+    }
+
+  lt_setenv (name, value);
+  XFREE (name);
+  XFREE (value);
+}
+
+void
+lt_opt_process_env_prepend (const char *arg)
+{
+  char *name = NULL;
+  char *value = NULL;
+  char *new_value = NULL;
+
+  if (lt_split_name_value (arg, &name, &value) != 0)
+    {
+      XFREE (name);
+      XFREE (value);
+      lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg);
+    }
+
+  new_value = lt_extend_str (getenv (name), value, 0);
+  lt_setenv (name, new_value);
+  XFREE (new_value);
+  XFREE (name);
+  XFREE (value);
+}
+
+void
+lt_opt_process_env_append (const char *arg)
+{
+  char *name = NULL;
+  char *value = NULL;
+  char *new_value = NULL;
+
+  if (lt_split_name_value (arg, &name, &value) != 0)
+    {
+      XFREE (name);
+      XFREE (value);
+      lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg);
+    }
+
+  new_value = lt_extend_str (getenv (name), value, 1);
+  lt_setenv (name, new_value);
+  XFREE (new_value);
+  XFREE (name);
+  XFREE (value);
+}
+
+void
+lt_update_exe_path (const char *name, const char *value)
+{
+  LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
+                          (name ? name : "<NULL>"),
+                          (value ? value : "<NULL>")));
+
+  if (name && *name && value && *value)
+    {
+      char *new_value = lt_extend_str (getenv (name), value, 0);
+      /* some systems can't cope with a ':'-terminated path #' */
+      int len = strlen (new_value);
+      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
+        {
+          new_value[len-1] = '\0';
+        }
+      lt_setenv (name, new_value);
+      XFREE (new_value);
+    }
+}
+
+void
+lt_update_lib_path (const char *name, const char *value)
+{
+  LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
+                          (name ? name : "<NULL>"),
+                          (value ? value : "<NULL>")));
+
+  if (name && *name && value && *value)
+    {
+      char *new_value = lt_extend_str (getenv (name), value, 0);
+      lt_setenv (name, new_value);
+      XFREE (new_value);
+    }
+}
+
+
+EOF
+}
+# end: func_emit_cwrapperexe_src
+
 # func_mode_link arg...
 func_mode_link ()
 {
     $opt_debug
     case $host in
-    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
       # It is impossible to link a dll without this setting, and
       # we shouldn't force the makefile maintainer to figure out
       # which system we are compiling for in order to pass an extra
@@ -2681,9 +4120,6 @@
 	  fi
 	  if test -n "$link_static_flag"; then
 	    dlopen_self=$dlopen_self_static
-	    # See comment for -static flag below, for more details.
-	    func_append compile_command " $link_static_flag"
-	    func_append finalize_command " $link_static_flag"
 	  fi
 	  prefer_static_libs=yes
 	  ;;
@@ -2789,7 +4225,7 @@
 		   ;;
 	      esac
 	      ;;
-   	  esac
+	  esac
 	  prev=
 	  continue
 	  ;;
@@ -2927,7 +4363,7 @@
 	  continue
 	  ;;
 	shrext)
-  	  shrext_cmds="$arg"
+	  shrext_cmds="$arg"
 	  prev=
 	  continue
 	  ;;
@@ -2971,7 +4407,11 @@
 
       case $arg in
       -all-static)
-	# The effects of -all-static are defined in a previous loop.
+	if test -n "$link_static_flag"; then
+	  # See comment for -static flag below, for more details.
+	  func_append compile_command " $link_static_flag"
+	  func_append finalize_command " $link_static_flag"
+	fi
 	continue
 	;;
 
@@ -3037,6 +4477,13 @@
       -L*)
 	func_stripname '-L' '' "$arg"
 	dir=$func_stripname_result
+	if test -z "$dir"; then
+	  if test "$#" -gt 0; then
+	    func_fatal_error "require no space between \`-L' and \`$1'"
+	  else
+	    func_fatal_error "need path for \`-L' option"
+	  fi
+	fi
 	# We need an absolute path.
 	case $dir in
 	[\\/]* | [A-Za-z]:[\\/]*) ;;
@@ -3055,14 +4502,16 @@
 	  ;;
 	esac
 	case $host in
-	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
 	  testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
 	  case :$dllsearchpath: in
 	  *":$dir:"*) ;;
+	  ::) dllsearchpath=$dir;;
 	  *) dllsearchpath="$dllsearchpath:$dir";;
 	  esac
 	  case :$dllsearchpath: in
 	  *":$testbindir:"*) ;;
+	  ::) dllsearchpath=$testbindir;;
 	  *) dllsearchpath="$dllsearchpath:$testbindir";;
 	  esac
 	  ;;
@@ -3073,7 +4522,7 @@
       -l*)
 	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
 	  case $host in
-	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
+	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)
 	    # These systems don't actually have a C or math library (as such)
 	    continue
 	    ;;
@@ -3150,9 +4599,9 @@
 
       -no-install)
 	case $host in
-	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
 	  # The PATH hackery in wrapper scripts is required on Windows
-	  # in order for the loader to find any dlls it needs.
+	  # and Darwin in order for the loader to find any dlls it needs.
 	  func_warning "\`-no-install' is ignored for $host"
 	  func_warning "assuming \`-no-fast-install' instead"
 	  fast_install=no
@@ -3299,6 +4748,12 @@
 	continue
 	;;
 
+      # -msg_* for osf cc
+      -msg_*)
+	func_quote_for_eval "$arg"
+	arg="$func_quote_for_eval_result"
+	;;
+
       # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
       # -r[0-9][0-9]* specifies the processor on the SGI compiler
       # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
@@ -3634,7 +5089,12 @@
 	  fi
 	  func_stripname '-l' '' "$deplib"
 	  name=$func_stripname_result
-	  for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
+	  if test "$linkmode" = lib; then
+	    searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
+	  else
+	    searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
+	  fi
+	  for searchdir in $searchdirs; do
 	    for search_ext in .la $std_shrext .so .a; do
 	      # Search the libtool library
 	      lib="$searchdir/lib${name}${search_ext}"
@@ -3867,12 +5327,6 @@
 	  done
 	fi
 	dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
-	if test "$linkmode,$pass" = "prog,link"; then
-	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
-	  finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
-	else
-	  compiler_flags="$compiler_flags $inherited_linker_flags"
-	fi
 	if test "$linkmode,$pass" = "lib,link" ||
 	   test "$linkmode,$pass" = "prog,scan" ||
 	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
@@ -4102,7 +5556,7 @@
 	if test -n "$library_names" &&
 	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
 	  case $host in
-	  *cygwin* | *mingw*)
+	  *cygwin* | *mingw* | *cegcc*)
 	      # No point in relinking DLLs because paths are not encoded
 	      notinst_deplibs="$notinst_deplibs $lib"
 	      need_relink=no
@@ -4172,8 +5626,9 @@
 	    elif test -n "$soname_spec"; then
 	      # bleh windows
 	      case $host in
-	      *cygwin* | mingw*)
-		major=`expr $current - $age`
+	      *cygwin* | mingw* | *cegcc*)
+	        func_arith $current - $age
+		major=$func_arith_result
 		versuffix="-$major"
 		;;
 	      esac
@@ -4192,13 +5647,13 @@
 	    # If the library has no export list, then create one now
 	    if test -f "$output_objdir/$soname-def"; then :
 	    else
-	      func_echo "extracting exported symbol list from \`$soname'"
+	      func_verbose "extracting exported symbol list from \`$soname'"
 	      func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
 	    fi
 
 	    # Create $newlib
 	    if test -f "$output_objdir/$newlib"; then :; else
-	      func_echo "generating import library for \`$soname'"
+	      func_verbose "generating import library for \`$soname'"
 	      func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
 	    fi
 	    # make sure the library variables are pointing to the new library
@@ -4465,11 +5920,9 @@
 		    done
 		    if test -f "$absdir/$objdir/$depdepl" ; then
 		      depdepl="$absdir/$objdir/$depdepl"
-		      darwin_install_name=`otool -L $depdepl | $SED -n -e '3q;2,2p' | $SED -e 's/(.*//'`
-		      darwin_install_name=`$ECHO $darwin_install_name`
+		      darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
                       if test -z "$darwin_install_name"; then
-                          darwin_install_name=`otool64 -L $depdepl | $SED -n -e '3q;2,2p' | $SED -e 's/(.*//'`
-                          darwin_install_name=`$ECHO $darwin_install_name`
+                          darwin_install_name=`${OTOOL64} -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
                       fi
 		      compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
 		      linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}"
@@ -4500,6 +5953,14 @@
 	  fi # link_all_deplibs != no
 	fi # linkmode = lib
       done # for deplib in $libs
+      if test "$pass" = link; then
+	if test "$linkmode" = "prog"; then
+	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
+	  finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
+	else
+	  compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+	fi
+      fi
       dependency_libs="$newdependency_libs"
       if test "$pass" = dlpreopen; then
 	# Link the dlpreopened libraries before other libraries
@@ -4609,9 +6070,10 @@
 	func_warning "\`-dlopen' is ignored for archives"
       fi
 
-      test -n "$deplibs" && \
-	func_warning "\`-l' and \`-L' are ignored for archives"
-
+      case " $deplibs" in
+      *\ -l* | *\ -L*)
+	func_warning "\`-l' and \`-L' are ignored for archives" ;;
+      esac
 
       test -n "$rpath" && \
 	func_warning "\`-rpath' is ignored for archives"
@@ -4727,7 +6189,8 @@
 	  #
 	  case $version_type in
 	  darwin|linux|osf|windows|none)
-	    current=`expr $number_major + $number_minor`
+	    func_arith $number_major + $number_minor
+	    current=$func_arith_result
 	    age="$number_minor"
 	    revision="$number_revision"
 	    ;;
@@ -4737,9 +6200,11 @@
 	    age="0"
 	    ;;
 	  irix|nonstopux)
-	    current=`expr $number_major + $number_minor - 1`
+	    func_arith $number_major + $number_minor
+	    current=$func_arith_result
 	    age="$number_minor"
 	    revision="$number_minor"
+	    lt_irix_increment=no
 	    ;;
 	  esac
 	  ;;
@@ -4790,10 +6255,13 @@
 	darwin)
 	  # Like Linux, but with the current version available in
 	  # verstring for coding it into the library header
-	  major=.`expr $current - $age`
+	  func_arith $current - $age
+	  major=.$func_arith_result
 	  versuffix="$major.$age.$revision"
 	  # Darwin ld doesn't like 0 for these options...
-	  minor_current=`expr $current + 1`
+	  func_arith $current + 1
+	  minor_current=$func_arith_result
+	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
 	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
 	  ;;
 
@@ -4808,7 +6276,12 @@
 	  ;;
 
 	irix | nonstopux)
-	  major=`expr $current - $age + 1`
+	  if test "X$lt_irix_increment" = "Xno"; then
+	    func_arith $current - $age
+	  else
+	    func_arith $current - $age + 1
+	  fi
+	  major=$func_arith_result
 
 	  case $version_type in
 	    nonstopux) verstring_prefix=nonstopux ;;
@@ -4819,8 +6292,10 @@
 	  # Add in all the interfaces that we are compatible with.
 	  loop=$revision
 	  while test "$loop" -ne 0; do
-	    iface=`expr $revision - $loop`
-	    loop=`expr $loop - 1`
+	    func_arith $revision - $loop
+	    iface=$func_arith_result
+	    func_arith $loop - 1
+	    loop=$func_arith_result
 	    verstring="$verstring_prefix$major.$iface:$verstring"
 	  done
 
@@ -4830,20 +6305,24 @@
 	  ;;
 
 	linux)
-	  major=.`expr $current - $age`
+	  func_arith $current - $age
+	  major=.$func_arith_result
 	  versuffix="$major.$age.$revision"
 	  ;;
 
 	osf)
-	  major=.`expr $current - $age`
+	  func_arith $current - $age
+	  major=.$func_arith_result
 	  versuffix=".$current.$age.$revision"
 	  verstring="$current.$age.$revision"
 
 	  # Add in all the interfaces that we are compatible with.
 	  loop=$age
 	  while test "$loop" -ne 0; do
-	    iface=`expr $current - $loop`
-	    loop=`expr $loop - 1`
+	    func_arith $current - $loop
+	    iface=$func_arith_result
+	    func_arith $loop - 1
+	    loop=$func_arith_result
 	    verstring="$verstring:${iface}.0"
 	  done
 
@@ -4864,7 +6343,8 @@
 	windows)
 	  # Use '-' rather than '.', since we only want one
 	  # extension on DOS 8.3 filesystems.
-	  major=`expr $current - $age`
+	  func_arith $current - $age
+	  major=$func_arith_result
 	  versuffix="-$major"
 	  ;;
 
@@ -4925,7 +6405,7 @@
 	tempremovelist=`$ECHO "$output_objdir/*"`
 	for p in $tempremovelist; do
 	  case $p in
-	    *.$objext)
+	    *.$objext | *.gcno)
 	       ;;
 	    $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
 	       if test "X$precious_files_regex" != "X"; then
@@ -4996,7 +6476,7 @@
       if test "$build_libtool_libs" = yes; then
 	if test -n "$rpath"; then
 	  case $host in
-	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
+	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)
 	    # these systems don't actually have a c library (as such)!
 	    ;;
 	  *-*-rhapsody* | *-*-darwin1.[012])
@@ -5014,8 +6494,8 @@
 	    ;;
 	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
 	    # Compiler inserts libc in the correct place for threads to work
- 	    ;;
- 	  *)
+	    ;;
+	  *)
 	    # Add libc to deplibs on all other systems if necessary.
 	    if test "$build_libtool_need_lc" = "yes"; then
 	      deplibs="$deplibs -lc"
@@ -5060,9 +6540,10 @@
 	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
 	    ldd_output=`ldd conftest`
 	    for i in $deplibs; do
-	      name=`expr $i : '-l\(.*\)'`
-	      # If $name is empty we are operating on a -L argument.
-	      if test "$name" != "" && test "$name" != "0"; then
+	      case $i in
+	      -l*)
+		func_stripname -l '' "$i"
+		name=$func_stripname_result
 		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
 		  case " $predeps $postdeps " in
 		  *" $i "*)
@@ -5089,17 +6570,20 @@
 		    $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."
 		  fi
 		fi
-	      else
+		;;
+	      *)
 		newdeplibs="$newdeplibs $i"
-	      fi
+		;;
+	      esac
 	    done
 	  else
 	    # Error occurred in the first compile.  Let's try to salvage
 	    # the situation: Compile a separate program for each library.
 	    for i in $deplibs; do
-	      name=`expr $i : '-l\(.*\)'`
-	      # If $name is empty we are operating on a -L argument.
-	      if test "$name" != "" && test "$name" != "0"; then
+	      case $i in
+	      -l*)
+		func_stripname -l '' "$i"
+		name=$func_stripname_result
 		$opt_dry_run || $RM conftest
 		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
 		  ldd_output=`ldd conftest`
@@ -5137,9 +6621,11 @@
 		  $ECHO "*** library that it depends on before this library will be fully"
 		  $ECHO "*** functional.  Installing it before continuing would be even better."
 		fi
-	      else
+		;;
+	      *)
 		newdeplibs="$newdeplibs $i"
-	      fi
+		;;
+	      esac
 	    done
 	  fi
 	  ;;
@@ -5147,9 +6633,10 @@
 	  set dummy $deplibs_check_method; shift
 	  file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
 	  for a_deplib in $deplibs; do
-	    name=`expr $a_deplib : '-l\(.*\)'`
-	    # If $name is empty we are operating on a -L argument.
-	    if test "$name" != "" && test  "$name" != "0"; then
+	    case $a_deplib in
+	    -l*)
+	      func_stripname -l '' "$a_deplib"
+	      name=$func_stripname_result
 	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
 		case " $predeps $postdeps " in
 		*" $a_deplib "*)
@@ -5206,19 +6693,22 @@
 		  $ECHO "*** using a file magic. Last file checked: $potlib"
 		fi
 	      fi
-	    else
+	      ;;
+	    *)
 	      # Add a -L argument.
 	      newdeplibs="$newdeplibs $a_deplib"
-	    fi
+	      ;;
+	    esac
 	  done # Gone through all deplibs.
 	  ;;
 	match_pattern*)
 	  set dummy $deplibs_check_method; shift
 	  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
 	  for a_deplib in $deplibs; do
-	    name=`expr $a_deplib : '-l\(.*\)'`
-	    # If $name is empty we are operating on a -L argument.
-	    if test -n "$name" && test "$name" != "0"; then
+	    case $a_deplib in
+	    -l*)
+	      func_stripname -l '' "$a_deplib"
+	      name=$func_stripname_result
 	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
 		case " $predeps $postdeps " in
 		*" $a_deplib "*)
@@ -5257,10 +6747,12 @@
 		  $ECHO "*** using a regex pattern. Last file checked: $potlib"
 		fi
 	      fi
-	    else
+	      ;;
+	    *)
 	      # Add a -L argument.
 	      newdeplibs="$newdeplibs $a_deplib"
-	    fi
+	      ;;
+	    esac
 	  done # Gone through all deplibs.
 	  ;;
 	none | unknown | *)
@@ -5273,7 +6765,7 @@
 	      tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`
 	    done
 	  fi
-	  if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ 	]//g' |
+	  if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[	 ]//g' |
 	     $GREP . >/dev/null; then
 	    $ECHO
 	    if test "X$deplibs_check_method" = "Xnone"; then
@@ -5483,7 +6975,7 @@
 
 	orig_export_symbols=
 	case $host_os in
-	cygwin* | mingw*)
+	cygwin* | mingw* | cegcc*)
 	  if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
 	    # exporting using user supplied symfile
 	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
@@ -5504,7 +6996,7 @@
 	# Prepare the list of exported symbols
 	if test -z "$export_symbols"; then
 	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
-	    func_echo "generating symbol list for \`$libname.la'"
+	    func_verbose "generating symbol list for \`$libname.la'"
 	    export_symbols="$output_objdir/$libname.exp"
 	    $opt_dry_run || $RM $export_symbols
 	    cmds=$export_symbols_cmds
@@ -5512,13 +7004,14 @@
 	    for cmd in $cmds; do
 	      IFS="$save_ifs"
 	      eval cmd=\"$cmd\"
-	      if len=`expr "X$cmd" : ".*"` &&
-	       test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+	      func_len " $cmd"
+	      len=$func_len_result
+	      if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
 		func_show_eval "$cmd" 'exit $?'
 		skipped_export=false
 	      else
 		# The command line is too long to execute in one step.
-		func_echo "using reloadable object file for export list..."
+		func_verbose "using reloadable object file for export list..."
 		skipped_export=:
 		# Break out early, otherwise skipped_export may be
 		# set to false by a later but shorter cmd.
@@ -5541,7 +7034,7 @@
 
 	if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
 	  # The given exports_symbols file has to be filtered, so filter it.
-	  func_echo "filter symbol list for \`$libname.la' to tag DATA exports"
+	  func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
 	  # FIXME: $output_objdir/$libname.filter potentially contains lots of
 	  # 's' commands which not all seds can handle. GNU sed should be fine
 	  # though. Also, the filter scales superlinearly with the number of
@@ -5616,8 +7109,9 @@
 	fi
 
 	if test "X$skipped_export" != "X:" &&
-	   len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
-	   test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+	   func_len " $test_cmds" &&
+	   len=$func_len_result &&
+	   test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
 	  :
 	else
 	  # The command line is too long to link in one step, link piecewise
@@ -5648,7 +7142,7 @@
 
 	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
 	    output=${output_objdir}/${output_la}.lnkscript
-	    func_echo "creating GNU ld script: $output"
+	    func_verbose "creating GNU ld script: $output"
 	    $ECHO 'INPUT (' > $output
 	    for obj in $save_libobjs
 	    do
@@ -5658,7 +7152,7 @@
 	    delfiles="$delfiles $output"
 	  elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
 	    output=${output_objdir}/${output_la}.lnk
-	    func_echo "creating linker input file list: $output"
+	    func_verbose "creating linker input file list: $output"
 	    : > $output
 	    set x $save_libobjs
 	    shift
@@ -5675,16 +7169,22 @@
 	    output=$firstobj\"$file_list_spec$output\"
 	  else
 	    if test -n "$save_libobjs"; then
-	      func_echo "creating reloadable object files..."
+	      func_verbose "creating reloadable object files..."
 	      output=$output_objdir/$output_la-${k}.$objext
+	      eval test_cmds=\"$reload_cmds\"
+	      func_len " $test_cmds"
+	      len0=$func_len_result
+	      len=$len0
+
 	      # Loop over the list of objects to be linked.
 	      for obj in $save_libobjs
 	      do
-		eval test_cmds=\"$reload_cmds $objlist $last_robj\"
+		func_len " $obj"
+		func_arith $len + $func_len_result
+		len=$func_arith_result
 		if test "X$objlist" = X ||
-		   { len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
-		     test "$len" -le "$max_cmd_len"; }; then
-		  objlist="$objlist $obj"
+		   test "$len" -lt "$max_cmd_len"; then
+		  func_append objlist " $obj"
 		else
 		  # The command $test_cmds is almost too long, add a
 		  # command to the queue.
@@ -5694,13 +7194,16 @@
 		  else
 		    # All subsequent reloadable object files will link in
 		    # the last one created.
-		    eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\"
+		    eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\"
 		  fi
 		  last_robj=$output_objdir/$output_la-${k}.$objext
-		  k=`expr $k + 1`
+		  func_arith $k + 1
+		  k=$func_arith_result
 		  output=$output_objdir/$output_la-${k}.$objext
 		  objlist=$obj
-		  len=1
+		  func_len " $last_robj"
+		  func_arith $len0 + $func_len_result
+		  len=$func_arith_result
 		fi
 	      done
 	      # Handle the remaining objects by creating one last
@@ -5708,31 +7211,30 @@
 	      # files will link in the last one created.
 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
 	      eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
+	      if test -n "$last_robj"; then
+	        eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
+	      fi
+	      delfiles="$delfiles $output"
 
-	      # Set up a command to remove the reloadable object files
-	      # after they are used.
-	      i=0
-	      while test "$i" -lt "$k"
-	      do
-		i=`expr $i + 1`
-		delfiles="$delfiles $output_objdir/$output_la-${i}.$objext"
-	      done
 	    else
 	      output=
 	    fi
 
 	    if ${skipped_export-false}; then
-	      func_echo "generating symbol list for \`$libname.la'"
+	      func_verbose "generating symbol list for \`$libname.la'"
 	      export_symbols="$output_objdir/$libname.exp"
 	      $opt_dry_run || $RM $export_symbols
 	      libobjs=$output
 	      # Append the command to create the export file.
 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
 	      eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
+	      if test -n "$last_robj"; then
+		eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
+	      fi
 	    fi
 
 	    test -n "$save_libobjs" &&
-	      func_echo "creating a temporary reloadable object file: $output"
+	      func_verbose "creating a temporary reloadable object file: $output"
 
 	    # Loop through the commands generated above and execute them.
 	    save_ifs="$IFS"; IFS='~'
@@ -5772,7 +7274,7 @@
 
 	    if test -n "$orig_export_symbols"; then
 	      # The given exports_symbols file has to be filtered, so filter it.
-	      func_echo "filter symbol list for \`$libname.la' to tag DATA exports"
+	      func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
 	      # FIXME: $output_objdir/$libname.filter potentially contains lots of
 	      # 's' commands which not all seds can handle. GNU sed should be fine
 	      # though. Also, the filter scales superlinearly with the number of
@@ -5883,8 +7385,10 @@
 	func_warning "\`-dlopen' is ignored for objects"
       fi
 
-      test -n "$deplibs" && \
-	func_warning "\`-l' and \`-L' are ignored for objects"
+      case " $deplibs" in
+      *\ -l* | *\ -L*)
+	func_warning "\`-l' and \`-L' are ignored for objects" ;;
+      esac
 
       test -n "$rpath" && \
 	func_warning "\`-rpath' is ignored for objects"
@@ -6096,14 +7600,16 @@
 	  esac
 	fi
 	case $host in
-	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
 	  testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
 	  case :$dllsearchpath: in
 	  *":$libdir:"*) ;;
+	  ::) dllsearchpath=$libdir;;
 	  *) dllsearchpath="$dllsearchpath:$libdir";;
 	  esac
 	  case :$dllsearchpath: in
 	  *":$testbindir:"*) ;;
+	  ::) dllsearchpath=$testbindir;;
 	  *) dllsearchpath="$dllsearchpath:$testbindir";;
 	  esac
 	  ;;
@@ -6173,6 +7679,10 @@
           wrappers_required=no
         fi
         ;;
+      *cegcc)
+        # Disable wrappers for cegcc, we are cross compiling anyway.
+        wrappers_required=no
+        ;;
       *)
         if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
           wrappers_required=no
@@ -6267,7 +7777,7 @@
       func_show_eval "$link_command" 'exit $?'
 
       # Now create the wrapper script.
-      func_echo "creating $output"
+      func_verbose "creating $output"
 
       # Quote the relink command for shipping.
       if test -n "$relink_command"; then
@@ -6315,553 +7825,46 @@
 	esac
 	case $host in
 	  *cygwin* | *mingw* )
-	    output_name=`basename $output`
-	    output_path=`dirname $output`
+	    func_dirname_and_basename "$output" "" "."
+	    output_name=$func_basename_result
+	    output_path=$func_dirname_result
 	    cwrappersource="$output_path/$objdir/lt-$output_name.c"
 	    cwrapper="$output_path/$output_name.exe"
 	    $RM $cwrappersource $cwrapper
 	    trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
 
-	    cat > $cwrappersource <<EOF
+	    func_emit_cwrapperexe_src > $cwrappersource
 
-/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
-   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+	    # The wrapper executable is built using the $host compiler,
+	    # because it contains $host paths and files. If cross-
+	    # compiling, it, like the target executable, must be
+	    # executed on the $host or under an emulation environment.
+	    $opt_dry_run || {
+	      $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
+	      $STRIP $cwrapper
+	    }
 
-   The $output program cannot be directly executed until all the libtool
-   libraries that it depends on are installed.
+	    # Now, create the wrapper script for func_source use:
+	    func_ltwrapper_scriptname $cwrapper
+	    $RM $func_ltwrapper_scriptname_result
+	    trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
+	    $opt_dry_run || {
+	      # note: this script will not be executed, so do not chmod.
+	      if test "x$build" = "x$host" ; then
+		$cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
+	      else
+		func_emit_wrapper no > $func_ltwrapper_scriptname_result
+	      fi
+	    }
+	  ;;
+	  * )
+	    $RM $output
+	    trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
 
-   This wrapper executable should never be moved out of the build directory.
-   If it is, it will not operate correctly.
-
-   Currently, it simply execs the wrapper *script* "/bin/sh $output",
-   but could eventually absorb all of the scripts functionality and
-   exec $objdir/$outputname directly.
-*/
-EOF
-	    cat >> $cwrappersource<<"EOF"
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <malloc.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <string.h>
-#include <ctype.h>
-#include <sys/stat.h>
-
-#if defined(PATH_MAX)
-# define LT_PATHMAX PATH_MAX
-#elif defined(MAXPATHLEN)
-# define LT_PATHMAX MAXPATHLEN
-#else
-# define LT_PATHMAX 1024
-#endif
-
-#ifndef DIR_SEPARATOR
-# define DIR_SEPARATOR '/'
-# define PATH_SEPARATOR ':'
-#endif
-
-#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
-  defined (__OS2__)
-# define HAVE_DOS_BASED_FILE_SYSTEM
-# ifndef DIR_SEPARATOR_2
-#  define DIR_SEPARATOR_2 '\\'
-# endif
-# ifndef PATH_SEPARATOR_2
-#  define PATH_SEPARATOR_2 ';'
-# endif
-#endif
-
-#ifndef DIR_SEPARATOR_2
-# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
-#else /* DIR_SEPARATOR_2 */
-# define IS_DIR_SEPARATOR(ch) \
-	(((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
-#endif /* DIR_SEPARATOR_2 */
-
-#ifndef PATH_SEPARATOR_2
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
-#else /* PATH_SEPARATOR_2 */
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
-#endif /* PATH_SEPARATOR_2 */
-
-#define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
-#define XFREE(stale) do { \
-  if (stale) { free ((void *) stale); stale = 0; } \
-} while (0)
-
-/* -DDEBUG is fairly common in CFLAGS.  */
-#undef DEBUG
-#if defined DEBUGWRAPPER
-# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__)
-#else
-# define DEBUG(format, ...)
-#endif
-
-const char *program_name = NULL;
-
-void * xmalloc (size_t num);
-char * xstrdup (const char *string);
-const char * base_name (const char *name);
-char * find_executable(const char *wrapper);
-int    check_executable(const char *path);
-char * strendzap(char *str, const char *pat);
-void lt_fatal (const char *message, ...);
-
-int
-main (int argc, char *argv[])
-{
-  char **newargz;
-  int i;
-
-  program_name = (char *) xstrdup (base_name (argv[0]));
-  DEBUG("(main) argv[0]      : %s\n",argv[0]);
-  DEBUG("(main) program_name : %s\n",program_name);
-  newargz = XMALLOC(char *, argc+2);
-EOF
-
-	    cat >> $cwrappersource <<EOF
-  newargz[0] = (char *) xstrdup("$SHELL");
-EOF
-
-	    cat >> $cwrappersource <<"EOF"
-  newargz[1] = find_executable(argv[0]);
-  if (newargz[1] == NULL)
-    lt_fatal("Couldn't find %s", argv[0]);
-  DEBUG("(main) found exe at : %s\n",newargz[1]);
-  /* we know the script has the same name, without the .exe */
-  /* so make sure newargz[1] doesn't end in .exe */
-  strendzap(newargz[1],".exe");
-  for (i = 1; i < argc; i++)
-    newargz[i+1] = xstrdup(argv[i]);
-  newargz[argc+1] = NULL;
-
-  for (i=0; i<argc+1; i++)
-  {
-    DEBUG("(main) newargz[%d]   : %s\n",i,newargz[i]);
-    ;
-  }
-
-EOF
-
-	    case $host_os in
-	      mingw*)
-		cat >> $cwrappersource <<EOF
-  execv("$SHELL",(char const **)newargz);
-EOF
-	      ;;
-	      *)
-		cat >> $cwrappersource <<EOF
-  execv("$SHELL",newargz);
-EOF
-	      ;;
-	    esac
-
-	    cat >> $cwrappersource <<"EOF"
-  return 127;
-}
-
-void *
-xmalloc (size_t num)
-{
-  void * p = (void *) malloc (num);
-  if (!p)
-    lt_fatal ("Memory exhausted");
-
-  return p;
-}
-
-char *
-xstrdup (const char *string)
-{
-  return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL
-;
-}
-
-const char *
-base_name (const char *name)
-{
-  const char *base;
-
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-  /* Skip over the disk name in MSDOS pathnames. */
-  if (isalpha ((unsigned char)name[0]) && name[1] == ':')
-    name += 2;
-#endif
-
-  for (base = name; *name; name++)
-    if (IS_DIR_SEPARATOR (*name))
-      base = name + 1;
-  return base;
-}
-
-int
-check_executable(const char * path)
-{
-  struct stat st;
-
-  DEBUG("(check_executable)  : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!");
-  if ((!path) || (!*path))
-    return 0;
-
-  if ((stat (path, &st) >= 0) &&
-      (
-	/* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */
-#if defined (S_IXOTH)
-       ((st.st_mode & S_IXOTH) == S_IXOTH) ||
-#endif
-#if defined (S_IXGRP)
-       ((st.st_mode & S_IXGRP) == S_IXGRP) ||
-#endif
-       ((st.st_mode & S_IXUSR) == S_IXUSR))
-      )
-    return 1;
-  else
-    return 0;
-}
-
-/* Searches for the full path of the wrapper.  Returns
-   newly allocated full path name if found, NULL otherwise */
-char *
-find_executable (const char* wrapper)
-{
-  int has_slash = 0;
-  const char* p;
-  const char* p_next;
-  /* static buffer for getcwd */
-  char tmp[LT_PATHMAX + 1];
-  int tmp_len;
-  char* concat_name;
-
-  DEBUG("(find_executable)  : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!");
-
-  if ((wrapper == NULL) || (*wrapper == '\0'))
-    return NULL;
-
-  /* Absolute path? */
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-  if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':')
-  {
-    concat_name = xstrdup (wrapper);
-    if (check_executable(concat_name))
-      return concat_name;
-    XFREE(concat_name);
-  }
-  else
-  {
-#endif
-    if (IS_DIR_SEPARATOR (wrapper[0]))
-    {
-      concat_name = xstrdup (wrapper);
-      if (check_executable(concat_name))
-	return concat_name;
-      XFREE(concat_name);
-    }
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-  }
-#endif
-
-  for (p = wrapper; *p; p++)
-    if (*p == '/')
-    {
-      has_slash = 1;
-      break;
-    }
-  if (!has_slash)
-  {
-    /* no slashes; search PATH */
-    const char* path = getenv ("PATH");
-    if (path != NULL)
-    {
-      for (p = path; *p; p = p_next)
-      {
-	const char* q;
-	size_t p_len;
-	for (q = p; *q; q++)
-	  if (IS_PATH_SEPARATOR(*q))
-	    break;
-	p_len = q - p;
-	p_next = (*q == '\0' ? q : q + 1);
-	if (p_len == 0)
-	{
-	  /* empty path: current directory */
-	  if (getcwd (tmp, LT_PATHMAX) == NULL)
-	    lt_fatal ("getcwd failed");
-	  tmp_len = strlen(tmp);
-	  concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
-	  memcpy (concat_name, tmp, tmp_len);
-	  concat_name[tmp_len] = '/';
-	  strcpy (concat_name + tmp_len + 1, wrapper);
-	}
-	else
-	{
-	  concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1);
-	  memcpy (concat_name, p, p_len);
-	  concat_name[p_len] = '/';
-	  strcpy (concat_name + p_len + 1, wrapper);
-	}
-	if (check_executable(concat_name))
-	  return concat_name;
-	XFREE(concat_name);
-      }
-    }
-    /* not found in PATH; assume curdir */
-  }
-  /* Relative path | not found in path: prepend cwd */
-  if (getcwd (tmp, LT_PATHMAX) == NULL)
-    lt_fatal ("getcwd failed");
-  tmp_len = strlen(tmp);
-  concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
-  memcpy (concat_name, tmp, tmp_len);
-  concat_name[tmp_len] = '/';
-  strcpy (concat_name + tmp_len + 1, wrapper);
-
-  if (check_executable(concat_name))
-    return concat_name;
-  XFREE(concat_name);
-  return NULL;
-}
-
-char *
-strendzap(char *str, const char *pat)
-{
-  size_t len, patlen;
-
-  assert(str != NULL);
-  assert(pat != NULL);
-
-  len = strlen(str);
-  patlen = strlen(pat);
-
-  if (patlen <= len)
-  {
-    str += len - patlen;
-    if (strcmp(str, pat) == 0)
-      *str = '\0';
-  }
-  return str;
-}
-
-static void
-lt_error_core (int exit_status, const char * mode,
-	  const char * message, va_list ap)
-{
-  fprintf (stderr, "%s: %s: ", program_name, mode);
-  vfprintf (stderr, message, ap);
-  fprintf (stderr, ".\n");
-
-  if (exit_status >= 0)
-    exit (exit_status);
-}
-
-void
-lt_fatal (const char *message, ...)
-{
-  va_list ap;
-  va_start (ap, message);
-  lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
-  va_end (ap);
-}
-EOF
-	  # we should really use a build-platform specific compiler
-	  # here, but OTOH, the wrappers (shell script and this C one)
-	  # are only useful if you want to execute the "real" binary.
-	  # Since the "real" binary is built for $host, then this
-	  # wrapper might as well be built for $host, too.
-	  $opt_dry_run || $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource
+	    func_emit_wrapper no > $output
+	    chmod +x $output
 	  ;;
 	esac
-	$RM $output
-	trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
-
-	$ECHO > $output "\
-#! $SHELL
-
-# $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# The $output program cannot be directly executed until all the libtool
-# libraries that it depends on are installed.
-#
-# This wrapper script should never be moved out of the build directory.
-# If it is, it will not operate correctly.
-
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='${SED} -e 1s/^X//'
-sed_quote_subst='$sed_quote_subst'
-
-# Be Bourne compatible
-if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '\${1+\"\$@\"}'='\"\$@\"'
-  setopt NO_GLOB_SUBST
-else
-  case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
-fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-relink_command=\"$relink_command\"
-
-# This environment variable determines our operation mode.
-if test \"\$libtool_install_magic\" = \"$magic\"; then
-  # install mode needs the following variables:
-  generated_by_libtool_version='$macro_version'
-  notinst_deplibs='$notinst_deplibs'
-else
-  # When we are sourced in execute mode, \$file and \$ECHO are already set.
-  if test \"\$libtool_execute_magic\" != \"$magic\"; then
-    ECHO=\"$qecho\"
-    file=\"\$0\"
-    # Make sure echo works.
-    if test \"X\$1\" = X--no-reexec; then
-      # Discard the --no-reexec flag, and continue.
-      shift
-    elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then
-      # Yippee, \$ECHO works!
-      :
-    else
-      # Restart under the correct shell, and then maybe \$ECHO will work.
-      exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
-    fi
-  fi\
-"
-	$ECHO >> $output "\
-
-  # Find the directory that this script lives in.
-  thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
-  test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
-  # Follow symbolic links until we get to the real thisdir.
-  file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
-  while test -n \"\$file\"; do
-    destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
-    # If there was a directory component, then change thisdir.
-    if test \"x\$destdir\" != \"x\$file\"; then
-      case \"\$destdir\" in
-      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
-      *) thisdir=\"\$thisdir/\$destdir\" ;;
-      esac
-    fi
-
-    file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
-    file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
-  done
-
-  # Try to get the absolute directory name.
-  absdir=\`cd \"\$thisdir\" && pwd\`
-  test -n \"\$absdir\" && thisdir=\"\$absdir\"
-"
-
-	if test "$fast_install" = yes; then
-	  $ECHO >> $output "\
-  program=lt-'$outputname'$exeext
-  progdir=\"\$thisdir/$objdir\"
-
-  if test ! -f \"\$progdir/\$program\" ||
-     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
-       test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
-    file=\"\$\$-\$program\"
-
-    if test ! -d \"\$progdir\"; then
-      $MKDIR \"\$progdir\"
-    else
-      $RM \"\$progdir/\$file\"
-    fi"
-
-	  $ECHO >> $output "\
-
-    # relink executable if necessary
-    if test -n \"\$relink_command\"; then
-      if relink_command_output=\`eval \$relink_command 2>&1\`; then :
-      else
-	$ECHO \"\$relink_command_output\" >&2
-	$RM \"\$progdir/\$file\"
-	exit 1
-      fi
-    fi
-
-    $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
-    { $RM \"\$progdir/\$program\";
-      $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
-    $RM \"\$progdir/\$file\"
-  fi"
-	else
-	  $ECHO >> $output "\
-  program='$outputname'
-  progdir=\"\$thisdir/$objdir\"
-"
-	fi
-
-	$ECHO >> $output "\
-
-  if test -f \"\$progdir/\$program\"; then"
-
-	# Export our shlibpath_var if we have one.
-	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
-	  $ECHO >> $output "\
-    # Add our own library path to $shlibpath_var
-    $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
-    # Some systems cannot cope with colon-terminated $shlibpath_var
-    # The second colon is a workaround for a bug in BeOS R4 sed
-    $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
-    export $shlibpath_var
-"
-	fi
-
-	# fixup the dll searchpath if we need to.
-	if test -n "$dllsearchpath"; then
-	  $ECHO >> $output "\
-    # Add the dll search path components to the executable PATH
-    PATH=$dllsearchpath:\$PATH
-"
-	fi
-
-	$ECHO >> $output "\
-    if test \"\$libtool_execute_magic\" != \"$magic\"; then
-      # Run the actual program with our arguments.
-"
-	case $host in
-	# Backslashes separate directories on plain windows
-	*-*-mingw | *-*-os2*)
-	  $ECHO >> $output "\
-      exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
-"
-	  ;;
-
-	*)
-	  $ECHO >> $output "\
-      exec \"\$progdir/\$program\" \${1+\"\$@\"}
-"
-	  ;;
-	esac
-	$ECHO >> $output "\
-      \$ECHO \"\$0: cannot exec \$program \$*\"
-      exit 1
-    fi
-  else
-    # The program doesn't exist.
-    \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
-    \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
-    $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
-    exit 1
-  fi
-fi\
-"
-	chmod +x $output
       }
       exit $EXIT_SUCCESS
       ;;
@@ -6940,7 +7943,8 @@
 		# Make sure we don't pick an alternate name that also
 		# overlaps.
 		newobj=lt$counter-$objbase
-		counter=`expr $counter + 1`
+		func_arith $counter + 1
+		counter=$func_arith_result
 		case " $oldobjs " in
 		*[\ /]"$newobj "*) ;;
 		*) if test ! -f "$gentop/$newobj"; then break; fi ;;
@@ -6955,29 +7959,35 @@
 	fi
 	eval cmds=\"$old_archive_cmds\"
 
-	if len=`expr "X$cmds" : ".*" 2>/dev/null` &&
-	   test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+	func_len " $cmds"
+	len=$func_len_result
+	if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
 	  cmds=$old_archive_cmds
 	else
 	  # the command line is too long to link in one step, link in parts
-	  func_echo "using piecewise archive linking..."
+	  func_verbose "using piecewise archive linking..."
 	  save_RANLIB=$RANLIB
 	  RANLIB=:
 	  objlist=
 	  concat_cmds=
 	  save_oldobjs=$oldobjs
+	  oldobjs=
 	  # Is there a better way of finding the last object in the list?
 	  for obj in $save_oldobjs
 	  do
 	    last_oldobj=$obj
 	  done
+	  eval test_cmds=\"$old_archive_cmds\"
+	  func_len " $test_cmds"
+	  len0=$func_len_result
+	  len=$len0
 	  for obj in $save_oldobjs
 	  do
-	    oldobjs="$objlist $obj"
-	    objlist="$objlist $obj"
-	    eval test_cmds=\"$old_archive_cmds\"
-	    if len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
-	       test "$len" -le "$max_cmd_len"; then
+	    func_len " $obj"
+	    func_arith $len + $func_len_result
+	    len=$func_arith_result
+	    func_append objlist " $obj"
+	    if test "$len" -lt "$max_cmd_len"; then
 	      :
 	    else
 	      # the above command should be used before it gets too long
@@ -6988,6 +7998,7 @@
 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
 	      eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
 	      objlist=
+	      len=$len0
 	    fi
 	  done
 	  RANLIB=$save_RANLIB
@@ -7010,7 +8021,7 @@
     *.la)
       old_library=
       test "$build_old_libs" = yes && old_library="$libname.$libext"
-      func_echo "creating $output"
+      func_verbose "creating $output"
 
       # Preserve any variables that may affect compiler behavior
       for var in $variables_saved_for_relink; do
@@ -7112,7 +8123,7 @@
 	  # place dlname in correct position for cygwin
 	  tdlname=$dlname
 	  case $host,$output,$installed,$module,$dlname in
-	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
 	  esac
 	  $ECHO > $output "\
 # $outputname - a libtool library file
@@ -7311,8 +8322,15 @@
 	  esac
 	  # Do a test to see if this is a libtool program.
 	  if func_ltwrapper_p "$file"; then
-	    relink_command=
-	    func_source $dir/$noexename
+	    if func_ltwrapper_executable_p "$file"; then
+	      func_ltwrapper_scriptname "$file"
+	      relink_command=
+	      func_source $func_ltwrapper_scriptname_result
+	      rmfiles="$rmfiles $func_ltwrapper_scriptname_result"
+	    else
+	      relink_command=
+	      func_source $dir/$noexename
+	    fi
 
 	    # note $name still contains .exe if it was in $file originally
 	    # as does the version of $file that was added into $rmfiles
diff --git a/ltoptions.m4 b/ltoptions.m4
index 7961b9f..34151a3 100644
--- a/ltoptions.m4
+++ b/ltoptions.m4
@@ -1,82 +1,87 @@
 # Helper functions for option handling.                    -*- Autoconf -*-
-
-# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan <gary@gnu.org>
+#
+#   Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 3 ltoptions.m4
+# serial 6 ltoptions.m4
 
 # This is to help aclocal find these macros, as it can't see m4_define.
 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
 
 
-# _LT_MANGLE_OPTION(NAME)
-# -----------------------
+# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+# ------------------------------------------
 m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
 
 
-# _LT_SET_OPTION(NAME)
-# --------------------
-# Set option NAME, and if there is a matching handler defined,
-# dispatch to it.  Other NAMEs are saved as a flag.
+# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+# ---------------------------------------
+# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
+# saved as a flag.
 m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1]),
-        _LT_MANGLE_DEFUN([$1]),
-    [m4_warning([Unknown Libtool option `$1'])])[]dnl
+[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+        _LT_MANGLE_DEFUN([$1], [$2]),
+    [m4_warning([Unknown $1 option `$2'])])[]dnl
 ])
 
 
-# _LT_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
+# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+# ------------------------------------------------------------
 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
 m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1]), [$2], [$3])])
+[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
 
 
-# _LT_UNLESS_OPTIONS(OPTIONS, IF-NOT-SET)
-# ---------------------------------------
-# Execute IF-NOT-SET if all OPTIONS are not set.
+# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+# -------------------------------------------------------
+# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+# are set.
 m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$1])),
-	    [m4_ifdef(_LT_MANGLE_OPTION(_LT_Option),
+[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
 		      [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$2
+m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
 ])[]dnl
 ])
 
 
-# _LT_SET_OPTIONS(OPTIONS)
-# ------------------------
-# OPTIONS is a space-separated list of Libtool options.
-# If any OPTION has a handler macro declared with LT_OPTION_DEFINE,
-# dispatch to that macro; otherwise complain about the unknown option
-# and exit.
+# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+# ----------------------------------------
+# OPTION-LIST is a space-separated list of Libtool options associated
+# with MACRO-NAME.  If any OPTION has a matching handler declared with
+# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+# the unknown option and exit.
 m4_defun([_LT_SET_OPTIONS],
 [# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$1])),
-    [_LT_SET_OPTION(_LT_Option)])
-dnl
-dnl Simply set some default values (i.e off) if boolean options were not
-dnl specified:
-_LT_UNLESS_OPTIONS([dlopen], [enable_dlopen=no
-])
-_LT_UNLESS_OPTIONS([win32-dll], [enable_win32_dll=no
-])
-dnl
-dnl If no reference was made to various pairs of opposing options, then
-dnl we run the default mode handler for the pair.  For example, if neither
-dnl `shared' nor `disable-shared' was passed, we enable building of shared
-dnl archives by default:
-_LT_UNLESS_OPTIONS([shared disable-shared], [_LT_ENABLE_SHARED])
-_LT_UNLESS_OPTIONS([static disable-static], [_LT_ENABLE_STATIC])
-_LT_UNLESS_OPTIONS([pic-only no-pic], [_LT_WITH_PIC])
-_LT_UNLESS_OPTIONS([fast-install disable-fast-install],
-		   [_LT_ENABLE_FAST_INSTALL])
+m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+    [_LT_SET_OPTION([$1], _LT_Option)])
+
+m4_if([$1],[LT_INIT],[
+  dnl
+  dnl Simply set some default values (i.e off) if boolean options were not
+  dnl specified:
+  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+  ])
+  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+  ])
+  dnl
+  dnl If no reference was made to various pairs of opposing options, then
+  dnl we run the default mode handler for the pair.  For example, if neither
+  dnl `shared' nor `disable-shared' was passed, we enable building of shared
+  dnl archives by default:
+  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+  		   [_LT_ENABLE_FAST_INSTALL])
+  ])
 ])# _LT_SET_OPTIONS
 
 
@@ -84,24 +89,26 @@
 ## Macros to handle LT_INIT options. ##
 ## --------------------------------- ##
 
+# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+# -----------------------------------------
 m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1]), [[^A-Z0-9_]], [_])])
+[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
 
 
-# LT_OPTION_DEFINE(NAME, CODE)
-# ----------------------------
+# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+# -----------------------------------------------
 m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1]), [$2])[]dnl
+[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
 ])# LT_OPTION_DEFINE
 
 
 # dlopen
 # ------
-LT_OPTION_DEFINE([dlopen], [enable_dlopen=yes
+LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
 ])
 
 AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([dlopen])
+[_LT_SET_OPTION([LT_INIT], [dlopen])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
 put the `dlopen' option into LT_INIT's first parameter.])
@@ -114,11 +121,11 @@
 # win32-dll
 # ---------
 # Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([win32-dll],
+LT_OPTION_DEFINE([LT_INIT], [win32-dll],
 [enable_win32_dll=yes
 
 case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
   AC_CHECK_TOOL(AS, as, false)
   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
   AC_CHECK_TOOL(OBJDUMP, objdump, false)
@@ -136,7 +143,8 @@
 ])# win32-dll
 
 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[_LT_SET_OPTION([win32-dll])
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+_LT_SET_OPTION([LT_INIT], [win32-dll])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
 put the `win32-dll' option into LT_INIT's first parameter.])
@@ -179,16 +187,16 @@
 	[Whether or not to build shared libraries])
 ])# _LT_ENABLE_SHARED
 
-LT_OPTION_DEFINE([shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([disable-shared], [_LT_ENABLE_SHARED([no])])
+LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
 
 # Old names:
 AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([shared])
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
 ])
 
 AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([disable-shared])
+[_LT_SET_OPTION([LT_INIT], [disable-shared])
 ])
 
 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
@@ -233,16 +241,16 @@
 	[Whether or not to build static libraries])
 ])# _LT_ENABLE_STATIC
 
-LT_OPTION_DEFINE([static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([disable-static], [_LT_ENABLE_STATIC([no])])
+LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
 
 # Old names:
 AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([static])
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
 ])
 
 AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([disable-static])
+[_LT_SET_OPTION([LT_INIT], [disable-static])
 ])
 
 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
@@ -287,19 +295,19 @@
 	 [Whether or not to optimize for fast installation])dnl
 ])# _LT_ENABLE_FAST_INSTALL
 
-LT_OPTION_DEFINE([fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
 
 # Old names:
 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([fast-install])
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
 the `fast-install' option into LT_INIT's first parameter.])
 ])
 
 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([disable-fast-install])
+[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
 the `disable-fast-install' option into LT_INIT's first parameter.])
@@ -327,12 +335,12 @@
 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
 ])# _LT_WITH_PIC
 
-LT_OPTION_DEFINE([pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([no-pic], [_LT_WITH_PIC([no])])
+LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
 
 # Old name:
 AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([pic-only])
+[_LT_SET_OPTION([LT_INIT], [pic-only])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
 put the `pic-only' option into LT_INIT's first parameter.])
@@ -340,3 +348,21 @@
 
 dnl aclocal-1.4 backwards compatibility:
 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+
+## ----------------- ##
+## LTDL_INIT Options ##
+## ----------------- ##
+
+m4_define([_LTDL_MODE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+		 [m4_define([_LTDL_MODE], [nonrecursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+		 [m4_define([_LTDL_MODE], [recursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+		 [m4_define([_LTDL_MODE], [subproject])])
+
+m4_define([_LTDL_TYPE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [installable],
+		 [m4_define([_LTDL_TYPE], [installable])])
+LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+		 [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/ltsugar.m4 b/ltsugar.m4
index dd4f871..9000a05 100644
--- a/ltsugar.m4
+++ b/ltsugar.m4
@@ -1,13 +1,13 @@
 # ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
 #
-# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan.
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 4 ltsugar.m4
+# serial 6 ltsugar.m4
 
 # This is to help aclocal find these macros, as it can't see m4_define.
 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
@@ -17,19 +17,15 @@
 # -----------------------------
 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
 # associated separator.
+# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+# versions in m4sugar had bugs.
 m4_define([lt_join],
-[m4_case([$#],
-	 [0], [m4_fatal([$0: too few arguments: $#])],
-	 [1], [],
-	 [2], [[$2]],
-	 [m4_ifval([$2],
-	 	   [[$2][]m4_foreach(_lt_Arg, lt_car([m4_shiftn(2, $@)]),
-	                   [_$0([$1], _lt_Arg)])],
-		   [$0([$1], m4_shiftn(2, $@))])])[]dnl
-])
+[m4_if([$#], [1], [],
+       [$#], [2], [[$2]],
+       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
 m4_define([_lt_join],
-[m4_ifval([$2],[$1][$2])[]dnl
-])
+[m4_if([$#$2], [2], [],
+       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
 
 
 # lt_car(LIST)
@@ -49,11 +45,13 @@
 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
 # ------------------------------------------
 # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
-# Note that neither SEPARATOR nor STRING are expanded.  No SEPARATOR is
-# output if MACRO-NAME was previously undefined (different than defined
-# and empty).
+# Note that neither SEPARATOR nor STRING are expanded; they are appended
+# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+# than defined and empty).
+#
 # This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4 mistakenly expanded SEPARATOR.
+# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
 m4_define([lt_append],
 [m4_define([$1],
 	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
@@ -65,14 +63,14 @@
 # Produce a SEP delimited list of all paired combinations of elements of
 # PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
 # has the form PREFIXmINFIXSUFFIXn.
+# Needed until we can rely on m4_combine added in Autoconf 2.62.
 m4_define([lt_combine],
-[m4_if([$2], [], [],
-  [m4_if([$4], [], [],
-    [lt_join(m4_quote(m4_default([$1], [[, ]])),
-      lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_prefix, [$2],
-       		   [m4_foreach(_Lt_suffix, lt_car([m4_shiftn(3, $@)]),
-		   	       [_Lt_prefix[]$3[]_Lt_suffix ])])))))])])dnl
-])
+[m4_if(m4_eval([$# > 3]), [1],
+       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+[[m4_foreach([_Lt_prefix], [$2],
+	     [m4_foreach([_Lt_suffix],
+		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
 
 
 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
@@ -84,13 +82,13 @@
 	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
 		 [lt_append([$1], [$2], [$3])$4],
 		 [$5])],
-    [lt_append([$1], [$2], [$3])$4])])
+	  [lt_append([$1], [$2], [$3])$4])])
 
 
 # lt_dict_add(DICT, KEY, VALUE)
 # -----------------------------
 m4_define([lt_dict_add],
-[m4_define([$1($2)], [$4])])
+[m4_define([$1($2)], [$3])])
 
 
 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
diff --git a/ltversion.m4 b/ltversion.m4
index 7c82eac..b8e154f 100644
--- a/ltversion.m4
+++ b/ltversion.m4
@@ -1,23 +1,23 @@
 # ltversion.m4 -- version numbers			-*- Autoconf -*-
 #
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Written by Scott James Remnant.
+#   Copyright (C) 2004 Free Software Foundation, Inc.
+#   Written by Scott James Remnant, 2004
 #
-## This file is free software; the Free Software Foundation gives
+# This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# Generated from ltversion.in; do not edit by hand
+# Generated from ltversion.in.
 
-# serial 2435 ltversion.m4
+# serial 3012 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.1a])
-m4_define([LT_PACKAGE_REVISION], [1.2435])
+m4_define([LT_PACKAGE_VERSION], [2.2.6])
+m4_define([LT_PACKAGE_REVISION], [1.3012])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.1a'
-macro_revision='1.2435'
+[macro_version='2.2.6'
+macro_revision='1.3012'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])
diff --git a/lt~obsolete.m4 b/lt~obsolete.m4
index 74f5746..637bb20 100644
--- a/lt~obsolete.m4
+++ b/lt~obsolete.m4
@@ -1,13 +1,13 @@
 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
 #
-# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
-# Written by Scott James Remnant.
+#   Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+#   Written by Scott James Remnant, 2004.
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 2
+# serial 4 lt~obsolete.m4
 
 # These exist entirely to fool aclocal when bootstrapping libtool.
 #
@@ -32,6 +32,9 @@
 # we give up compatibility with versions before 1.7, at which point
 # we need to keep only those names which we still refer to.
 
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+
 m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
 m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 4746955..b2d8a36 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,70 @@
+2008-10-22  Nick Clifton  <nickc@redhat.com>
+
+	PR 6937
+	* configure.in (SHARED_LIBADD): Revert previous change.
+	Add a comment explaining why.
+	(SHARED_DEPENDENCIES): Revert previous change.
+	* configure: Regenerate.
+
+2008-10-10  Nick Clifton  <nickc@redhat.com>
+
+	PR 6937
+	* configure.in (SHARED_LIBADD): Add libiberty.a.
+	(SHARED_DEPENDENCIES): Add libiberty.a.
+
+2008-09-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* i386-gen.c: Include "hashtab.h".
+	(next_field): Take a new argument, last.  Check last.
+	(process_i386_cpu_flag): Updated.
+	(process_i386_opcode_modifier): Likewise.
+	(process_i386_operand_type): Likewise.
+	(process_i386_registers): Likewise.
+	(output_i386_opcode): New.
+	(opcode_hash_entry): Likewise.
+	(opcode_hash_table): Likewise.
+	(opcode_hash_hash): Likewise.
+	(opcode_hash_eq): Likewise.
+	(process_i386_opcodes): Use opcode hash table and opcode array.
+
+2008-09-30  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+	* s390-opc.txt (stdy, stey): Fix description
+
+2008-09-30  Alan Modra  <amodra@bigpond.net.au>
+
+	* Makefile.am: Run "make dep-am".
+	* Makefile.in: Regenerate.
+
+2008-09-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* aclocal.m4: Regenerated.
+	* configure: Likewise.
+	* Makefile.in: Likewise.
+
+2008-09-29  Nick Clifton  <nickc@redhat.com>
+
+	* po/vi.po: Updated Vietnamese translation.
+	* po/fr.po: Updated French translation.
+
+2008-09-26  Florian Krohm  <fkrohm@us.ibm.com>
+
+	* s390-opc.txt (thder, thdr): Change RRE_RR to RRE_FF.
+	(cfxr, cfdr, cfer, clclu): Add esa flag.
+	(sqd): Instruction added.
+	(qadtr, qaxtr): Change RRF_FFFU to RRF_FUFF.
+	* s390-opc.c: (INSTR_RRF_FFFU, MASK_RRF_FFFU): Removed.
+
+2008-09-14  Arnold Metselaar  <arnold.metselaar@planet.nl>
+
+	* z80-dis.c (prt_rr_nn): Fix register pair for two byte opcodes.
+	(tab_elt opc_ed): Add "ld r,a" and "ld r,a" instructions.
+
+2008-09-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* i386-opc.tbl: Fix memory operand size for cmpXXXs[sd].
+	* i386-tbl.h: Regenerated.
+
 2008-08-28  Jan Beulich  <jbeulich@novell.com>
 
 	* i386-dis.c (dis386): Adjust far return mnemonics.
diff --git a/opcodes/Makefile.am b/opcodes/Makefile.am
index 4e54000..b03a5d3 100644
--- a/opcodes/Makefile.am
+++ b/opcodes/Makefile.am
@@ -652,164 +652,143 @@
 # DO NOT DELETE THIS LINE -- mkdep uses it.
 # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
 alpha-dis.lo: alpha-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/alpha.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/alpha.h
 alpha-opc.lo: alpha-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/alpha.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/opcode/alpha.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h
 arc-dis.lo: arc-dis.c $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h \
-  opintl.h arc-dis.h arc-ext.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  $(INCDIR)/opcode/arc.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
+  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h opintl.h \
+  arc-dis.h arc-ext.h
 arc-opc.lo: arc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h \
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h \
   opintl.h
 arc-ext.lo: arc-ext.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h arc-ext.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h arc-ext.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h
 arm-dis.lo: arm-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/arm.h opintl.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/floatformat.h $(INCDIR)/ansidecl.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/arm.h \
+  opintl.h $(INCDIR)/safe-ctype.h $(INCDIR)/floatformat.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h \
+  $(INCDIR)/bfdlink.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/arm.h \
+  $(INCDIR)/elf/reloc-macros.h
 avr-dis.lo: avr-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/avr.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/opcode/avr.h
 bfin-dis.lo: bfin-dis.c $(INCDIR)/opcode/bfin.h $(INCDIR)/dis-asm.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
 cgen-asm.lo: cgen-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  opintl.h
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h opintl.h
 cgen-bitset.lo: cgen-bitset.c $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cgen-bitset.h
 cgen-dis.lo: cgen-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h
+  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h
 cgen-opc.lo: cgen-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h
 cr16-dis.lo: cr16-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cr16.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cr16.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 cr16-opc.lo: cr16-opc.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h $(INCDIR)/opcode/cr16.h
 cris-dis.lo: cris-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cris.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cris.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 cris-opc.lo: cris-opc.c $(INCDIR)/opcode/cris.h
 crx-dis.lo: crx-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/crx.h
+  $(INCDIR)/opcode/crx.h
 crx-opc.lo: crx-opc.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h $(INCDIR)/opcode/crx.h
 d10v-dis.lo: d10v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d10v.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 d10v-opc.lo: d10v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d10v.h
 d30v-dis.lo: d30v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d30v.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 d30v-opc.lo: d30v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d30v.h
 dlx-dis.lo: dlx-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/dlx.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/dlx.h
 dis-buf.lo: dis-buf.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h
 dis-init.lo: dis-init.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H)
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 disassemble.lo: disassemble.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 fr30-asm.lo: fr30-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 fr30-desc.lo: fr30-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 fr30-dis.lo: fr30-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h
 fr30-ibld.lo: fr30-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  fr30-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 fr30-opc.lo: fr30-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 frv-asm.lo: frv-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 frv-desc.lo: frv-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 frv-dis.lo: frv-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h
 frv-ibld.lo: frv-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  frv-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h frv-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h frv-opc.h opintl.h $(INCDIR)/safe-ctype.h
 frv-opc.lo: frv-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/elf/frv.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/elf/frv.h $(INCDIR)/elf/reloc-macros.h
 h8300-dis.lo: h8300-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/h8300.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/symcat.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 h8500-dis.lo: h8500-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  h8500-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h
+  h8500-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h
 hppa-dis.lo: hppa-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(BFDDIR)/libhppa.h \
+  $(INCDIR)/opcode/hppa.h
 i370-dis.lo: i370-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/i370.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/i370.h
 i370-opc.lo: i370-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/i370.h
 i386-dis.lo: i386-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h $(INCDIR)/opcode/i386.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h \
+  $(INCDIR)/opcode/i386.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 i386-opc.lo: i386-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h i386-opc.h \
   $(INCDIR)/opcode/i386.h i386-tbl.h
@@ -819,10 +798,9 @@
 i860-dis.lo: i860-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/i860.h
 i960-dis.lo: i960-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 ia64-dis.lo: ia64-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/ia64.h \
-  $(BFD_H)
+  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/ia64.h
 ia64-opc-a.lo: ia64-opc-a.c ia64-opc.h $(INCDIR)/opcode/ia64.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
 ia64-opc-b.lo: ia64-opc-b.c ia64-opc.h $(INCDIR)/opcode/ia64.h \
@@ -836,423 +814,372 @@
 ia64-opc-d.lo: ia64-opc-d.c
 ia64-opc.lo: ia64-opc.c $(INCDIR)/ansidecl.h sysdep.h \
   config.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  ia64-asmtab.h $(INCDIR)/opcode/ia64.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h ia64-asmtab.c
+  ia64-asmtab.h $(INCDIR)/opcode/ia64.h $(BFD_H) $(INCDIR)/symcat.h \
+  ia64-asmtab.c
 ia64-gen.lo: ia64-gen.c $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h sysdep.h \
   config.h $(INCDIR)/getopt.h ia64-opc.h $(INCDIR)/opcode/ia64.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h ia64-opc-a.c \
-  ia64-opc-i.c ia64-opc-m.c ia64-opc-b.c ia64-opc-f.c \
-  ia64-opc-x.c ia64-opc-d.c
+  $(BFD_H) $(INCDIR)/symcat.h ia64-opc-a.c ia64-opc-i.c \
+  ia64-opc-m.c ia64-opc-b.c ia64-opc-f.c ia64-opc-x.c \
+  ia64-opc-d.c
 ia64-asmtab.lo: ia64-asmtab.c
 ip2k-asm.lo: ip2k-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 ip2k-desc.lo: ip2k-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 ip2k-dis.lo: ip2k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h
 ip2k-ibld.lo: ip2k-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  ip2k-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 ip2k-opc.lo: ip2k-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/safe-ctype.h
 iq2000-asm.lo: iq2000-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 iq2000-desc.lo: iq2000-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 iq2000-dis.lo: iq2000-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h
 iq2000-ibld.lo: iq2000-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  iq2000-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 iq2000-opc.lo: iq2000-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 m32c-asm.lo: m32c-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-m32c-desc.lo: m32c-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
-  $(INCDIR)/xregex2.h
-m32c-dis.lo: m32c-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h
-m32c-ibld.lo: m32c-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
   m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
-  opintl.h $(INCDIR)/safe-ctype.h
-m32c-opc.lo: m32c-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
-m32r-asm.lo: m32r-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
   opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-m32r-desc.lo: m32r-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
+m32c-desc.lo: m32c-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
   opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
-m32r-dis.lo: m32r-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
-  opintl.h
-m32r-ibld.lo: m32r-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  m32r-opc.h opintl.h $(INCDIR)/safe-ctype.h
-m32r-opc.lo: m32r-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
+m32c-dis.lo: m32c-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
+  opintl.h $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
+m32c-ibld.lo: m32c-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h cgen-types.h \
+  ../bfd/bfd_stdint.h cgen-ops.h opintl.h $(INCDIR)/safe-ctype.h
+m32c-opc.lo: m32c-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+m32r-asm.lo: m32r-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+m32r-desc.lo: m32r-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
+m32r-dis.lo: m32r-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h
+m32r-ibld.lo: m32r-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+m32r-opc.lo: m32r-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 m32r-opinst.lo: m32r-opinst.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h
 m68hc11-dis.lo: m68hc11-dis.c $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68hc11.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 m68hc11-opc.lo: m68hc11-opc.c $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68hc11.h
 m68k-dis.lo: m68k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/floatformat.h $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
-  opintl.h $(INCDIR)/opcode/m68k.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/floatformat.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h opintl.h \
+  $(INCDIR)/opcode/m68k.h
 m68k-opc.lo: m68k-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68k.h
 m88k-dis.lo: m88k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/m88k.h opintl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/m88k.h \
+  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 maxq-dis.lo: maxq-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/maxq.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/maxq.h
 mcore-dis.lo: mcore-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  mcore-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h
+  mcore-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 mep-asm.lo: mep-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 mep-desc.lo: mep-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 mep-dis.lo: mep-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
 mep-ibld.lo: mep-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  mep-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h mep-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h mep-opc.h opintl.h $(INCDIR)/safe-ctype.h
 mep-opc.lo: mep-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/elf/mep.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h
 mips-dis.lo: mips-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/opcode/mips.h \
-  opintl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/mips.h opintl.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h \
+  $(INCDIR)/elf/reloc-macros.h
 mips-opc.lo: mips-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mips.h
 mips16-opc.lo: mips16-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mips.h
 m10200-dis.lo: m10200-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10200.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 m10200-opc.lo: m10200-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10200.h
 m10300-dis.lo: m10300-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10300.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 m10300-opc.lo: m10300-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10300.h
 mmix-dis.lo: mmix-dis.c $(INCDIR)/opcode/mmix.h $(INCDIR)/dis-asm.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) opintl.h
+  $(INCDIR)/ansidecl.h opintl.h
 mmix-opc.lo: mmix-opc.c $(INCDIR)/opcode/mmix.h $(INCDIR)/symcat.h
 mt-asm.lo: mt-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 mt-desc.lo: mt-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 mt-dis.lo: mt-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h
 mt-ibld.lo: mt-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  mt-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h mt-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h mt-opc.h opintl.h $(INCDIR)/safe-ctype.h
 mt-opc.lo: mt-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/safe-ctype.h
 ns32k-dis.lo: ns32k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h \
-  $(BFD_H) $(INCDIR)/opcode/ns32k.h opintl.h
-openrisc-asm.lo: openrisc-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-openrisc-desc.lo: openrisc-desc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h openrisc-desc.h \
-  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
-openrisc-dis.lo: openrisc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h $(INCDIR)/opcode/ns32k.h \
   opintl.h
-openrisc-ibld.lo: openrisc-ibld.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h \
+openrisc-asm.lo: openrisc-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+openrisc-desc.lo: openrisc-desc.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/safe-ctype.h
-openrisc-opc.lo: openrisc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
+  $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
+  $(INCDIR)/xregex2.h
+openrisc-dis.lo: openrisc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h opintl.h
+openrisc-ibld.lo: openrisc-ibld.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
   openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+openrisc-opc.lo: openrisc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 or32-dis.lo: or32-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/or32.h \
   $(INCDIR)/safe-ctype.h
 or32-opc.lo: or32-opc.c $(INCDIR)/safe-ctype.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/or32.h
 pdp11-dis.lo: pdp11-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/pdp11.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/pdp11.h
 pdp11-opc.lo: pdp11-opc.c $(INCDIR)/opcode/pdp11.h
 pj-dis.lo: pj-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/pj.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 pj-opc.lo: pj-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/pj.h
 ppc-dis.lo: ppc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/ppc.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/ppc.h
 ppc-opc.lo: ppc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/ppc.h opintl.h
 s390-mkopc.lo: s390-mkopc.c
 s390-opc.lo: s390-opc.c $(INCDIR)/ansidecl.h $(INCDIR)/opcode/s390.h \
   s390-opc.tab
 s390-dis.lo: s390-dis.c $(INCDIR)/ansidecl.h sysdep.h \
-  config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h $(INCDIR)/opcode/s390.h
+  config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h $(INCDIR)/opcode/s390.h
 score-dis.lo: score-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  score-opc.h opintl.h $(BFD_H) $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h score-opc.h \
+  opintl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
 sh-dis.lo: sh-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  sh-opc.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/dis-asm.h $(BFD_H)
+  sh-opc.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h
 sh64-dis.lo: sh64-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h sh64-opc.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h
+  sh64-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/sh.h \
+  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h
 sh64-opc.lo: sh64-opc.c sh64-opc.h
 sparc-dis.lo: sparc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/sparc.h $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h opintl.h
+  $(INCDIR)/opcode/sparc.h $(INCDIR)/dis-asm.h $(BFD_H) \
+  $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  opintl.h
 sparc-opc.lo: sparc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/sparc.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/sparc.h
 spu-dis.lo: spu-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h
-spu-opc.lo: spu-opc.c $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h
+spu-opc.lo: spu-opc.c $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h
 tic30-dis.lo: tic30-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic30.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic30.h
 tic4x-dis.lo: tic4x-dis.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/opcode/tic4x.h
 tic54x-dis.lo: tic54x-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic54x.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic54x.h \
+  $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h
 tic54x-opc.lo: tic54x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic54x.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic54x.h
 tic80-dis.lo: tic80-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/tic80.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 tic80-opc.lo: tic80-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/tic80.h
 v850-dis.lo: v850-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/v850.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 v850-opc.lo: v850-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/v850.h opintl.h
 vax-dis.lo: vax-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/vax.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
-w65-dis.lo: w65-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  w65-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h
+w65-dis.lo: w65-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  w65-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 xc16x-asm.lo: xc16x-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 xc16x-desc.lo: xc16x-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 xc16x-dis.lo: xc16x-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h
 xc16x-ibld.lo: xc16x-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  xc16x-opc.h opintl.h $(INCDIR)/safe-ctype.h
-xc16x-opc.lo: xc16x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
-xstormy16-asm.lo: xstormy16-asm.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+xc16x-opc.lo: xc16x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+xstormy16-asm.lo: xstormy16-asm.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 xstormy16-desc.lo: xstormy16-desc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
+  $(INCDIR)/xregex2.h
 xstormy16-dis.lo: xstormy16-dis.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h xstormy16-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  xstormy16-opc.h opintl.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h xstormy16-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h
 xstormy16-ibld.lo: xstormy16-ibld.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
-  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  xstormy16-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 xstormy16-opc.lo: xstormy16-opc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h
 xtensa-dis.lo: xtensa-dis.c $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  sysdep.h config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h
+  sysdep.h config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 z80-dis.lo: z80-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 z8k-dis.lo: z8k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  z8k-opc.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h z8k-opc.h
 z8kgen.lo: z8kgen.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/opcodes/Makefile.in b/opcodes/Makefile.in
index fd6c276..e3c7ed6 100644
--- a/opcodes/Makefile.in
+++ b/opcodes/Makefile.in
@@ -59,7 +59,7 @@
 	$(top_srcdir)/../config/progtest.m4 \
 	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
 	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
-	$(top_srcdir)/configure.in
+	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -130,6 +130,7 @@
 DATADIRNAME = @DATADIRNAME@
 DEFS = @DEFS@
 DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -157,6 +158,7 @@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -167,8 +169,12 @@
 MSGFMT = @MSGFMT@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
+NMEDIT = @NMEDIT@
 NO_WERROR = @NO_WERROR@
+OBJDUMP = @OBJDUMP@
 OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
 PACKAGE = @PACKAGE@
 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
@@ -191,7 +197,13 @@
 XGETTEXT = @XGETTEXT@
 ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
+ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ac_ct_LIPO = @ac_ct_LIPO@
+ac_ct_NMEDIT = @ac_ct_NMEDIT@
+ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
+ac_ct_OTOOL = @ac_ct_OTOOL@
+ac_ct_OTOOL64 = @ac_ct_OTOOL64@
 ac_ct_RANLIB = @ac_ct_RANLIB@
 ac_ct_STRIP = @ac_ct_STRIP@
 am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@@ -1204,164 +1216,143 @@
 # DO NOT DELETE THIS LINE -- mkdep uses it.
 # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
 alpha-dis.lo: alpha-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/alpha.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/alpha.h
 alpha-opc.lo: alpha-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/alpha.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/opcode/alpha.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h
 arc-dis.lo: arc-dis.c $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h \
-  opintl.h arc-dis.h arc-ext.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  $(INCDIR)/opcode/arc.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
+  $(INCDIR)/elf/arc.h $(INCDIR)/elf/reloc-macros.h opintl.h \
+  arc-dis.h arc-ext.h
 arc-opc.lo: arc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h \
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/arc.h \
   opintl.h
 arc-ext.lo: arc-ext.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h arc-ext.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h arc-ext.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h
 arm-dis.lo: arm-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/arm.h opintl.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/floatformat.h $(INCDIR)/ansidecl.h $(INCDIR)/coff/internal.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/arm.h \
+  opintl.h $(INCDIR)/safe-ctype.h $(INCDIR)/floatformat.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h \
+  $(INCDIR)/bfdlink.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/arm.h \
+  $(INCDIR)/elf/reloc-macros.h
 avr-dis.lo: avr-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/avr.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/opcode/avr.h
 bfin-dis.lo: bfin-dis.c $(INCDIR)/opcode/bfin.h $(INCDIR)/dis-asm.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
 cgen-asm.lo: cgen-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  opintl.h
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h opintl.h
 cgen-bitset.lo: cgen-bitset.c $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cgen-bitset.h
 cgen-dis.lo: cgen-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h
+  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h
 cgen-opc.lo: cgen-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h
 cr16-dis.lo: cr16-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cr16.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cr16.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 cr16-opc.lo: cr16-opc.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h $(INCDIR)/opcode/cr16.h
 cris-dis.lo: cris-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/cris.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cris.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 cris-opc.lo: cris-opc.c $(INCDIR)/opcode/cris.h
 crx-dis.lo: crx-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/crx.h
+  $(INCDIR)/opcode/crx.h
 crx-opc.lo: crx-opc.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h $(INCDIR)/opcode/crx.h
 d10v-dis.lo: d10v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d10v.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 d10v-opc.lo: d10v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d10v.h
 d30v-dis.lo: d30v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d30v.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 d30v-opc.lo: d30v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/d30v.h
 dlx-dis.lo: dlx-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/dlx.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/dlx.h
 dis-buf.lo: dis-buf.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h
 dis-init.lo: dis-init.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H)
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 disassemble.lo: disassemble.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 fr30-asm.lo: fr30-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 fr30-desc.lo: fr30-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 fr30-dis.lo: fr30-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h opintl.h
 fr30-ibld.lo: fr30-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  fr30-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 fr30-opc.lo: fr30-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h fr30-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h fr30-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  fr30-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 frv-asm.lo: frv-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 frv-desc.lo: frv-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 frv-dis.lo: frv-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h opintl.h
 frv-ibld.lo: frv-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  frv-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h frv-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h frv-opc.h opintl.h $(INCDIR)/safe-ctype.h
 frv-opc.lo: frv-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  frv-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h frv-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/elf/frv.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(BFD_H) $(INCDIR)/symcat.h frv-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  frv-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/elf/frv.h $(INCDIR)/elf/reloc-macros.h
 h8300-dis.lo: h8300-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/h8300.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/symcat.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 h8500-dis.lo: h8500-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  h8500-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h
+  h8500-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h
 hppa-dis.lo: hppa-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(BFDDIR)/libhppa.h \
+  $(INCDIR)/opcode/hppa.h
 i370-dis.lo: i370-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/i370.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/i370.h
 i370-opc.lo: i370-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/i370.h
 i386-dis.lo: i386-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  opintl.h $(INCDIR)/opcode/i386.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h opintl.h \
+  $(INCDIR)/opcode/i386.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 i386-opc.lo: i386-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h i386-opc.h \
   $(INCDIR)/opcode/i386.h i386-tbl.h
@@ -1371,10 +1362,9 @@
 i860-dis.lo: i860-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/i860.h
 i960-dis.lo: i960-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 ia64-dis.lo: ia64-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/ia64.h \
-  $(BFD_H)
+  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/ia64.h
 ia64-opc-a.lo: ia64-opc-a.c ia64-opc.h $(INCDIR)/opcode/ia64.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
 ia64-opc-b.lo: ia64-opc-b.c ia64-opc.h $(INCDIR)/opcode/ia64.h \
@@ -1388,423 +1378,372 @@
 ia64-opc-d.lo: ia64-opc-d.c
 ia64-opc.lo: ia64-opc.c $(INCDIR)/ansidecl.h sysdep.h \
   config.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  ia64-asmtab.h $(INCDIR)/opcode/ia64.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h ia64-asmtab.c
+  ia64-asmtab.h $(INCDIR)/opcode/ia64.h $(BFD_H) $(INCDIR)/symcat.h \
+  ia64-asmtab.c
 ia64-gen.lo: ia64-gen.c $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h sysdep.h \
   config.h $(INCDIR)/getopt.h ia64-opc.h $(INCDIR)/opcode/ia64.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h ia64-opc-a.c \
-  ia64-opc-i.c ia64-opc-m.c ia64-opc-b.c ia64-opc-f.c \
-  ia64-opc-x.c ia64-opc-d.c
+  $(BFD_H) $(INCDIR)/symcat.h ia64-opc-a.c ia64-opc-i.c \
+  ia64-opc-m.c ia64-opc-b.c ia64-opc-f.c ia64-opc-x.c \
+  ia64-opc-d.c
 ia64-asmtab.lo: ia64-asmtab.c
 ip2k-asm.lo: ip2k-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 ip2k-desc.lo: ip2k-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 ip2k-dis.lo: ip2k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h opintl.h
 ip2k-ibld.lo: ip2k-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  ip2k-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 ip2k-opc.lo: ip2k-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h ip2k-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h ip2k-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  ip2k-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/safe-ctype.h
 iq2000-asm.lo: iq2000-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 iq2000-desc.lo: iq2000-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 iq2000-dis.lo: iq2000-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h opintl.h
 iq2000-ibld.lo: iq2000-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  iq2000-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 iq2000-opc.lo: iq2000-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h iq2000-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(BFD_H) $(INCDIR)/symcat.h iq2000-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  iq2000-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 m32c-asm.lo: m32c-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-m32c-desc.lo: m32c-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
-  $(INCDIR)/xregex2.h
-m32c-dis.lo: m32c-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h opintl.h \
-  $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/bfdlink.h
-m32c-ibld.lo: m32c-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
   m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
-  opintl.h $(INCDIR)/safe-ctype.h
-m32c-opc.lo: m32c-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h \
-  cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
-m32r-asm.lo: m32r-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
   opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-m32r-desc.lo: m32r-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
+m32c-desc.lo: m32c-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
   opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
-m32r-dis.lo: m32r-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
-  opintl.h
-m32r-ibld.lo: m32r-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  m32r-opc.h opintl.h $(INCDIR)/safe-ctype.h
-m32r-opc.lo: m32r-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h \
+m32c-dis.lo: m32c-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
+  opintl.h $(INCDIR)/elf/m32c.h $(INCDIR)/elf/reloc-macros.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
+m32c-ibld.lo: m32c-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h m32c-opc.h cgen-types.h \
+  ../bfd/bfd_stdint.h cgen-ops.h opintl.h $(INCDIR)/safe-ctype.h
+m32c-opc.lo: m32c-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32c-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32c-opc.h cgen-types.h ../bfd/bfd_stdint.h cgen-ops.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+m32r-asm.lo: m32r-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+m32r-desc.lo: m32r-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
+m32r-dis.lo: m32r-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h opintl.h
+m32r-ibld.lo: m32r-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+m32r-opc.lo: m32r-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 m32r-opinst.lo: m32r-opinst.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h m32r-opc.h
+  $(BFD_H) $(INCDIR)/symcat.h m32r-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  m32r-opc.h
 m68hc11-dis.lo: m68hc11-dis.c $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68hc11.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 m68hc11-opc.lo: m68hc11-opc.c $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68hc11.h
 m68k-dis.lo: m68k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/floatformat.h $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h \
-  opintl.h $(INCDIR)/opcode/m68k.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/floatformat.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h opintl.h \
+  $(INCDIR)/opcode/m68k.h
 m68k-opc.lo: m68k-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/m68k.h
 m88k-dis.lo: m88k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/m88k.h opintl.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/m88k.h \
+  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 maxq-dis.lo: maxq-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/maxq.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/maxq.h
 mcore-dis.lo: mcore-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  mcore-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h
+  mcore-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 mep-asm.lo: mep-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 mep-desc.lo: mep-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 mep-dis.lo: mep-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  opintl.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h opintl.h $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h \
   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h
 mep-ibld.lo: mep-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  mep-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h mep-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h mep-opc.h opintl.h $(INCDIR)/safe-ctype.h
 mep-opc.lo: mep-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mep-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mep-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/elf/mep.h \
-  $(INCDIR)/elf/reloc-macros.h
+  $(BFD_H) $(INCDIR)/symcat.h mep-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mep-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/elf/mep.h $(INCDIR)/elf/reloc-macros.h
 mips-dis.lo: mips-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/opcode/mips.h \
-  opintl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/opcode/mips.h opintl.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h \
+  $(INCDIR)/elf/reloc-macros.h
 mips-opc.lo: mips-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mips.h
 mips16-opc.lo: mips16-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mips.h
 m10200-dis.lo: m10200-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10200.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 m10200-opc.lo: m10200-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10200.h
 m10300-dis.lo: m10300-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10300.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 m10300-opc.lo: m10300-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/mn10300.h
 mmix-dis.lo: mmix-dis.c $(INCDIR)/opcode/mmix.h $(INCDIR)/dis-asm.h \
   $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) opintl.h
+  $(INCDIR)/ansidecl.h opintl.h
 mmix-opc.lo: mmix-opc.c $(INCDIR)/opcode/mmix.h $(INCDIR)/symcat.h
 mt-asm.lo: mt-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 mt-desc.lo: mt-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 mt-dis.lo: mt-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h opintl.h
 mt-ibld.lo: mt-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  mt-opc.h opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h mt-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h mt-opc.h opintl.h $(INCDIR)/safe-ctype.h
 mt-opc.lo: mt-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  mt-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h mt-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h mt-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  mt-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/safe-ctype.h
 ns32k-dis.lo: ns32k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h \
-  $(BFD_H) $(INCDIR)/opcode/ns32k.h opintl.h
-openrisc-asm.lo: openrisc-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
-openrisc-desc.lo: openrisc-desc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h openrisc-desc.h \
-  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
-openrisc-dis.lo: openrisc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
+  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h $(INCDIR)/opcode/ns32k.h \
   opintl.h
-openrisc-ibld.lo: openrisc-ibld.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h \
+openrisc-asm.lo: openrisc-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+openrisc-desc.lo: openrisc-desc.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  opintl.h $(INCDIR)/safe-ctype.h
-openrisc-opc.lo: openrisc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
+  $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
+  $(INCDIR)/xregex2.h
+openrisc-dis.lo: openrisc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h opintl.h
+openrisc-ibld.lo: openrisc-ibld.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
   openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cgen-bitset.h openrisc-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+openrisc-opc.lo: openrisc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h openrisc-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  openrisc-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 or32-dis.lo: or32-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/opcode/or32.h \
   $(INCDIR)/safe-ctype.h
 or32-opc.lo: or32-opc.c $(INCDIR)/safe-ctype.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/or32.h
 pdp11-dis.lo: pdp11-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/pdp11.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/pdp11.h
 pdp11-opc.lo: pdp11-opc.c $(INCDIR)/opcode/pdp11.h
 pj-dis.lo: pj-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/pj.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 pj-opc.lo: pj-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/pj.h
 ppc-dis.lo: ppc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/ppc.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/ppc.h
 ppc-opc.lo: ppc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/ppc.h opintl.h
 s390-mkopc.lo: s390-mkopc.c
 s390-opc.lo: s390-opc.c $(INCDIR)/ansidecl.h $(INCDIR)/opcode/s390.h \
   s390-opc.tab
 s390-dis.lo: s390-dis.c $(INCDIR)/ansidecl.h sysdep.h \
-  config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h opintl.h $(INCDIR)/opcode/s390.h
+  config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  opintl.h $(INCDIR)/opcode/s390.h
 score-dis.lo: score-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  score-opc.h opintl.h $(BFD_H) $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h score-opc.h \
+  opintl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/internal.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
+  $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h
 sh-dis.lo: sh-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  sh-opc.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/dis-asm.h $(BFD_H)
+  sh-opc.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.h
 sh64-dis.lo: sh64-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
   $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h sysdep.h config.h \
-  $(INCDIR)/ansidecl.h sh64-opc.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h
+  sh64-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/sh.h \
+  $(INCDIR)/elf/reloc-macros.h $(BFDDIR)/elf32-sh64.h
 sh64-opc.lo: sh64-opc.c sh64-opc.h
 sparc-dis.lo: sparc-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/sparc.h $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h opintl.h
+  $(INCDIR)/opcode/sparc.h $(INCDIR)/dis-asm.h $(BFD_H) \
+  $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  opintl.h
 sparc-opc.lo: sparc-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/opcode/sparc.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/sparc.h
 spu-dis.lo: spu-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h
-spu-opc.lo: spu-opc.c $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/spu.h \
   $(INCDIR)/opcode/spu-insns.h
+spu-opc.lo: spu-opc.c $(INCDIR)/opcode/spu.h $(INCDIR)/opcode/spu-insns.h
 tic30-dis.lo: tic30-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic30.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic30.h
 tic4x-dis.lo: tic4x-dis.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
   $(INCDIR)/opcode/tic4x.h
 tic54x-dis.lo: tic54x-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic54x.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic54x.h \
+  $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h
 tic54x-opc.lo: tic54x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(INCDIR)/opcode/tic54x.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/tic54x.h
 tic80-dis.lo: tic80-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/tic80.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/symcat.h
 tic80-opc.lo: tic80-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/tic80.h
 v850-dis.lo: v850-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/v850.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h opintl.h
+  $(INCDIR)/symcat.h opintl.h
 v850-opc.lo: v850-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/v850.h opintl.h
 vax-dis.lo: vax-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/opcode/vax.h $(INCDIR)/dis-asm.h $(BFD_H) \
-  $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
-w65-dis.lo: w65-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  w65-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
   $(INCDIR)/symcat.h
+w65-dis.lo: w65-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  w65-opc.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 xc16x-asm.lo: xc16x-asm.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 xc16x-desc.lo: xc16x-desc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
 xc16x-dis.lo: xc16x-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  opintl.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h opintl.h
 xc16x-ibld.lo: xc16x-ibld.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  xc16x-opc.h opintl.h $(INCDIR)/safe-ctype.h
-xc16x-opc.lo: xc16x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h $(INCDIR)/symcat.h \
-  xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
-xstormy16-asm.lo: xstormy16-asm.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/opcode/cgen-bitset.h xc16x-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
+xc16x-opc.lo: xc16x-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
+  $(BFD_H) $(INCDIR)/symcat.h xc16x-desc.h $(INCDIR)/opcode/cgen-bitset.h \
+  $(INCDIR)/opcode/cgen.h $(INCDIR)/opcode/cgen-bitset.h \
+  xc16x-opc.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+xstormy16-asm.lo: xstormy16-asm.c sysdep.h config.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/safe-ctype.h
 xstormy16-desc.lo: xstormy16-desc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/xregex.h $(INCDIR)/xregex2.h
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h $(INCDIR)/xregex.h \
+  $(INCDIR)/xregex2.h
 xstormy16-dis.lo: xstormy16-dis.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/ansidecl.h xstormy16-desc.h $(INCDIR)/opcode/cgen-bitset.h \
-  $(INCDIR)/opcode/cgen.h $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h \
-  xstormy16-opc.h opintl.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h xstormy16-desc.h \
+  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h
 xstormy16-ibld.lo: xstormy16-ibld.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
-  $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  opintl.h $(INCDIR)/safe-ctype.h
+  $(INCDIR)/ansidecl.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h \
+  xstormy16-desc.h $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h opintl.h \
+  $(INCDIR)/safe-ctype.h
 xstormy16-opc.lo: xstormy16-opc.c sysdep.h config.h \
-  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h $(INCDIR)/symcat.h xstormy16-desc.h \
+  $(INCDIR)/ansidecl.h $(BFD_H) $(INCDIR)/symcat.h xstormy16-desc.h \
   $(INCDIR)/opcode/cgen-bitset.h $(INCDIR)/opcode/cgen.h \
-  $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \
-  $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
+  $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h $(INCDIR)/libiberty.h \
+  $(INCDIR)/ansidecl.h
 xtensa-dis.lo: xtensa-dis.c $(INCDIR)/xtensa-isa.h \
   $(INCDIR)/ansidecl.h $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \
-  sysdep.h config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h \
-  $(INCDIR)/symcat.h
+  sysdep.h config.h $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 z80-dis.lo: z80-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h
 z8k-dis.lo: z8k-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
-  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h \
-  z8k-opc.h
+  $(INCDIR)/dis-asm.h $(BFD_H) $(INCDIR)/symcat.h z8k-opc.h
 z8kgen.lo: z8kgen.c sysdep.h config.h $(INCDIR)/ansidecl.h \
   $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h
 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/opcodes/aclocal.m4 b/opcodes/aclocal.m4
index 50e7e23..b1b4796 100644
--- a/opcodes/aclocal.m4
+++ b/opcodes/aclocal.m4
@@ -872,3 +872,4 @@
 m4_include([../ltoptions.m4])
 m4_include([../ltsugar.m4])
 m4_include([../ltversion.m4])
+m4_include([../lt~obsolete.m4])
diff --git a/opcodes/configure b/opcodes/configure
index 80fc09c..90291a9 100755
--- a/opcodes/configure
+++ b/opcodes/configure
@@ -458,7 +458,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP AR ac_ct_AR RANLIB ac_ct_RANLIB LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S lt_ECHO WARN_CFLAGS NO_WERROR MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT INSTALL_LIBBFD_TRUE INSTALL_LIBBFD_FALSE host_noncanonical target_noncanonical bfdlibdir bfdincludedir USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE CC_FOR_BUILD EXEEXT_FOR_BUILD HDEFINES CGEN_MAINT_TRUE CGEN_MAINT_FALSE cgendir SHARED_LDFLAGS SHARED_LIBADD SHARED_DEPENDENCIES archdefs BFD_MACHINES LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP AR ac_ct_AR RANLIB ac_ct_RANLIB LIBTOOL SED FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 WARN_CFLAGS NO_WERROR MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT INSTALL_LIBBFD_TRUE INSTALL_LIBBFD_FALSE host_noncanonical target_noncanonical bfdlibdir bfdincludedir USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT MKINSTALLDIRS MSGFMT MSGMERGE CC_FOR_BUILD EXEEXT_FOR_BUILD HDEFINES CGEN_MAINT_TRUE CGEN_MAINT_FALSE cgendir SHARED_LDFLAGS SHARED_LIBADD SHARED_DEPENDENCIES archdefs BFD_MACHINES LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 ac_pwd=`pwd`
 
@@ -4930,10 +4930,17 @@
 
 
 
+case `pwd` in
+  *\ * | *\	*)
+    { echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
 
 
-macro_version='2.1a'
-macro_revision='1.2435'
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
 
 
 
@@ -4948,94 +4955,6 @@
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
-# Set options
-
-enable_dlopen=no
-
-
-enable_win32_dll=no
-
-
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi;
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic or --without-pic was given.
-if test "${with_pic+set}" = set; then
-  withval="$with_pic"
-  pic_mode="$withval"
-else
-  pic_mode=default
-fi;
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-# Check whether --enable-fast-install or --disable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then
-  enableval="$enable_fast_install"
-  p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi;
-
-
-
-
-
-
-
-
 echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
 echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6
 if test "${lt_cv_path_SED+set}" = set; then
@@ -5256,7 +5175,6 @@
 
 
 
-
 echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
 echo $ECHO_N "checking for BSD- or MS-compatible name lister (nm)... $ECHO_C" >&6
 if test "${lt_cv_path_NM+set}" = set; then
@@ -5418,13 +5336,13 @@
 else
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:5421: $ac_compile\"" >&5)
+  (eval echo "\"\$as_me:5339: $ac_compile\"" >&5)
   (eval "$ac_compile" 2>conftest.err)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5424: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+  (eval echo "\"\$as_me:5342: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
   cat conftest.err >&5
-  (eval echo "\"\$as_me:5427: output\"" >&5)
+  (eval echo "\"\$as_me:5345: output\"" >&5)
   cat conftest.out >&5
   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
     lt_cv_nm_interface="MS dumpbin"
@@ -5470,7 +5388,7 @@
     lt_cv_sys_max_cmd_len=-1;
     ;;
 
-  cygwin* | mingw*)
+  cygwin* | mingw* | cegcc*)
     # On Win9x/ME, this test blows up -- it succeeds, but takes
     # about 5 minutes as the teststring grows exponentially.
     # Worse, since 9x/ME are not pre-emptively multitasking,
@@ -5531,8 +5449,8 @@
     fi
     ;;
   *)
-    lt_cv_sys_max_cmd_len=`getconf ARG_MAX 2> /dev/null`
-    if test -n $lt_cv_sys_max_cmd_len; then
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -5579,7 +5497,6 @@
 
 
 
-
 : ${CP="cp -f"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
@@ -5590,7 +5507,9 @@
 xsi_shell=no
 ( _lt_dummy="a/b/c"
   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,, ) >/dev/null 2>&1 \
+      = c,a/b,, \
+    && eval 'test $(( 1 + 1 )) -eq 2 \
+    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
   && xsi_shell=yes
 echo "$as_me:$LINENO: result: $xsi_shell" >&5
 echo "${ECHO_T}$xsi_shell" >&6
@@ -5670,6 +5589,95 @@
 
 
 
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+echo "${ECHO_T}$OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OBJDUMP" && ac_cv_prog_ac_ct_OBJDUMP="false"
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+echo "${ECHO_T}$ac_ct_OBJDUMP" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OBJDUMP=$ac_ct_OBJDUMP
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
 
 echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
 echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6
@@ -5724,6 +5732,12 @@
   fi
   ;;
 
+cegcc)
+  # use the weaker test based on 'objdump'. See mingw*.
+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -6146,7 +6160,7 @@
 
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -6226,7 +6240,7 @@
 aix*)
   symcode='[BCDT]'
   ;;
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
@@ -6270,6 +6284,7 @@
 
 # Transform an extracted symbol line into symbol name and symbol address
 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6409,7 +6424,7 @@
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6448,6 +6463,11 @@
 
 
 
+
+
+
+
+
 # Check whether --enable-libtool-lock or --disable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then
   enableval="$enable_libtool_lock"
@@ -6479,7 +6499,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 6482 "configure"' > conftest.$ac_ext
+  echo '#line 6502 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -6654,7 +6674,11 @@
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -6666,6 +6690,559 @@
 need_locks="$enable_libtool_lock"
 
 
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_DSYMUTIL" && ac_cv_prog_ac_ct_DSYMUTIL=":"
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  DSYMUTIL=$ac_ct_DSYMUTIL
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_NMEDIT" && ac_cv_prog_ac_ct_NMEDIT=":"
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  NMEDIT=$ac_ct_NMEDIT
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+  echo "$as_me:$LINENO: result: $LIPO" >&5
+echo "${ECHO_T}$LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+  ac_ct_LIPO=$LIPO
+  # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LIPO"; then
+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_LIPO="lipo"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_LIPO" && ac_cv_prog_ac_ct_LIPO=":"
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+  echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+echo "${ECHO_T}$ac_ct_LIPO" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LIPO=$ac_ct_LIPO
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  echo "$as_me:$LINENO: result: $OTOOL" >&5
+echo "${ECHO_T}$OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL" && ac_cv_prog_ac_ct_OTOOL=":"
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+echo "${ECHO_T}$ac_ct_OTOOL" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL=$ac_ct_OTOOL
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  echo "$as_me:$LINENO: result: $OTOOL64" >&5
+echo "${ECHO_T}$OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_prog_ac_ct_OTOOL64" && ac_cv_prog_ac_ct_OTOOL64=":"
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+echo "${ECHO_T}$ac_ct_OTOOL64" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  OTOOL64=$ac_ct_OTOOL64
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+	# By default we will add the -single_module flag. You can override
+	# by either setting the environment variable LT_MULTI_MODULE
+	# non-empty at configure time, or by adding -multi_module to the
+	# link flags.
+	rm -rf libconftest.dylib*
+	echo "int foo(void){return 1;}" > conftest.c
+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+	  lt_cv_apple_cc_single_mod=yes
+	else
+	  cat conftest.err >&5
+	fi
+	rm -rf libconftest.dylib*
+	rm -f conftest.*
+      fi
+fi
+echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6
+    echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -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=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+lt_cv_ld_exported_symbols_list=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+      conftest$ac_exeext conftest.$ac_ext
+	LDFLAGS="$save_LDFLAGS"
+
+fi
+echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	10.[012]*)
+	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	10.*)
+	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 for ac_header in dlfcn.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -6728,6 +7305,98 @@
 
 
 
+# Set options
+
+
+
+        enable_dlopen=no
+
+
+  enable_win32_dll=no
+
+
+
+  # Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_static=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_static=yes
+fi;
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+  # Check whether --enable-fast-install or --disable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+  enableval="$enable_fast_install"
+  p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_fast_install=yes ;;
+    no) enable_fast_install=no ;;
+    *)
+      enable_fast_install=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+	IFS="$lt_save_ifs"
+	if test "X$pkg" = "X$p"; then
+	  enable_fast_install=yes
+	fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
+else
+  enable_fast_install=yes
+fi;
+
+
+
+
+
+
+
+
+
+
 # This can be used to rebuild libtool when needed
 LIBTOOL_DEPS="$ltmain"
 
@@ -7074,7 +7743,7 @@
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$RM conftest*
+$RM -r conftest*
 
 
 ## CAVEAT EMPTOR:
@@ -7106,11 +7775,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7109: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7778: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7113: \$? = $ac_status" >&5
+   echo "$as_me:7782: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7160,19 +7829,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        # FIXME: we need at least 68020 code to build shared libraries, but
-        # adding the `-m68020' flag to GCC prevents building anything better,
-        # like `-m68040'.
-        lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-      fi
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            lt_prog_compiler_pic='-fPIC'
+        ;;
+      m68k)
+            # FIXME: we need at least 68020 code to build shared libraries, but
+            # adding the `-m68020' flag to GCC prevents building anything better,
+            # like `-m68040'.
+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+        ;;
+      esac
       ;;
 
     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
@@ -7187,10 +7862,11 @@
       ;;
 
     hpux*)
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+      # sets the default TLS model and affects inlining.
       case $host_cpu in
-      hppa*64*|ia64*)
+      hppa*64*)
 	# +Z the default
 	;;
       *)
@@ -7239,18 +7915,8 @@
 	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
       fi
       ;;
-    darwin*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      case $cc_basename in
-      xlc*)
-        lt_prog_compiler_pic='-qnocommon'
-        lt_prog_compiler_wl='-Wl,'
-        ;;
-      esac
-      ;;
 
-    mingw* | cygwin* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7280,11 +7946,25 @@
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc*)
+      # old Intel for x86_64 which still supported -KPIC.
+      ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # icc used to be incompatible with GCC.
+      # ICC 10 doesn't accept -KPIC any more.
+      icc* | ifort*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
+      # Lahey Fortran 8.1.
+      lf95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='--shared'
+	lt_prog_compiler_static='--static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -7297,6 +7977,12 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      xl*)
+	# IBM XL C 8.0/Fortran 10.1 on PPC
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-qpic'
+	lt_prog_compiler_static='-qstaticlink'
+	;;
       *)
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)
@@ -7412,10 +8098,10 @@
 if test -n "$lt_prog_compiler_pic"; then
   echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7428,27 +8114,27 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7431: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8117: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7435: \$? = $ac_status" >&5
+   echo "$as_me:8121: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $RM conftest*
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7471,10 +8157,10 @@
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7487,20 +8173,20 @@
        $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $RM conftest*
+   $RM -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6
+echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7533,11 +8219,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7536: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8222: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7540: \$? = $ac_status" >&5
+   echo "$as_me:8226: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7588,11 +8274,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7591: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:8277: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7595: \$? = $ac_status" >&5
+   echo "$as_me:8281: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7682,16 +8368,17 @@
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
 
   case $host_os in
-  cygwin* | mingw* | pw32*)
+  cygwin* | mingw* | pw32* | cegcc*)
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
@@ -7753,19 +8440,18 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-
-      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we can't use
-      # them.
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     beos*)
@@ -7779,7 +8465,7 @@
       fi
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
@@ -7830,6 +8516,7 @@
 	 && test "$tmp_diet" = no
       then
 	tmp_addflag=
+	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
 	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
@@ -7844,6 +8531,12 @@
 	  tmp_addflag=' -i_dynamic -nofor_main' ;;
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
+	lf95*)				# Lahey Fortran 8.1
+	  whole_archive_flag_spec=
+	  tmp_sharedflag='--shared' ;;
+	xl[cC]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+	  tmp_sharedflag='-qmkshrobj'
+	  tmp_addflag= ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
@@ -7852,8 +8545,6 @@
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
-	*)
-	  tmp_sharedflag='-shared' ;;
 	esac
 	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
@@ -7863,6 +8554,22 @@
 	    echo "local: *; };" >> $output_objdir/$libname.ver~
 	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
         fi
+
+	case $cc_basename in
+	xlf*)
+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+	  hardcode_libdir_flag_spec=
+	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
+	  archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+	  if test "x$supports_anon_versioning" = xyes; then
+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+	      echo "local: *; };" >> $output_objdir/$libname.ver~
+	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+	  fi
+	  ;;
+	esac
       else
         ld_shlibs=no
       fi
@@ -8058,6 +8765,7 @@
 	fi
       fi
 
+      export_dynamic_flag_spec='${wl}-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
@@ -8210,20 +8918,25 @@
       ;;
 
     amigaos*)
-      if test "$host_cpu" = m68k; then
-        archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-        hardcode_libdir_flag_spec='-L$libdir'
-        hardcode_minus_L=yes
-      fi
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case $host_cpu in
+      powerpc)
+            # see comment about AmigaOS4 .so support
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_expsym_cmds=''
+        ;;
+      m68k)
+            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+            hardcode_libdir_flag_spec='-L$libdir'
+            hardcode_minus_L=yes
+        ;;
+      esac
       ;;
 
     bsdi[45]*)
       export_dynamic_flag_spec=-rdynamic
       ;;
 
-    cygwin* | mingw* | pw32*)
+    cygwin* | mingw* | pw32* | cegcc*)
       # When not using gcc, we currently assume that we are using
       # Microsoft Visual C++.
       # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8245,73 +8958,30 @@
       ;;
 
     darwin* | rhapsody*)
-      case $host_os in
-      rhapsody* | darwin1.[012])
-	allow_undefined_flag='${wl}-undefined ${wl}suppress'
-	;;
-      *) # Darwin 1.3 on
-	case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
-	10.[012])
-	  allow_undefined_flag='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-	  ;;
-	10.*)
-	  allow_undefined_flag='${wl}-undefined ${wl}dynamic_lookup'
-	  ;;
-	esac
-	;;
-      esac
-      archive_cmds_need_lc=no
-      hardcode_direct=no
-      hardcode_automatic=yes
-      hardcode_shlibpath_var=unsupported
-      whole_archive_flag_spec=''
-      link_all_deplibs=yes
-      if test "$GCC" = yes ; then
-	if test "${lt_cv_apple_cc_single_mod+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  lt_cv_apple_cc_single_mod=no
-	if test -z "${LT_MULTI_MODULE}"; then
-	  # By default we will add the -single_module flag. You can override
-	  # by either setting the environment variable LT_MULTI_MODULE
-	  # non-empty at configure time, or by adding -multi-module to the
-	  # link flags.
-	  echo "int foo(void){return 1;}" > conftest.c
-	  $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	      -dynamiclib ${wl}-single_module conftest.c
-	  if test -f libconftest.dylib; then
-	      lt_cv_apple_cc_single_mod=yes
-	      rm libconftest.dylib
-	  fi
-	  rm conftest.$ac_ext
-	fi
-fi
 
-	output_verbose_link_cmd=echo
-	if test "X$lt_cv_apple_cc_single_mod" = Xyes ; then
-	  archive_cmds='$CC -dynamiclib $single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $single_module -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	else
-	  archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	fi
-	module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	module_expsym_cmds='sed -e "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      else
-	case $cc_basename in
-	xlc*)
-	  output_verbose_link_cmd=echo
-	  archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`$ECHO $rpath/$soname` $verstring'
-	  module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-	  # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-	  archive_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  module_expsym_cmds='sed "s,^,_," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-	  ;;
-	*)
-	  ld_shlibs=no
-	  ;;
-	esac
-      fi
+
+  archive_cmds_need_lc=no
+  hardcode_direct=no
+  hardcode_automatic=yes
+  hardcode_shlibpath_var=unsupported
+  whole_archive_flag_spec=''
+  link_all_deplibs=yes
+  allow_undefined_flag="$_lt_dar_allow_undefined"
+  case $cc_basename in
+     ifort*) _lt_dar_can_shared=yes ;;
+     *) _lt_dar_can_shared=$GCC ;;
+  esac
+  if test "$_lt_dar_can_shared" = "yes"; then
+    output_verbose_link_cmd=echo
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+  else
+  ld_shlibs=no
+  fi
+
       ;;
 
     dgux*)
@@ -8393,7 +9063,7 @@
 	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	  archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -8511,25 +9181,29 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      hardcode_direct_absolute=yes
-      if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
-      else
-        case $host_os in
-	openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	  archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_libdir_flag_spec='-R$libdir'
-	  ;;
-	*)
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	hardcode_direct_absolute=yes
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  ;;
-        esac
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+	fi
+      else
+	ld_shlibs=no
       fi
       ;;
 
@@ -8968,8 +9642,8 @@
 
   echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
 echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
-withGCC=$GCC
-if test "$withGCC" = yes; then
+
+if test "$GCC" = yes; then
   case $host_os in
     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
     *) lt_awk_arg="/^libraries:/" ;;
@@ -9095,13 +9769,18 @@
   ;;
 
 amigaos*)
-  if test "$host_cpu" = m68k; then
+  case $host_cpu in
+  powerpc)
+    # Since July 2007 AmigaOS4 officially supports .so libraries.
+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    ;;
+  m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-  else
-    dynamic_linker=no
-  fi
+    ;;
+  esac
   ;;
 
 beos*)
@@ -9124,14 +9803,14 @@
   # libtool to hard-code these into programs
   ;;
 
-cygwin* | mingw* | pw32*)
+cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
   shrext_cmds=".dll"
   need_version=no
   need_lib_prefix=no
 
-  case $withGCC,$host_os in
-  yes,cygwin* | yes,mingw* | yes,pw32*)
+  case $GCC,$host_os in
+  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
     postinstall_cmds='base_file=`basename \${file}`~
@@ -9154,7 +9833,7 @@
       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
       ;;
-    mingw*)
+    mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
       soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
       sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
@@ -9420,7 +10099,7 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir"; then
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
   shlibpath_overrides_runpath=yes
 fi
 
@@ -9441,7 +10120,7 @@
 
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
@@ -9625,7 +10304,7 @@
   version_type=linux
   need_lib_prefix=no
   need_version=no
-  library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -9651,6 +10330,13 @@
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
 
 
 
@@ -9795,7 +10481,7 @@
     lt_cv_dlopen_self=yes
     ;;
 
-  mingw* | pw32*)
+  mingw* | pw32* | cegcc*)
     lt_cv_dlopen="LoadLibrary"
     lt_cv_dlopen_libs=
     ;;
@@ -10042,7 +10728,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
@@ -10336,7 +11022,7 @@
 echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -10385,7 +11071,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10388 "configure"
+#line 11074 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10426,10 +11112,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10445,7 +11127,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -10485,7 +11167,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10488 "configure"
+#line 11170 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10526,10 +11208,6 @@
 #  endif
 #endif
 
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
 void fnord() { int i=42;}
 int main ()
 {
@@ -10545,7 +11223,7 @@
   else
     puts (dlerror ());
 
-    exit (status);
+  return status;
 }
 _LT_EOF
   if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
@@ -11758,6 +12436,10 @@
           SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.sl"
 	  ;;
 	*)
+	  # It is tempting to include libiberty here as well, but
+	  # that library is only built as a static version.
+	  # Including it here would insert text relocations into
+	  # the opcodes library, which is undesirable.
           SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.so"
 	  ;;
       esac
@@ -12537,6 +13219,7 @@
 lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
 reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
 reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
 deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
 file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
 AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12553,6 +13236,7 @@
 lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
 objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
 SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
 ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12563,6 +13247,11 @@
 lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
 lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
 need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
 libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
 shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
 extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
@@ -12636,6 +13325,7 @@
 lt_SP2NL \
 lt_NL2SP \
 reload_flag \
+OBJDUMP \
 deplibs_check_method \
 file_magic_cmd \
 AR \
@@ -12648,6 +13338,7 @@
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
 lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
 SHELL \
 ECHO \
 lt_prog_compiler_no_builtin_flag \
@@ -12656,6 +13347,11 @@
 lt_prog_compiler_static \
 lt_cv_prog_compiler_c_o \
 need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
 shrext_cmds \
 export_dynamic_flag_spec \
 whole_archive_flag_spec \
@@ -12914,7 +13610,19 @@
 s,@ac_ct_DUMPBIN@,$ac_ct_DUMPBIN,;t t
 s,@NM@,$NM,;t t
 s,@LN_S@,$LN_S,;t t
+s,@OBJDUMP@,$OBJDUMP,;t t
+s,@ac_ct_OBJDUMP@,$ac_ct_OBJDUMP,;t t
 s,@lt_ECHO@,$lt_ECHO,;t t
+s,@DSYMUTIL@,$DSYMUTIL,;t t
+s,@ac_ct_DSYMUTIL@,$ac_ct_DSYMUTIL,;t t
+s,@NMEDIT@,$NMEDIT,;t t
+s,@ac_ct_NMEDIT@,$ac_ct_NMEDIT,;t t
+s,@LIPO@,$LIPO,;t t
+s,@ac_ct_LIPO@,$ac_ct_LIPO,;t t
+s,@OTOOL@,$OTOOL,;t t
+s,@ac_ct_OTOOL@,$ac_ct_OTOOL,;t t
+s,@OTOOL64@,$OTOOL64,;t t
+s,@ac_ct_OTOOL64@,$ac_ct_OTOOL64,;t t
 s,@WARN_CFLAGS@,$WARN_CFLAGS,;t t
 s,@NO_WERROR@,$NO_WERROR,;t t
 s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
@@ -13652,36 +14360,36 @@
 #! $SHELL
 
 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+#                 2006, 2007, 2008 Free Software Foundation, Inc.
+#   Written by Gordon Matzigkeit, 1996
 #
-# This file is part of GNU Libtool:
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#   This file is part of GNU Libtool.
 #
-# 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.
+# GNU Libtool 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.
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool 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, a copy can be downloaded from
-# http://www.gnu.org/copyleft/gpl.html, or by writing to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 # The names of the tagged configurations supported by this script.
@@ -13758,6 +14466,9 @@
 reload_flag=$lt_reload_flag
 reload_cmds=$lt_reload_cmds
 
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
 # Method to check whether dependent libraries are shared objects.
 deplibs_check_method=$lt_deplibs_check_method
 
@@ -13791,6 +14502,9 @@
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -13806,6 +14520,21 @@
 # Must we lock files when doing compilation?
 need_locks=$lt_need_locks
 
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
 # Old archive suffix (normally "a").
 libext=$libext
 
@@ -14046,6 +14775,7 @@
   case $xsi_shell in
   yes)
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -14063,6 +14793,27 @@
   func_basename_result="${1##*/}"
 }
 
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+  case ${1} in
+    */*) func_dirname_result="${1%/*}${2}" ;;
+    *  ) func_dirname_result="${3}" ;;
+  esac
+  func_basename_result="${1##*/}"
+}
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -14092,10 +14843,31 @@
     *)    func_lo2o_result=${1} ;;
   esac
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=${#1}
+}
+
 _LT_EOF
     ;;
   *) # Bourne compatible functions.
     cat << \_LT_EOF >> "$cfgfile"
+
 # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.
@@ -14116,6 +14888,7 @@
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
 }
 
+
 # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special
@@ -14148,6 +14921,26 @@
 {
   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
 }
+
+# func_xform libobj-or-source
+func_xform ()
+{
+  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+  func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+  func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
 _LT_EOF
 esac
 
@@ -14172,6 +14965,7 @@
 {
   eval "$1=\$$1\$2"
 }
+
 _LT_EOF
     ;;
   esac
diff --git a/opcodes/configure.in b/opcodes/configure.in
index 2800eed..1efeb3f 100644
--- a/opcodes/configure.in
+++ b/opcodes/configure.in
@@ -118,6 +118,10 @@
           SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.sl"
 	  ;;
 	*)
+	  # It is tempting to include libiberty here as well, but
+	  # that library is only built as a static version.
+	  # Including it here would insert text relocations into
+	  # the opcodes library, which is undesirable.
           SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.so"
 	  ;;
       esac
diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c
index aa9a7ff..b9d055f 100644
--- a/opcodes/i386-gen.c
+++ b/opcodes/i386-gen.c
@@ -22,6 +22,7 @@
 #include <errno.h>
 #include "getopt.h"
 #include "libiberty.h"
+#include "hashtab.h"
 #include "safe-ctype.h"
 
 #include "i386-opc.h"
@@ -473,7 +474,7 @@
    pointer to the one after it.  */
 
 static char *
-next_field (char *str, char sep, char **next)
+next_field (char *str, char sep, char **next, char *last)
 {
   char *p;
 
@@ -485,6 +486,9 @@
 
   *next = str + 1; 
 
+  if (p >= last)
+    abort ();
+
   return p;
 }
 
@@ -559,7 +563,7 @@
       last = flag + strlen (flag);
       for (next = flag; next && next < last; )
 	{
-	  str = next_field (next, '|', &next);
+	  str = next_field (next, '|', &next, last);
 	  if (str)
 	    set_bitfield (str, flags, ARRAY_SIZE (flags));
 	}
@@ -600,7 +604,7 @@
       last = mod + strlen (mod);
       for (next = mod; next && next < last; )
 	{
-	  str = next_field (next, '|', &next);
+	  str = next_field (next, '|', &next, last);
 	  if (str)
 	    set_bitfield (str, modifiers, ARRAY_SIZE (modifiers));
 	}
@@ -647,7 +651,7 @@
       last = op + strlen (op);
       for (next = op; next && next < last; )
 	{
-	  str = next_field (next, '|', &next);
+	  str = next_field (next, '|', &next, last);
 	  if (str)
 	    set_bitfield (str, types, ARRAY_SIZE (types));
 	}
@@ -657,15 +661,139 @@
 }
 
 static void
+output_i386_opcode (FILE *table, const char *name, char *str,
+		    char *last)
+{
+  unsigned int i;
+  char *operands, *base_opcode, *extension_opcode, *opcode_length;
+  char *cpu_flags, *opcode_modifier, *operand_types [MAX_OPERANDS];
+
+  /* Find number of operands.  */
+  operands = next_field (str, ',', &str, last);
+
+  /* Find base_opcode.  */
+  base_opcode = next_field (str, ',', &str, last);
+
+  /* Find extension_opcode.  */
+  extension_opcode = next_field (str, ',', &str, last);
+
+  /* Find opcode_length.  */
+  opcode_length = next_field (str, ',', &str, last);
+
+  /* Find cpu_flags.  */
+  cpu_flags = next_field (str, ',', &str, last);
+
+  /* Find opcode_modifier.  */
+  opcode_modifier = next_field (str, ',', &str, last);
+
+  /* Remove the first {.  */
+  str = remove_leading_whitespaces (str);
+  if (*str != '{')
+    abort ();
+  str = remove_leading_whitespaces (str + 1);
+
+  i = strlen (str);
+
+  /* There are at least "X}".  */
+  if (i < 2)
+    abort ();
+
+  /* Remove trailing white spaces and }. */
+  do
+    {
+      i--;
+      if (ISSPACE (str[i]) || str[i] == '}')
+	str[i] = '\0';
+      else
+	break;
+    }
+  while (i != 0);
+
+  last = str + i;
+
+  /* Find operand_types.  */
+  for (i = 0; i < ARRAY_SIZE (operand_types); i++)
+    {
+      if (str >= last)
+	{
+	  operand_types [i] = NULL;
+	  break;
+	}
+
+      operand_types [i] = next_field (str, ',', &str, last);
+      if (*operand_types[i] == '0')
+	{
+	  if (i != 0)
+	    operand_types[i] = NULL;
+	  break;
+	}
+    }
+
+  fprintf (table, "  { \"%s\", %s, %s, %s, %s,\n",
+	   name, operands, base_opcode, extension_opcode,
+	   opcode_length);
+
+  process_i386_cpu_flag (table, cpu_flags, 0, ",", "    ");
+
+  process_i386_opcode_modifier (table, opcode_modifier);
+
+  fprintf (table, "    { ");
+
+  for (i = 0; i < ARRAY_SIZE (operand_types); i++)
+    {
+      if (operand_types[i] == NULL || *operand_types[i] == '0')
+	{
+	  if (i == 0)
+	    process_i386_operand_type (table, "0", 0, "\t  ");
+	  break;
+	}
+
+      if (i != 0)
+	fprintf (table, ",\n      ");
+
+      process_i386_operand_type (table, operand_types[i], 0,
+				 "\t  ");
+    }
+  fprintf (table, " } },\n");
+}
+
+struct opcode_hash_entry
+{
+  struct opcode_hash_entry *next;
+  char *name;
+  char *opcode;
+};
+
+/* Calculate the hash value of an opcode hash entry P.  */
+
+static hashval_t
+opcode_hash_hash (const void *p)
+{
+  struct opcode_hash_entry *entry = (struct opcode_hash_entry *) p;
+  return htab_hash_string (entry->name);
+}
+
+/* Compare a string Q against an opcode hash entry P.  */
+
+static int
+opcode_hash_eq (const void *p, const void *q)
+{
+  struct opcode_hash_entry *entry = (struct opcode_hash_entry *) p;
+  const char *name = (const char *) q;
+  return strcmp (name, entry->name) == 0;
+}
+
+static void
 process_i386_opcodes (FILE *table)
 {
   FILE *fp;
   char buf[2048];
-  unsigned int i;
-  char *str, *p, *last;
-  char *name, *operands, *base_opcode, *extension_opcode;
-  char *opcode_length;
-  char *cpu_flags, *opcode_modifier, *operand_types [MAX_OPERANDS];
+  unsigned int i, j;
+  char *str, *p, *last, *name;
+  struct opcode_hash_entry **hash_slot, **entry, *next;
+  htab_t opcode_hash_table;
+  struct opcode_hash_entry **opcode_array;
+  unsigned int opcode_array_size = 1024;
 
   filename = "i386-opc.tbl";
   fp = fopen (filename, "r");
@@ -674,9 +802,18 @@
     fail (_("can't find i386-opc.tbl for reading, errno = %s\n"),
 	  xstrerror (errno));
 
+  i = 0;
+  opcode_array = (struct opcode_hash_entry **)
+    xmalloc (sizeof (*opcode_array) * opcode_array_size);
+
+  opcode_hash_table = htab_create_alloc (16, opcode_hash_hash,
+					 opcode_hash_eq, NULL,
+					 xcalloc, free);
+
   fprintf (table, "\n/* i386 opcode table.  */\n\n");
   fprintf (table, "const template i386_optab[] =\n{\n");
 
+  /* Put everything on opcode array.  */
   while (!feof (fp))
     {
       if (fgets (buf, sizeof (buf), fp) == NULL)
@@ -697,7 +834,7 @@
       switch (p[0])
 	{
 	case '#':
-	  fprintf (table, "%s\n", p);
+	  /* Ignore comments.  */
 	case '\0':
 	  continue;
 	  break;
@@ -708,117 +845,58 @@
       last = p + strlen (p);
 
       /* Find name.  */
-      name = next_field (p, ',', &str);
+      name = next_field (p, ',', &str, last);
 
-      if (str >= last)
-	abort ();
+      /* Get the slot in hash table.  */
+      hash_slot = (struct opcode_hash_entry **)
+	htab_find_slot_with_hash (opcode_hash_table, name,
+				  htab_hash_string (name),
+				  INSERT);
 
-      /* Find number of operands.  */
-      operands = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Find base_opcode.  */
-      base_opcode = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Find extension_opcode.  */
-      extension_opcode = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Find opcode_length.  */
-      opcode_length = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Find cpu_flags.  */
-      cpu_flags = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Find opcode_modifier.  */
-      opcode_modifier = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
-
-      /* Remove the first {.  */
-      str = remove_leading_whitespaces (str);
-      if (*str != '{')
-	abort ();
-      str = remove_leading_whitespaces (str + 1);
-
-      i = strlen (str);
-
-      /* There are at least "X}".  */
-      if (i < 2)
-	abort ();
-
-      /* Remove trailing white spaces and }. */
-      do
+      if (*hash_slot == NULL)
 	{
-	  i--;
-	  if (ISSPACE (str[i]) || str[i] == '}')
-	    str[i] = '\0';
-	  else
-	    break;
-	}
-      while (i != 0);
-
-      last = str + i;
-
-      /* Find operand_types.  */
-      for (i = 0; i < ARRAY_SIZE (operand_types); i++)
-	{
-	  if (str >= last)
+	  /* It is the new one.  Put it on opcode array.  */
+	  if (i >= opcode_array_size)
 	    {
-	      operand_types [i] = NULL;
-	      break;
+	      /* Grow the opcode array when needed.  */
+	      opcode_array_size += 1024;
+	      opcode_array = (struct opcode_hash_entry **)
+		xrealloc (opcode_array,
+			  sizeof (*opcode_array) * opcode_array_size);
 	    }
 
-	  operand_types [i] = next_field (str, ',', &str);
-	  if (*operand_types[i] == '0')
-	    {
-	      if (i != 0)
-		operand_types[i] = NULL;
-	      break;
-	    }
+	  opcode_array[i] = (struct opcode_hash_entry *)
+	    xmalloc (sizeof (struct opcode_hash_entry));
+	  opcode_array[i]->next = NULL;
+	  opcode_array[i]->name = xstrdup (name);
+	  opcode_array[i]->opcode = xstrdup (str);
+	  *hash_slot = opcode_array[i];
+	  i++;
 	}
-
-      fprintf (table, "  { \"%s\", %s, %s, %s, %s,\n",
-	       name, operands, base_opcode, extension_opcode,
-	       opcode_length);
-
-      process_i386_cpu_flag (table, cpu_flags, 0, ",", "    ");
-
-      process_i386_opcode_modifier (table, opcode_modifier);
-
-      fprintf (table, "    { ");
-
-      for (i = 0; i < ARRAY_SIZE (operand_types); i++)
+      else
 	{
-	  if (operand_types[i] == NULL
-	      || *operand_types[i] == '0')
-	    {
-	      if (i == 0)
-		process_i386_operand_type (table, "0", 0, "\t  ");
-	      break;
-	    }
-
-	  if (i != 0)
-	    fprintf (table, ",\n      ");
-
-	  process_i386_operand_type (table, operand_types[i], 0,
-				     "\t  ");
+	  /* Append it to the existing one.  */
+	  entry = hash_slot;
+	  while ((*entry) != NULL)
+	    entry = &(*entry)->next;
+	  *entry = (struct opcode_hash_entry *)
+	    xmalloc (sizeof (struct opcode_hash_entry));
+	  (*entry)->next = NULL;
+	  (*entry)->name = (*hash_slot)->name;
+	  (*entry)->opcode = xstrdup (str);
 	}
-      fprintf (table, " } },\n");
+    }
+
+  /* Process opcode array.  */
+  for (j = 0; j < i; j++)
+    {
+      for (next = opcode_array[j]; next; next = next->next)
+	{
+	  name = next->name;
+	  str = next->opcode;
+	  last = str + strlen (str);
+	  output_i386_opcode (table, name, str, last);
+	}
     }
 
   fclose (fp);
@@ -885,41 +963,26 @@
       last = p + strlen (p);
 
       /* Find reg_name.  */
-      reg_name = next_field (p, ',', &str);
-
-      if (str >= last)
-	abort ();
+      reg_name = next_field (p, ',', &str, last);
 
       /* Find reg_type.  */
-      reg_type = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
+      reg_type = next_field (str, ',', &str, last);
 
       /* Find reg_flags.  */
-      reg_flags = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
+      reg_flags = next_field (str, ',', &str, last);
 
       /* Find reg_num.  */
-      reg_num = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
+      reg_num = next_field (str, ',', &str, last);
 
       fprintf (table, "  { \"%s\",\n    ", reg_name);
 
       process_i386_operand_type (table, reg_type, 0, "\t");
 
       /* Find 32-bit Dwarf2 register number.  */
-      dw2_32_num = next_field (str, ',', &str);
-
-      if (str >= last)
-	abort ();
+      dw2_32_num = next_field (str, ',', &str, last);
 
       /* Find 64-bit Dwarf2 register number.  */
-      dw2_64_num = next_field (str, ',', &str);
+      dw2_64_num = next_field (str, ',', &str, last);
 
       fprintf (table, ",\n    %s, %s, { %s, %s } },\n",
 	       reg_flags, reg_num, dw2_32_num, dw2_64_num);
diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl
index 649740d..e898300 100644
--- a/opcodes/i386-opc.tbl
+++ b/opcodes/i386-opc.tbl
@@ -1140,31 +1140,31 @@
 cmpleps, 2, 0xc2, 0x2, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpleps, 2, 0xfc2, 0x2, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpless, 2, 0xf3c2, 0x2, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpless, 2, 0xf30fc2, 0x2, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpless, 2, 0xf30fc2, 0x2, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltps, 2, 0xc2, 0x1, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltps, 2, 0xfc2, 0x1, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltss, 2, 0xf3c2, 0x1, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpltss, 2, 0xf30fc2, 0x1, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpltss, 2, 0xf30fc2, 0x1, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqps, 2, 0xc2, 0x4, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqps, 2, 0xfc2, 0x4, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqss, 2, 0xf3c2, 0x4, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpneqss, 2, 0xf30fc2, 0x4, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpneqss, 2, 0xf30fc2, 0x4, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnleps, 2, 0xc2, 0x6, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnleps, 2, 0xfc2, 0x6, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnless, 2, 0xf3c2, 0x6, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpnless, 2, 0xf30fc2, 0x6, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpnless, 2, 0xf30fc2, 0x6, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltps, 2, 0xc2, 0x5, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltps, 2, 0xfc2, 0x5, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltss, 2, 0xf3c2, 0x5, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpnltss, 2, 0xf30fc2, 0x5, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpnltss, 2, 0xf30fc2, 0x5, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordps, 2, 0xc2, 0x7, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordps, 2, 0xfc2, 0x7, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordss, 2, 0xf3c2, 0x7, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpordss, 2, 0xf30fc2, 0x7, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpordss, 2, 0xf30fc2, 0x7, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpunordps, 2, 0xc2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpunordps, 2, 0xfc2, 0x3, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpunordss, 2, 0xf3c2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpunordss, 2, 0xf30fc2, 0x3, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpunordss, 2, 0xf3c2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpunordss, 2, 0xf30fc2, 0x3, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpps, 3, 0xc2, None, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpps, 3, 0xfc2, None, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpss, 3, 0xf3c2, None, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Imm8, Dword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
@@ -1322,31 +1322,31 @@
 cmplepd, 2, 0x66c2, 0x2, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmplepd, 2, 0x660fc2, 0x2, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmplesd, 2, 0xf2c2, 0x2, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmplesd, 2, 0xf20fc2, 0x2, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmplesd, 2, 0xf20fc2, 0x2, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltpd, 2, 0x66c2, 0x1, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltpd, 2, 0x660fc2, 0x1, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpltsd, 2, 0xf2c2, 0x1, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpltsd, 2, 0xf20fc2, 0x1, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpltsd, 2, 0xf20fc2, 0x1, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqpd, 2, 0x66c2, 0x4, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqpd, 2, 0x660fc2, 0x4, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpneqsd, 2, 0xf2c2, 0x4, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpneqsd, 2, 0xf20fc2, 0x4, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpneqsd, 2, 0xf20fc2, 0x4, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnlepd, 2, 0x66c2, 0x6, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnlepd, 2, 0x660fc2, 0x6, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnlesd, 2, 0xf2c2, 0x6, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpnlesd, 2, 0xf20fc2, 0x6, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpnlesd, 2, 0xf20fc2, 0x6, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltpd, 2, 0x66c2, 0x5, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltpd, 2, 0x660fc2, 0x5, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpnltsd, 2, 0xf2c2, 0x5, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpnltsd, 2, 0xf20fc2, 0x5, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpnltsd, 2, 0xf20fc2, 0x5, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordpd, 2, 0x66c2, 0x7, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordpd, 2, 0x660fc2, 0x7, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpordsd, 2, 0xf2c2, 0x7, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpordsd, 2, 0xf20fc2, 0x7, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpordsd, 2, 0xf20fc2, 0x7, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpunordpd, 2, 0x66c2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmpunordpd, 2, 0x660fc2, 0x3, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpunordsd, 2, 0xf2c2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-cmpunordsd, 2, 0xf20fc2, 0x3, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpunordsd, 2, 0xf2c2, 0x3, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|SSE2AVX, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+cmpunordsd, 2, 0xf20fc2, 0x3, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmppd, 3, 0x66c2, None, 1, CpuAVX, Modrm|Vex|Vex0F|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 cmppd, 3, 0x660fc2, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
 // Intel mode string compare.
diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h
index 7c687c3..f9ddc40 100644
--- a/opcodes/i386-tbl.h
+++ b/opcodes/i386-tbl.h
@@ -9452,8 +9452,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9500,8 +9500,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9548,8 +9548,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9596,8 +9596,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9644,8 +9644,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9692,8 +9692,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9728,8 +9728,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 
       0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
     { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -9740,8 +9740,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11618,8 +11618,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11666,8 +11666,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11714,8 +11714,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11762,8 +11762,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11810,8 +11810,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11858,8 +11858,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11894,8 +11894,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 
       0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
     { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
@@ -11906,8 +11906,8 @@
       1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-	  1, 0, 1, 0, 0, 0 } },
+	  1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 
+	  0, 0, 1, 0, 0, 0 } },
       { { 0, 0, 0, 0, 0, 0, 1, 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 } } } },
diff --git a/opcodes/po/fr.po b/opcodes/po/fr.po
index 41dd31f..91a78b9 100644
--- a/opcodes/po/fr.po
+++ b/opcodes/po/fr.po
@@ -1,49 +1,133 @@
 # Messages français pour opcodes.
-# Copyright © 2004 Free Software Foundation, Inc.
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
 # Michel Robitaille <robitail@IRO.UMontreal.CA>, traducteur depuis/since 1996.
+# Nicolas Provost <nprovost@quadriv.com>, 2008.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: opcodes 2.15.96\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-03-05 20:32+1030\n"
-"PO-Revision-Date: 2005-03-14 08:00-0500\n"
-"Last-Translator: Michel Robitaille <robitail@IRO.UMontreal.CA>\n"
+"Project-Id-Version: opcodes 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-09-24 15:24+0100\n"
+"Last-Translator: Nicolas Provost <nprovost@quadriv.com>\n"
 "Language-Team: French <traduc@traduc.org>\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:331
+#: alpha-opc.c:155
 msgid "branch operand unaligned"
-msgstr "opérande de branchement non alignée"
+msgstr "opérande de branchement non aligné"
 
-#: alpha-opc.c:353 alpha-opc.c:374
+#: alpha-opc.c:171 alpha-opc.c:187
 msgid "jump hint unaligned"
 msgstr "saut indicé non aligné"
 
-#: arc-dis.c:76
+#: arc-dis.c:77
 msgid "Illegal limm reference in last instruction!\n"
-msgstr "Référence limite illégale dans la dernière instruction!\n"
+msgstr "Référence limm illégale dans la dernière instruction!\n"
 
-#: arm-dis.c:1267
+#: arc-opc.c:386
+msgid "unable to fit different valued constants into instruction"
+msgstr "impossible de méler différentes constantes dans l'instruction"
+
+#: arc-opc.c:395
+msgid "auxiliary register not allowed here"
+msgstr "registre auxiliaire non autorisé ici"
+
+#: arc-opc.c:401 arc-opc.c:418
+msgid "attempt to set readonly register"
+msgstr "tentative d'écriture sur un registre en lecture seule"
+
+#: arc-opc.c:406 arc-opc.c:423
+msgid "attempt to read writeonly register"
+msgstr "tentative de lire un registre en écriture seule"
+
+#: arc-opc.c:428
+#, c-format
+msgid "invalid register number `%d'"
+msgstr "numéro de registre non valide \"%d\""
+
+#: arc-opc.c:594 arc-opc.c:645 arc-opc.c:673
+msgid "too many long constants"
+msgstr "trop de longues constantes"
+
+#: arc-opc.c:668
+msgid "too many shimms in load"
+msgstr "trop de bits shimm à charger"
+
+#. Do we have a limm already?
+#: arc-opc.c:781
+msgid "impossible store"
+msgstr "stockage impossible"
+
+#: arc-opc.c:814
+msgid "st operand error"
+msgstr "Erreur d'opérande st"
+
+#: arc-opc.c:818 arc-opc.c:860
+msgid "address writeback not allowed"
+msgstr "cache \"writeback\" d'adresses interdit"
+
+#: arc-opc.c:822
+msgid "store value must be zero"
+msgstr "la valeur de stockage doit être 0"
+
+#: arc-opc.c:847
+msgid "invalid load/shimm insn"
+msgstr "load/shimm non valide dans l'instruction"
+
+#: arc-opc.c:856
+msgid "ld operand error"
+msgstr "Erreur d'opérande ld"
+
+#: arc-opc.c:943
+msgid "jump flags, but no .f seen"
+msgstr "drapeaux de saut, mais pas de .f"
+
+#: arc-opc.c:946
+msgid "jump flags, but no limm addr"
+msgstr "drapeaux de saut, mais pas d'adresse limm"
+
+#: arc-opc.c:949
+msgid "flag bits of jump address limm lost"
+msgstr "perte de drapeaux pour l'adresse de saut"
+
+#: arc-opc.c:952
+msgid "attempt to set HR bits"
+msgstr "tentative de modifier les bits HR"
+
+#: arc-opc.c:955
+msgid "bad jump flags value"
+msgstr "mauvais drapeaux de saut"
+
+#: arc-opc.c:988
+msgid "branch address not on 4 byte boundary"
+msgstr "adresse de branchement non multiple de 16"
+
+#: arc-opc.c:1024
+msgid "must specify .jd or no nullify suffix"
+msgstr "suffixe .jd ou validant attendu"
+
+#: arm-dis.c:1808
 msgid "<illegal precision>"
 msgstr "<précision illégale>"
 
 #. XXX - should break 'option' at following delimiter.
-#: arm-dis.c:1912
+#: arm-dis.c:3818
 #, c-format
 msgid "Unrecognised register name set: %s\n"
-msgstr "Nom de jeu de registres inconnu: %s\n"
+msgstr "Nom de jeu de registres inconnu : %s\n"
 
 #. XXX - should break 'option' at following delimiter.
-#: arm-dis.c:1920
+#: arm-dis.c:3826
 #, c-format
 msgid "Unrecognised disassembler option: %s\n"
-msgstr "Option du désassembleur non reconnue: %s\n"
+msgstr "Option du désassembleur non reconnue : %s\n"
 
-#: arm-dis.c:2093
+#: arm-dis.c:4238
 #, c-format
 msgid ""
 "\n"
@@ -54,219 +138,402 @@
 "Les options spécifiques ARM suivantes sont supportées avec l'utilisation de\n"
 "l'option -M:\n"
 
-#: avr-dis.c:112 avr-dis.c:122
+#: avr-dis.c:115 avr-dis.c:125
 #, c-format
 msgid "undefined"
-msgstr "non défini"
+msgstr "non défini(e)"
 
-#: avr-dis.c:179
+#: avr-dis.c:187
 #, c-format
 msgid "Internal disassembler error"
 msgstr "Erreur interne du désassembleur"
 
-#: avr-dis.c:227
+#: avr-dis.c:236
 #, c-format
 msgid "unknown constraint `%c'"
 msgstr "contrainte inconnue « %c »"
 
-#: cgen-asm.c:336 fr30-ibld.c:197 frv-ibld.c:197 ip2k-ibld.c:197
-#: iq2000-ibld.c:197 m32r-ibld.c:197 openrisc-ibld.c:197 xstormy16-ibld.c:197
+#: cgen-asm.c:336 fr30-ibld.c:200 frv-ibld.c:200 ip2k-ibld.c:200
+#: iq2000-ibld.c:200 m32c-ibld.c:200 m32r-ibld.c:200 mep-ibld.c:200
+#: mt-ibld.c:200 openrisc-ibld.c:200 xc16x-ibld.c:200 xstormy16-ibld.c:200
 #, c-format
 msgid "operand out of range (%ld not between %ld and %ld)"
-msgstr "opérande hors limite (%ld n'est pas entre %ld et %ld)"
+msgstr "opérande hors limites (%ld n'est pas entre %ld et %ld)"
 
 #: cgen-asm.c:358
 #, c-format
 msgid "operand out of range (%lu not between %lu and %lu)"
-msgstr "opérande hors limite (%lu n'est pas entre %lu et %lu)"
+msgstr "opérande hors limites (%lu n'est pas entre %lu et %lu)"
 
-#: d30v-dis.c:312
+#: d30v-dis.c:255
 #, c-format
 msgid "<unknown register %d>"
 msgstr "<registre inconnu %d>"
 
 #. Can't happen.
-#: dis-buf.c:57
+#: dis-buf.c:59
 #, c-format
 msgid "Unknown error %d\n"
 msgstr "Erreur inconnue %d\n"
 
-#: dis-buf.c:66
+#: dis-buf.c:68
 #, c-format
 msgid "Address 0x%s is out of bounds.\n"
-msgstr "Adresse 0x%s est hors limite.\n"
+msgstr "Adresse 0x%s hors limites.\n"
 
-#: fr30-asm.c:323 frv-asm.c:1298 ip2k-asm.c:530 iq2000-asm.c:465
-#: m32r-asm.c:338 openrisc-asm.c:252 xstormy16-asm.c:284
+#: fr30-asm.c:93 m32c-asm.c:877 m32c-asm.c:884
+msgid "Register number is not valid"
+msgstr "Numéro de registre non valide"
+
+#: fr30-asm.c:95
+msgid "Register must be between r0 and r7"
+msgstr "Le numéro de registre doit être entre r0 et r7"
+
+#: fr30-asm.c:97
+msgid "Register must be between r8 and r15"
+msgstr "Le numéro de registre doit être entre r8 et r15"
+
+#: fr30-asm.c:116 m32c-asm.c:915
+msgid "Register list is not valid"
+msgstr "Liste de registres non valide"
+
+#: fr30-asm.c:310 frv-asm.c:1263 ip2k-asm.c:511 iq2000-asm.c:459
+#: m32c-asm.c:1589 m32r-asm.c:328 mep-asm.c:1001 mt-asm.c:595
+#: openrisc-asm.c:241 xc16x-asm.c:376 xstormy16-asm.c:276
 #, c-format
 msgid "Unrecognized field %d while parsing.\n"
 msgstr "Champ non reconnu %d lors de l'analyse.\n"
 
-#: fr30-asm.c:372 frv-asm.c:1347 ip2k-asm.c:579 iq2000-asm.c:514
-#: m32r-asm.c:387 openrisc-asm.c:301 xstormy16-asm.c:333
+#: fr30-asm.c:361 frv-asm.c:1314 ip2k-asm.c:562 iq2000-asm.c:510
+#: m32c-asm.c:1640 m32r-asm.c:379 mep-asm.c:1052 mt-asm.c:646
+#: openrisc-asm.c:292 xc16x-asm.c:427 xstormy16-asm.c:327
 msgid "missing mnemonic in syntax string"
 msgstr "mnémonique manquante dans la syntaxe de la chaîne"
 
 #. We couldn't parse it.
-#: fr30-asm.c:507 fr30-asm.c:511 fr30-asm.c:598 fr30-asm.c:699 frv-asm.c:1482
-#: frv-asm.c:1486 frv-asm.c:1573 frv-asm.c:1674 ip2k-asm.c:714 ip2k-asm.c:718
-#: ip2k-asm.c:805 ip2k-asm.c:906 iq2000-asm.c:649 iq2000-asm.c:653
-#: iq2000-asm.c:740 iq2000-asm.c:841 m32r-asm.c:522 m32r-asm.c:526
-#: m32r-asm.c:613 m32r-asm.c:714 openrisc-asm.c:436 openrisc-asm.c:440
-#: openrisc-asm.c:527 openrisc-asm.c:628 xstormy16-asm.c:468
-#: xstormy16-asm.c:472 xstormy16-asm.c:559 xstormy16-asm.c:660
+#: fr30-asm.c:496 fr30-asm.c:500 fr30-asm.c:587 fr30-asm.c:688 frv-asm.c:1449
+#: frv-asm.c:1453 frv-asm.c:1540 frv-asm.c:1641 ip2k-asm.c:697 ip2k-asm.c:701
+#: ip2k-asm.c:788 ip2k-asm.c:889 iq2000-asm.c:645 iq2000-asm.c:649
+#: iq2000-asm.c:736 iq2000-asm.c:837 m32c-asm.c:1775 m32c-asm.c:1779
+#: m32c-asm.c:1866 m32c-asm.c:1967 m32r-asm.c:514 m32r-asm.c:518
+#: m32r-asm.c:605 m32r-asm.c:706 mep-asm.c:1187 mep-asm.c:1191 mep-asm.c:1278
+#: mep-asm.c:1379 mt-asm.c:781 mt-asm.c:785 mt-asm.c:872 mt-asm.c:973
+#: openrisc-asm.c:427 openrisc-asm.c:431 openrisc-asm.c:518 openrisc-asm.c:619
+#: xc16x-asm.c:562 xc16x-asm.c:566 xc16x-asm.c:653 xc16x-asm.c:754
+#: xstormy16-asm.c:462 xstormy16-asm.c:466 xstormy16-asm.c:553
+#: xstormy16-asm.c:654
 msgid "unrecognized instruction"
 msgstr "instruction non reconnue"
 
-#: fr30-asm.c:554 frv-asm.c:1529 ip2k-asm.c:761 iq2000-asm.c:696
-#: m32r-asm.c:569 openrisc-asm.c:483 xstormy16-asm.c:515
+#: fr30-asm.c:543 frv-asm.c:1496 ip2k-asm.c:744 iq2000-asm.c:692
+#: m32c-asm.c:1822 m32r-asm.c:561 mep-asm.c:1234 mt-asm.c:828
+#: openrisc-asm.c:474 xc16x-asm.c:609 xstormy16-asm.c:509
 #, c-format
 msgid "syntax error (expected char `%c', found `%c')"
 msgstr "erreur de syntaxe (caractère « %c » attendu,  « %c » obtenu)"
 
-#: fr30-asm.c:564 frv-asm.c:1539 ip2k-asm.c:771 iq2000-asm.c:706
-#: m32r-asm.c:579 openrisc-asm.c:493 xstormy16-asm.c:525
+#: fr30-asm.c:553 frv-asm.c:1506 ip2k-asm.c:754 iq2000-asm.c:702
+#: m32c-asm.c:1832 m32r-asm.c:571 mep-asm.c:1244 mt-asm.c:838
+#: openrisc-asm.c:484 xc16x-asm.c:619 xstormy16-asm.c:519
 #, c-format
 msgid "syntax error (expected char `%c', found end of instruction)"
-msgstr "erreur de syntaxe (caractère « %c » attendu, fin de l'instruction obtenue)"
+msgstr "erreur de syntaxe (caractère « %c » attendu, fin de l'instruction trouvée)"
 
-#: fr30-asm.c:592 frv-asm.c:1567 ip2k-asm.c:799 iq2000-asm.c:734
-#: m32r-asm.c:607 openrisc-asm.c:521 xstormy16-asm.c:553
+#: fr30-asm.c:581 frv-asm.c:1534 ip2k-asm.c:782 iq2000-asm.c:730
+#: m32c-asm.c:1860 m32r-asm.c:599 mep-asm.c:1272 mt-asm.c:866
+#: openrisc-asm.c:512 xc16x-asm.c:647 xstormy16-asm.c:547
 msgid "junk at end of line"
 msgstr "rebut à la fin de la ligne"
 
-#: fr30-asm.c:698 frv-asm.c:1673 ip2k-asm.c:905 iq2000-asm.c:840
-#: m32r-asm.c:713 openrisc-asm.c:627 xstormy16-asm.c:659
+#: fr30-asm.c:687 frv-asm.c:1640 ip2k-asm.c:888 iq2000-asm.c:836
+#: m32c-asm.c:1966 m32r-asm.c:705 mep-asm.c:1378 mt-asm.c:972
+#: openrisc-asm.c:618 xc16x-asm.c:753 xstormy16-asm.c:653
 msgid "unrecognized form of instruction"
 msgstr "forme d'instruction non reconnue"
 
-#: fr30-asm.c:710 frv-asm.c:1685 ip2k-asm.c:917 iq2000-asm.c:852
-#: m32r-asm.c:725 openrisc-asm.c:639 xstormy16-asm.c:671
+#: fr30-asm.c:699 frv-asm.c:1652 ip2k-asm.c:900 iq2000-asm.c:848
+#: m32c-asm.c:1978 m32r-asm.c:717 mep-asm.c:1390 mt-asm.c:984
+#: openrisc-asm.c:630 xc16x-asm.c:765 xstormy16-asm.c:665
 #, c-format
 msgid "bad instruction `%.50s...'"
 msgstr "instruction erronée « %.50s... »"
 
-#: fr30-asm.c:713 frv-asm.c:1688 ip2k-asm.c:920 iq2000-asm.c:855
-#: m32r-asm.c:728 openrisc-asm.c:642 xstormy16-asm.c:674
+#: fr30-asm.c:702 frv-asm.c:1655 ip2k-asm.c:903 iq2000-asm.c:851
+#: m32c-asm.c:1981 m32r-asm.c:720 mep-asm.c:1393 mt-asm.c:987
+#: openrisc-asm.c:633 xc16x-asm.c:768 xstormy16-asm.c:668
 #, c-format
 msgid "bad instruction `%.50s'"
 msgstr "instruction erronée « %.50s »"
 
 #. Default text to print if an instruction isn't recognized.
-#: fr30-dis.c:41 frv-dis.c:41 ip2k-dis.c:41 iq2000-dis.c:41 m32r-dis.c:41
-#: mmix-dis.c:284 openrisc-dis.c:41 xstormy16-dis.c:41
+#: fr30-dis.c:41 frv-dis.c:41 ip2k-dis.c:41 iq2000-dis.c:41 m32c-dis.c:41
+#: m32r-dis.c:41 mep-dis.c:41 mmix-dis.c:278 mt-dis.c:41 openrisc-dis.c:41
+#: xc16x-dis.c:41 xstormy16-dis.c:41
 msgid "*unknown*"
 msgstr "*inconnu*"
 
-#: fr30-dis.c:319 frv-dis.c:410 ip2k-dis.c:313 iq2000-dis.c:191 m32r-dis.c:262
-#: openrisc-dis.c:137 xstormy16-dis.c:170
+#: fr30-dis.c:299 frv-dis.c:396 ip2k-dis.c:288 iq2000-dis.c:189 m32c-dis.c:891
+#: m32r-dis.c:256 mep-dis.c:776 mt-dis.c:290 openrisc-dis.c:135
+#: xc16x-dis.c:375 xstormy16-dis.c:168
 #, c-format
 msgid "Unrecognized field %d while printing insn.\n"
-msgstr "Champ non reconnu %d lors de l'impression insn.\n"
+msgstr "Champ non reconnu %d lors de l'affichage d'instructions.\n"
 
-#: fr30-ibld.c:168 frv-ibld.c:168 ip2k-ibld.c:168 iq2000-ibld.c:168
-#: m32r-ibld.c:168 openrisc-ibld.c:168 xstormy16-ibld.c:168
+#: fr30-ibld.c:163 frv-ibld.c:163 ip2k-ibld.c:163 iq2000-ibld.c:163
+#: m32c-ibld.c:163 m32r-ibld.c:163 mep-ibld.c:163 mt-ibld.c:163
+#: openrisc-ibld.c:163 xc16x-ibld.c:163 xstormy16-ibld.c:163
 #, c-format
 msgid "operand out of range (%ld not between %ld and %lu)"
-msgstr "opérande hors limite (%ld n'est pas entre %ld et %lu)"
+msgstr "opérande hors limites (%ld n'est pas entre %ld et %lu)"
 
-#: fr30-ibld.c:181 frv-ibld.c:181 ip2k-ibld.c:181 iq2000-ibld.c:181
-#: m32r-ibld.c:181 openrisc-ibld.c:181 xstormy16-ibld.c:181
+#: fr30-ibld.c:184 frv-ibld.c:184 ip2k-ibld.c:184 iq2000-ibld.c:184
+#: m32c-ibld.c:184 m32r-ibld.c:184 mep-ibld.c:184 mt-ibld.c:184
+#: openrisc-ibld.c:184 xc16x-ibld.c:184 xstormy16-ibld.c:184
 #, c-format
-msgid "operand out of range (%lu not between 0 and %lu)"
-msgstr "opérande hors limite (%lu n'est pas entre 0 et %lu)"
+msgid "operand out of range (0x%lx not between 0 and 0x%lx)"
+msgstr "opérande hors limite (0x%lx n'est pas entre 0 et 0x%lx)"
 
-#: fr30-ibld.c:732 frv-ibld.c:858 ip2k-ibld.c:609 iq2000-ibld.c:715
-#: m32r-ibld.c:667 openrisc-ibld.c:635 xstormy16-ibld.c:680
+#: fr30-ibld.c:726 frv-ibld.c:852 ip2k-ibld.c:603 iq2000-ibld.c:709
+#: m32c-ibld.c:1727 m32r-ibld.c:661 mep-ibld.c:1024 mt-ibld.c:745
+#: openrisc-ibld.c:629 xc16x-ibld.c:748 xstormy16-ibld.c:674
 #, c-format
 msgid "Unrecognized field %d while building insn.\n"
-msgstr "Champ non reconnu %d lors de la construction de insn.\n"
+msgstr "Champ non reconnu %d lors de la construction d'instruction.\n"
 
-#: fr30-ibld.c:939 frv-ibld.c:1177 ip2k-ibld.c:686 iq2000-ibld.c:892
-#: m32r-ibld.c:806 openrisc-ibld.c:737 xstormy16-ibld.c:828
+#: fr30-ibld.c:931 frv-ibld.c:1169 ip2k-ibld.c:678 iq2000-ibld.c:884
+#: m32c-ibld.c:2888 m32r-ibld.c:798 mep-ibld.c:1444 mt-ibld.c:965
+#: openrisc-ibld.c:729 xc16x-ibld.c:968 xstormy16-ibld.c:820
 #, c-format
 msgid "Unrecognized field %d while decoding insn.\n"
-msgstr "Champ non reconnu %d lors du décodage de insn.\n"
+msgstr "Champ non reconnu %d lors du décodage d'instructions.\n"
 
-#: fr30-ibld.c:1088 frv-ibld.c:1458 ip2k-ibld.c:763 iq2000-ibld.c:1026
-#: m32r-ibld.c:922 openrisc-ibld.c:817 xstormy16-ibld.c:941
+#: fr30-ibld.c:1077 frv-ibld.c:1447 ip2k-ibld.c:752 iq2000-ibld.c:1015
+#: m32c-ibld.c:3505 m32r-ibld.c:911 mep-ibld.c:1737 mt-ibld.c:1165
+#: openrisc-ibld.c:806 xc16x-ibld.c:1189 xstormy16-ibld.c:930
 #, c-format
 msgid "Unrecognized field %d while getting int operand.\n"
-msgstr "Champ non reconnu %d lors de la prise d'une opérande int.\n"
+msgstr "Champ non reconnu %d lors de l'obtention d'un opérande int.\n"
 
-#: fr30-ibld.c:1217 frv-ibld.c:1719 ip2k-ibld.c:820 iq2000-ibld.c:1140
-#: m32r-ibld.c:1018 openrisc-ibld.c:877 xstormy16-ibld.c:1034
+#: fr30-ibld.c:1205 frv-ibld.c:1707 ip2k-ibld.c:808 iq2000-ibld.c:1128
+#: m32c-ibld.c:4104 m32r-ibld.c:1006 mep-ibld.c:2012 mt-ibld.c:1347
+#: openrisc-ibld.c:865 xc16x-ibld.c:1392 xstormy16-ibld.c:1022
 #, c-format
 msgid "Unrecognized field %d while getting vma operand.\n"
-msgstr "Champ non reconnu %d lors de la prise d'une opérande vma.\n"
+msgstr "Champ non reconnu %d lors de l'obtention d'un opérande vma.\n"
 
-#: fr30-ibld.c:1351 frv-ibld.c:1989 ip2k-ibld.c:882 iq2000-ibld.c:1263
-#: m32r-ibld.c:1122 openrisc-ibld.c:946 xstormy16-ibld.c:1136
+#: fr30-ibld.c:1336 frv-ibld.c:1974 ip2k-ibld.c:867 iq2000-ibld.c:1248
+#: m32c-ibld.c:4691 m32r-ibld.c:1107 mep-ibld.c:2271 mt-ibld.c:1536
+#: openrisc-ibld.c:931 xc16x-ibld.c:1596 xstormy16-ibld.c:1121
 #, c-format
 msgid "Unrecognized field %d while setting int operand.\n"
-msgstr "Champ non reconnu %d lors de l'initialisation d'une opérande int.\n"
+msgstr "Champ non reconnu %d lors de l'initialisation d'un opérande int.\n"
 
-#: fr30-ibld.c:1473 frv-ibld.c:2247 ip2k-ibld.c:932 iq2000-ibld.c:1374
-#: m32r-ibld.c:1214 openrisc-ibld.c:1003 xstormy16-ibld.c:1226
+#: fr30-ibld.c:1457 frv-ibld.c:2231 ip2k-ibld.c:916 iq2000-ibld.c:1358
+#: m32c-ibld.c:5268 m32r-ibld.c:1198 mep-ibld.c:2520 mt-ibld.c:1715
+#: openrisc-ibld.c:987 xc16x-ibld.c:1790 xstormy16-ibld.c:1210
 #, c-format
 msgid "Unrecognized field %d while setting vma operand.\n"
-msgstr "Champ non reconnu %d lors de l'initialisation d'une opérande vma.\n"
+msgstr "Champ non reconnu %d lors de l'initialisation d'un opérande vma.\n"
 
-#: frv-asm.c:978
+#: frv-asm.c:608
+msgid "missing `]'"
+msgstr "\"]\"' manquant"
+
+#: frv-asm.c:611 frv-asm.c:621
+msgid "Special purpose register number is out of range"
+msgstr "Numéro de registre spécial hors des limites"
+
+#: frv-asm.c:908
+msgid "Value of A operand must be 0 or 1"
+msgstr "La valeur de l'opérande A doit être 0 ou 1"
+
+#: frv-asm.c:944
 msgid "register number must be even"
-msgstr "numéro de registre doit être pair"
+msgstr "Le numéro de registre doit être pair"
+
+#. -- assembler routines inserted here.
+#. -- asm.c
+#: frv-asm.c:972 iq2000-asm.c:56 m32c-asm.c:141 m32c-asm.c:237 m32c-asm.c:279
+#: m32c-asm.c:338 m32c-asm.c:360 m32r-asm.c:53 mep-asm.c:232 mep-asm.c:250
+#: mep-asm.c:265 mep-asm.c:280 mep-asm.c:292 openrisc-asm.c:54
+msgid "missing `)'"
+msgstr "\")\" manquante"
 
 # h8300-dis.c:380Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
-#: h8300-dis.c:358
+#: h8300-dis.c:327
 #, c-format
 msgid "Hmmmm 0x%x"
 msgstr "Hummmm 0x%x"
 
-#: h8300-dis.c:744
+#: h8300-dis.c:708
 #, c-format
 msgid "Don't understand 0x%x \n"
-msgstr "Ne comprend pas 0x%x \n"
+msgstr "Incompréhensible : 0x%x \n"
 
-#: h8500-dis.c:143
+#: h8500-dis.c:124
 #, c-format
 msgid "can't cope with insert %d\n"
-msgstr "Ne peut gérer l'insertion %d\n"
+msgstr "Impossible de gérer l'insertion %d\n"
 
 #. Couldn't understand anything.
-#: h8500-dis.c:342
+#: h8500-dis.c:324
 #, c-format
 msgid "%02x\t\t*unknown*"
 msgstr "%02x\t\t*inconnu*"
 
-#: i386-dis.c:1733
+#: i386-dis.c:9545
 msgid "<internal disassembler error>"
 msgstr "<erreur interne du désassembleur>"
 
-#: ia64-gen.c:297
+#: i386-dis.c:9776
+#, c-format
+msgid ""
+"\n"
+"The following i386/x86-64 specific disassembler options are supported for use\n"
+"with the -M switch (multiple options should be separated by commas):\n"
+msgstr ""
+"\n"
+"Les options spécifiques i386/x86-64 du désassembleur sont supportées avec l'utilisation\n"
+"de l'option -M (les options multiples doivent être séparées par des virgules):\n"
+
+#: i386-dis.c:9780
+#, c-format
+msgid "  x86-64      Disassemble in 64bit mode\n"
+msgstr "  x86-64      Désassembler en mode 64 bits\n"
+
+#: i386-dis.c:9781
+#, c-format
+msgid "  i386        Disassemble in 32bit mode\n"
+msgstr "  i386        Désassembler en mode 32 bits\n"
+
+#: i386-dis.c:9782
+#, c-format
+msgid "  i8086       Disassemble in 16bit mode\n"
+msgstr "  i8086       Désassembler en mode 16 bits\n"
+
+#: i386-dis.c:9783
+#, c-format
+msgid "  att         Display instruction in AT&T syntax\n"
+msgstr "  att         Afficher les instructions en syntaxe AT&T\n"
+
+#: i386-dis.c:9784
+#, c-format
+msgid "  intel       Display instruction in Intel syntax\n"
+msgstr "  intel       Afficher les instructions en syntaxe Intel\n"
+
+#: i386-dis.c:9785
+#, c-format
+msgid ""
+"  att-mnemonic\n"
+"              Display instruction in AT&T mnemonic\n"
+msgstr ""
+"  att-mnemonic\n"
+"              Afficher les instructions mnémoniques AT&T\n"
+
+#: i386-dis.c:9787
+#, c-format
+msgid ""
+"  intel-mnemonic\n"
+"              Display instruction in Intel mnemonic\n"
+msgstr ""
+"  intel-mnemonic\n"
+"              Afficher les instructions mnémoniques Intel\n"
+
+#: i386-dis.c:9789
+#, c-format
+msgid "  addr64      Assume 64bit address size\n"
+msgstr "  addr64      Taille des adresses : 64 bits\n"
+
+#: i386-dis.c:9790
+#, c-format
+msgid "  addr32      Assume 32bit address size\n"
+msgstr "  addr32      Taille des adresses : 32 bits\n"
+
+#: i386-dis.c:9791
+#, c-format
+msgid "  addr16      Assume 16bit address size\n"
+msgstr "  addr16      Taille des adresses : 16 bits\n"
+
+#: i386-dis.c:9792
+#, c-format
+msgid "  data32      Assume 32bit data size\n"
+msgstr "  data32       Taille de données : 32 bits\n"
+
+#: i386-dis.c:9793
+#, c-format
+msgid "  data16      Assume 16bit data size\n"
+msgstr "  data16      Taille de données : 16 bits\n"
+
+#: i386-dis.c:9794
+#, c-format
+msgid "  suffix      Always display instruction suffix in AT&T syntax\n"
+msgstr "  suffix      Toujours afficher les suffixes d'instruction en syntaxe AT&T\n"
+
+#: i386-gen.c:411 ia64-gen.c:307
 #, c-format
 msgid "%s: Error: "
-msgstr "%s: ERREUR: "
+msgstr "%s : ERREUR : "
 
-#: ia64-gen.c:310
+#: i386-gen.c:510
+#, c-format
+msgid "%s: %d: Unknown bitfield: %s\n"
+msgstr "%s: %d: champ de bits inconnu : %s\n"
+
+#: i386-gen.c:674
+#, c-format
+msgid "can't find i386-opc.tbl for reading, errno = %s\n"
+msgstr "impossible de lire i386-opc.tbl, errno = %s\n"
+
+#: i386-gen.c:851
+#, c-format
+msgid "can't find i386-reg.tbl for reading, errno = %s\n"
+msgstr "impossible de lire i386-reg.tbl, errno = %s\n"
+
+#: i386-gen.c:943
+#, c-format
+msgid "can't create i386-init.h, errno = %s\n"
+msgstr "impossible de créer i386-init.h, errno = %s\n"
+
+#: i386-gen.c:1032 ia64-gen.c:2850
+#, c-format
+msgid "unable to change directory to \"%s\", errno = %s\n"
+msgstr "incapable de changer de répertoire vers \"%s\", errno = %s\n"
+
+#: i386-gen.c:1039
+#, c-format
+msgid "%d unused bits in i386_cpu_flags.\n"
+msgstr "%d bits inutilisés dans i386_cpu_flags.\n"
+
+#: i386-gen.c:1046
+#, c-format
+msgid "%d unused bits in i386_operand_type.\n"
+msgstr "%d bits inutilisés dans i386_operand_type.\n"
+
+#: i386-gen.c:1060
+#, c-format
+msgid "can't create i386-tbl.h, errno = %s\n"
+msgstr "impossible de créer i386-tbl.h, errno = %s\n"
+
+#: ia64-gen.c:320
 #, c-format
 msgid "%s: Warning: "
-msgstr "%s: AVERTISSEMENT: "
+msgstr "%s : AVERTISSEMENT : "
 
-#: ia64-gen.c:496 ia64-gen.c:730
+#: ia64-gen.c:506 ia64-gen.c:740
 #, c-format
 msgid "multiple note %s not handled\n"
-msgstr "note multiple %s n'est pas traitée\n"
+msgstr "note multiple %s non gérée\n"
 
-#: ia64-gen.c:607
+#: ia64-gen.c:617
 msgid "can't find ia64-ic.tbl for reading\n"
-msgstr "ne peut trouver ia64-ic.tbl pour la lecture\n"
+msgstr "impossible de trouver ia64-ic.tbl pour la lecture\n"
 
-#: ia64-gen.c:812
+#: ia64-gen.c:822
 #, c-format
 msgid "can't find %s for reading\n"
-msgstr "ne peut trouver %s pour la lecture\n"
+msgstr "impossible de trouver %s pour la lecture\n"
 
-#: ia64-gen.c:1036
+#: ia64-gen.c:1046
 #, c-format
 msgid ""
 "most recent format '%s'\n"
@@ -275,201 +542,277 @@
 "le plus récent format '%s'\n"
 "apparaît plus restrictif que '%s'\n"
 
-#: ia64-gen.c:1047
+#: ia64-gen.c:1057
 #, c-format
 msgid "overlapping field %s->%s\n"
 msgstr "chevauchement de champ %s->%s\n"
 
-#: ia64-gen.c:1244
+#: ia64-gen.c:1254
 #, c-format
 msgid "overwriting note %d with note %d (IC:%s)\n"
-msgstr "sur-écriture de la note %d avec la note %d (IC:%s)\n"
+msgstr "écrasement de la note %d par la note %d (IC :%s)\n"
 
-#: ia64-gen.c:1443
+#: ia64-gen.c:1459
 #, c-format
 msgid "don't know how to specify %% dependency %s\n"
-msgstr "ne sait comment spécifier %% pour la dépendance %s\n"
+msgstr "Comment spécifier %% pour la dépendance %s ?\n"
 
-#: ia64-gen.c:1465
+#: ia64-gen.c:1481
 #, c-format
 msgid "Don't know how to specify # dependency %s\n"
-msgstr "Ne sait comment spécifier # pour la dépendence %s\n"
+msgstr "Impossible de spécifier le n° de dépendance %s\n"
 
-#: ia64-gen.c:1504
+#: ia64-gen.c:1520
 #, c-format
 msgid "IC:%s [%s] has no terminals or sub-classes\n"
-msgstr "IC:%s [%s] n'a pas de terminals ou de sous-classes\n"
+msgstr "IC :%s [%s] n'a pas de terminal ou de sous-classe\n"
 
-#: ia64-gen.c:1507
+#: ia64-gen.c:1523
 #, c-format
 msgid "IC:%s has no terminals or sub-classes\n"
-msgstr "IC:%s n'a pas de terminals ou de sous-classes\n"
+msgstr "IC :%s n'a pas de terminal ou de sous-classe\n"
 
-#: ia64-gen.c:1516
+#: ia64-gen.c:1532
 #, c-format
 msgid "no insns mapped directly to terminal IC %s [%s]"
-msgstr "aucun insns mappé directement au terminal IC %s [%s]"
+msgstr "aucun instruction mappée directement à l'UC %s [%s]"
 
-#: ia64-gen.c:1519
+#: ia64-gen.c:1535
 #, c-format
 msgid "no insns mapped directly to terminal IC %s\n"
-msgstr "aucun insns mappé directement au terminal IC %s\n"
+msgstr "aucun instruction mappée directement à l'UC %s\n"
 
-#: ia64-gen.c:1530
+#: ia64-gen.c:1546
 #, c-format
 msgid "class %s is defined but not used\n"
-msgstr "classe %s défini mais non utilisée\n"
+msgstr "classe %s définie mais non utilisée\n"
 
-#: ia64-gen.c:1541
+#: ia64-gen.c:1559
 #, c-format
-msgid "Warning: rsrc %s (%s) has no chks%s\n"
-msgstr "AVERTISSEMENT: rsrc %s (%s) n'a pas de chks%s\n"
+msgid "Warning: rsrc %s (%s) has no chks\n"
+msgstr "Attention : reg. source %s (%s) sans sélecteur \"chks\"\n"
 
-#: ia64-gen.c:1545
+#: ia64-gen.c:1562
+#, c-format
+msgid "Warning: rsrc %s (%s) has no chks or regs\n"
+msgstr "Attention : reg. source %s (%s) sans sélecteur \"chks\" ou \"regs\"\n"
+
+#: ia64-gen.c:1566
 #, c-format
 msgid "rsrc %s (%s) has no regs\n"
 msgstr "rsrc %s (%s) n'a pas de registres\n"
 
-#: ia64-gen.c:2444
+#: ia64-gen.c:2478
 #, c-format
 msgid "IC note %d in opcode %s (IC:%s) conflicts with resource %s note %d\n"
-msgstr "IC note %d dans l'opcode %s (IC:%s) entre en conflit avec la ressource %s note %d\n"
+msgstr "note IC %d dans l'opcode %s (IC : %s) entrant en conflit avec la ressource %s note %d\n"
 
-#: ia64-gen.c:2472
+#: ia64-gen.c:2506
 #, c-format
 msgid "IC note %d for opcode %s (IC:%s) conflicts with resource %s note %d\n"
-msgstr "IC note %d pour l'opcode %s (IC:%s) entre en conflit avec la ressource %s note %d\n"
+msgstr "note IC %d pour l'opcode %s (IC : %s) entrant en conflit avec la ressource %s note %d\n"
 
-#: ia64-gen.c:2486
+#: ia64-gen.c:2520
 #, c-format
 msgid "opcode %s has no class (ops %d %d %d)\n"
-msgstr "opcode %s n'a pas de classe (ops %d %d %d)\n"
-
-#: ia64-gen.c:2816
-#, c-format
-msgid "unable to change directory to \"%s\", errno = %s\n"
-msgstr "incapable de changer de répertoire vers \"%s\", errno = %s\n"
+msgstr "L'opcode %s n'a pas de classe (ops %d %d %d)\n"
 
 #. We've been passed a w.  Return with an error message so that
 #. cgen will try the next parsing option.
-#: ip2k-asm.c:92
+#: ip2k-asm.c:81
 msgid "W keyword invalid in FR operand slot."
-msgstr "W mot clé invalide dans la slot de l'opérance FR."
+msgstr "mot clé W non valide dans le slot de l'opérande FR."
 
 #. Invalid offset present.
-#: ip2k-asm.c:117
+#: ip2k-asm.c:106
 msgid "offset(IP) is not a valid form"
-msgstr "décalage(IP) n'a pas un format valide"
+msgstr "décalage(IP) de format non valide"
 
 #. Found something there in front of (DP) but it's out
 #. of range.
-#: ip2k-asm.c:165
+#: ip2k-asm.c:154
 msgid "(DP) offset out of range."
-msgstr "décalage (DP) est hors limite."
+msgstr "décalage (DP) est hors limites."
 
 #. Found something there in front of (SP) but it's out
 #. of range.
-#: ip2k-asm.c:206
+#: ip2k-asm.c:195
 msgid "(SP) offset out of range."
-msgstr "décalage (SP) est hors limite."
+msgstr "décalage (SP) est hors limites."
 
-#: ip2k-asm.c:222
+#: ip2k-asm.c:211
 msgid "illegal use of parentheses"
 msgstr "usage illégal des parenthèses"
 
-#: ip2k-asm.c:229
+#: ip2k-asm.c:218
 msgid "operand out of range (not between 1 and 255)"
-msgstr "opérande hors limite (n'est pas entre 1 et 255)"
+msgstr "opérande hors limites (pas entre 1 et 255)"
 
 #. Something is very wrong. opindex has to be one of the above.
-#: ip2k-asm.c:254
+#: ip2k-asm.c:242
 msgid "parse_addr16: invalid opindex."
-msgstr "parse_addr16: opindex invalide."
+msgstr "parse_addr16 : opindex non valide."
 
-#: ip2k-asm.c:309
+#: ip2k-asm.c:296
 msgid "Byte address required. - must be even."
-msgstr "adresse d'octet requise - doit être paire."
+msgstr "Adresse d'octet requise - doit être paire."
 
-#: ip2k-asm.c:318
+#: ip2k-asm.c:305
 msgid "cgen_parse_address returned a symbol. Literal required."
-msgstr "cgen_parse_address a retourné un symbole. Litéral requis."
+msgstr "cgen_parse_address a retourné un symbole. Littéral requis."
 
-#: ip2k-asm.c:376
-#, c-format
-msgid "%operator operand is not a symbol"
-msgstr "opérande de l'%opérateur n'est pas un symbole"
+#: ip2k-asm.c:360
+msgid "percent-operator operand is not a symbol"
+msgstr "L'opérande de l'opérateur % n'est pas un symbole"
 
-#: ip2k-asm.c:430
+#: ip2k-asm.c:413
 msgid "Attempt to find bit index of 0"
 msgstr "Tentative de repérage d'un index de bit de 0"
 
-#: iq2000-asm.c:115 iq2000-asm.c:146
+#: iq2000-asm.c:112 iq2000-asm.c:142
 msgid "immediate value cannot be register"
-msgstr "valeur immédiate doit être un registre"
+msgstr "La valeur immédiate ne doit pas être un registre"
 
-#: iq2000-asm.c:126 iq2000-asm.c:156
+#: iq2000-asm.c:123 iq2000-asm.c:153
 msgid "immediate value out of range"
-msgstr "valeur immédiate est hors limite"
+msgstr "valeur immédiate hors limites"
 
-#: iq2000-asm.c:185
+#: iq2000-asm.c:182
 msgid "21-bit offset out of range"
-msgstr "décalage de 21 bits est hors limite"
+msgstr "décalage de 21 bits hors limites"
 
-#: iq2000-asm.c:210 iq2000-asm.c:240 iq2000-asm.c:277 iq2000-asm.c:310
-#: openrisc-asm.c:90 openrisc-asm.c:144
-msgid "missing `)'"
-msgstr "`)' manquante"
-
-#: m10200-dis.c:199
-#, c-format
-msgid "unknown\t0x%02x"
-msgstr "inconnu\t0x%02x"
-
-#: m10200-dis.c:339
+#: m10200-dis.c:158 m10300-dis.c:582
 #, c-format
 msgid "unknown\t0x%04lx"
 msgstr "inconnu\t0x%04lx"
 
-#: m10300-dis.c:767
+#: m10200-dis.c:328
 #, c-format
-msgid "unknown\t0x%04x"
-msgstr "inconnu\t0x%04x"
+msgid "unknown\t0x%02lx"
+msgstr "inconnu\t0x%02lx"
 
-#: m68k-dis.c:295
+#: m32c-asm.c:117
+msgid "imm:6 immediate is out of range"
+msgstr "valeur immédiate imm:6 hors limites"
+
+#: m32c-asm.c:147
 #, c-format
-msgid "<internal error in opcode table: %s %s>\n"
-msgstr "<erreur interne dans la table des codes-op: %s %s>\n"
+msgid "%dsp8() takes a symbolic address, not a number"
+msgstr "%dsp8() prend une adresse symbolique, pas un nombre"
 
-#: m68k-dis.c:1089
+#: m32c-asm.c:160 m32c-asm.c:164 m32c-asm.c:255
+msgid "dsp:8 immediate is out of range"
+msgstr "valeur immédiate dsp:8 hors limites"
+
+#: m32c-asm.c:185 m32c-asm.c:189
+msgid "Immediate is out of range -8 to 7"
+msgstr "Valeur immédiate hors limistes (-8 à 7)"
+
+#: m32c-asm.c:210 m32c-asm.c:214
+msgid "Immediate is out of range -7 to 8"
+msgstr "Valeur immédiate hors limites (-7 à 8)"
+
+#: m32c-asm.c:285
+#, c-format
+msgid "%dsp16() takes a symbolic address, not a number"
+msgstr "%dsp16() prend une adresse symbolique, pas un nombre"
+
+#: m32c-asm.c:308 m32c-asm.c:315 m32c-asm.c:378
+msgid "dsp:16 immediate is out of range"
+msgstr "valeur immédiate dsp:16 hors limites"
+
+#: m32c-asm.c:404
+msgid "dsp:20 immediate is out of range"
+msgstr "valeur immédiate dsp:20 hors limites"
+
+#: m32c-asm.c:430 m32c-asm.c:450
+msgid "dsp:24 immediate is out of range"
+msgstr "valeur immédiate dsp:24 hors limites"
+
+#: m32c-asm.c:483
+msgid "immediate is out of range 1-2"
+msgstr "valeur immédiate hors limites 1-2"
+
+#: m32c-asm.c:501
+msgid "immediate is out of range 1-8"
+msgstr "valeur immédiate hors limites 1-8"
+
+#: m32c-asm.c:519
+msgid "immediate is out of range 0-7"
+msgstr "valeur immédiate hors limites 0-7"
+
+#: m32c-asm.c:555
+msgid "immediate is out of range 2-9"
+msgstr "valeur immédiate hors limites 2-9"
+
+#: m32c-asm.c:573
+msgid "Bit number for indexing general register is out of range 0-15"
+msgstr "Bits pour indexer les registres généraux hors limites (0-15)"
+
+#: m32c-asm.c:611 m32c-asm.c:667
+msgid "bit,base is out of range"
+msgstr "bit,base hors des limites"
+
+#: m32c-asm.c:618 m32c-asm.c:623 m32c-asm.c:671
+msgid "bit,base out of range for symbol"
+msgstr "bit,base hors des limites pour un symbole"
+
+#: m32c-asm.c:807
+msgid "not a valid r0l/r0h pair"
+msgstr "couple r0l/r0h non valide"
+
+#: m32c-asm.c:837
+msgid "Invalid size specifier"
+msgstr "Spécifieur de taille non valide"
+
+#: m68k-dis.c:1163
 #, c-format
 msgid "<function code %d>"
 msgstr "<code de fonction %d>"
 
-#: m88k-dis.c:746
+#: m68k-dis.c:1320
 #, c-format
-msgid "# <dis error: %08x>"
-msgstr "# <erreur du désassembleur: %08x>"
+msgid "<internal error in opcode table: %s %s>\n"
+msgstr "<erreur interne dans la table des opcodes : %s %s>\n"
 
-#: mips-dis.c:720
+#: m88k-dis.c:679
+#, c-format
+msgid "# <dis error: %08lx>"
+msgstr "# <erreur désassemblage : %08lx>"
+
+#: mep-asm.c:114
+msgid "Only $tp or $13 allowed for this opcode"
+msgstr "Seuls $tp ou $13 sont autorisés avec cet opcode"
+
+#: mep-asm.c:128
+msgid "Only $sp or $15 allowed for this opcode"
+msgstr "Seuls $sp ou $15 sont autorisés avec cet opcode"
+
+#: mep-asm.c:299 mep-asm.c:455
+#, c-format
+msgid "invalid %function() here"
+msgstr "%function() non valide ici"
+
+#: mips-dis.c:781
 msgid "# internal error, incomplete extension sequence (+)"
 msgstr "# erreur interne, séquence d'extension incomplète (+)"
 
-#: mips-dis.c:779
+#: mips-dis.c:915
 #, c-format
 msgid "# internal error, undefined extension sequence (+%c)"
 msgstr "# erreur interne, séquence d'extension indéfinie (+%c)"
 
-#: mips-dis.c:1037
+#: mips-dis.c:1274
 #, c-format
-msgid "# internal error, undefined modifier(%c)"
-msgstr "# erreur interne, modificateur non défini(%c)"
+msgid "# internal error, undefined modifier (%c)"
+msgstr "# erreur interne, modificateur non défini (%c)"
 
-#: mips-dis.c:1793
+#: mips-dis.c:1881
 #, c-format
 msgid "# internal disassembler error, unrecognised modifier (%c)"
-msgstr "# erreur interne du déssassembleur, modificateur non reconnu(%c)"
+msgstr "# erreur interne du désassembleur, modificateur non reconnu (%c)"
 
-#: mips-dis.c:1805
+#: mips-dis.c:2112
 #, c-format
 msgid ""
 "\n"
@@ -480,7 +823,7 @@
 "Les options spécifiques MIPS du désassembleur sont supportées avec l'utilisation de\n"
 "l'option -M (les options multiples doivent être séparées par des virgules):\n"
 
-#: mips-dis.c:1809
+#: mips-dis.c:2116
 #, c-format
 msgid ""
 "\n"
@@ -489,9 +832,9 @@
 msgstr ""
 "\n"
 "  gpr-names=ABI            Afficher les noms GPR selon l'ABI spécifié.\n"
-"                           Par défaut: basé sur le binaire déassemblé.\n"
+"                           Par défaut : basé sur le binaire désassemblé.\n"
 
-#: mips-dis.c:1813
+#: mips-dis.c:2120
 #, c-format
 msgid ""
 "\n"
@@ -500,9 +843,9 @@
 msgstr ""
 "\n"
 "  fpr-names=ABI            Afficher les noms FPR selon l'ABI spécifié.\n"
-"                           Par défaut: numérique.\n"
+"                           Par défaut : numérique.\n"
 
-#: mips-dis.c:1817
+#: mips-dis.c:2124
 #, c-format
 msgid ""
 "\n"
@@ -513,9 +856,9 @@
 "\n"
 "  cp0-names=ARCH           Afficher les noms des registres CP0 selon\n"
 "                           l'architecture spécifiée.\n"
-"                           Par défaut: basé sur le binaire déassemblé.\n"
+"                           Par défaut : basé sur le binaire désassemblé.\n"
 
-#: mips-dis.c:1822
+#: mips-dis.c:2129
 #, c-format
 msgid ""
 "\n"
@@ -526,9 +869,9 @@
 "\n"
 "  hwr-names=ARCH           Afficher les noms HWR selon  \n"
 "\t\t\t   l'architecture spécifiée.\n"
-"                           Par défaut: basé sur le binaire déassemblé.\n"
+"                           Par défaut : basé sur le binaire désassemblé.\n"
 
-#: mips-dis.c:1827
+#: mips-dis.c:2134
 #, c-format
 msgid ""
 "\n"
@@ -539,7 +882,7 @@
 "  reg-names=ABI            Afficher les noms GPR et FPR selon l'ABI\n"
 "                           spécifié.\n"
 
-#: mips-dis.c:1831
+#: mips-dis.c:2138
 #, c-format
 msgid ""
 "\n"
@@ -550,7 +893,7 @@
 "  reg-names=ARCH           Afficher les noms des registres CP0 et HWR selon\n"
 "                           l'architecture spécifiée.\n"
 
-#: mips-dis.c:1835
+#: mips-dis.c:2142
 #, c-format
 msgid ""
 "\n"
@@ -558,15 +901,15 @@
 "   "
 msgstr ""
 "\n"
-"  Pour les options ci-haut, les valeurs suivantes sont supportés pour l'\"ABI\":\n"
+"  Pour les options ci-dessus, les valeurs suivantes sont supportées pour l'\"ABI\":\n"
 "   "
 
-#: mips-dis.c:1840 mips-dis.c:1848 mips-dis.c:1850
+#: mips-dis.c:2147 mips-dis.c:2155 mips-dis.c:2157
 #, c-format
 msgid "\n"
 msgstr "\n"
 
-#: mips-dis.c:1842
+#: mips-dis.c:2149
 #, c-format
 msgid ""
 "\n"
@@ -574,241 +917,299 @@
 "   "
 msgstr ""
 "\n"
-"  Pour les options ci-haut, les valeurs suivantes sont supportées pour \"ARCH\":\n"
+"  Pour les options ci-dessus, les valeurs suivantes sont supportées pour \"ARCH\":\n"
 "   "
 
-#: mmix-dis.c:34
+#: mmix-dis.c:35
 #, c-format
 msgid "Bad case %d (%s) in %s:%d\n"
-msgstr "Case erroné %d (%s) dans %s:%d\n"
+msgstr "Cas erroné %d (%s) dans %s:%d\n"
 
-#: mmix-dis.c:44
+#: mmix-dis.c:45
 #, c-format
 msgid "Internal: Non-debugged code (test-case missing): %s:%d"
-msgstr "Interne: code qui n'est pas au point (case de test manquant): %s:%d"
+msgstr "Interne : code non débogué (test manquant) : %s : %d"
 
-#: mmix-dis.c:53
+#: mmix-dis.c:54
 msgid "(unknown)"
 msgstr "(inconnu)"
 
-#: mmix-dis.c:519
+#: mmix-dis.c:513
 #, c-format
 msgid "*unknown operands type: %d*"
-msgstr "*type d'opérande inconnue: %d*"
+msgstr "*type d'opérande inconnu : %d*"
+
+#: mt-asm.c:110 mt-asm.c:190
+msgid "Operand out of range. Must be between -32768 and 32767."
+msgstr "Opérande hors limite. Doit être entre -32768 et 32767."
+
+#: mt-asm.c:149
+msgid "Biiiig Trouble in parse_imm16!"
+msgstr "GROS problème dans parse_imm16 !"
+
+#: mt-asm.c:157
+msgid "The percent-operator's operand is not a symbol"
+msgstr "L'opérande de l'opérateur % n'est pas un symbole"
+
+#: mt-asm.c:395
+msgid "invalid operand.  type may have values 0,1,2 only."
+msgstr "opérande non valide. type doit valoir 0,1 ou 2 seulement."
 
 #. I and Z are output operands and can`t be immediate
-#. * A is an address and we can`t have the address of
-#. * an immediate either. We don't know how much to increase
-#. * aoffsetp by since whatever generated this is broken
-#. * anyway!
-#.
-#: ns32k-dis.c:631
+#. A is an address and we can`t have the address of
+#. an immediate either. We don't know how much to increase
+#. aoffsetp by since whatever generated this is broken
+#. anyway!
+#: ns32k-dis.c:534
 #, c-format
 msgid "$<undefined>"
 msgstr "$<non défini>"
 
-#: ppc-opc.c:794 ppc-opc.c:822
+#: ppc-opc.c:862 ppc-opc.c:890
 msgid "invalid conditional option"
-msgstr "option conditionnelle invalide"
+msgstr "option conditionnelle non valide"
 
-#: ppc-opc.c:824
+#: ppc-opc.c:892
 msgid "attempt to set y bit when using + or - modifier"
-msgstr "tentative d'initialisation du bit y lorsque le modificateur + ou - a été utilisé"
+msgstr "tentative d'initialisation du bit y lors de l'utilisation du modificateur + ou -"
 
-#: ppc-opc.c:852
-msgid "offset not a multiple of 16"
-msgstr "décalage n'est pas un multiple de 16"
-
-#: ppc-opc.c:871
-msgid "offset not a multiple of 2"
-msgstr "décalage n'est pas un multiple de 2"
-
-#: ppc-opc.c:873
-msgid "offset greater than 62"
-msgstr "décalage plus grand que 62"
-
-#: ppc-opc.c:892 ppc-opc.c:937 ppc-opc.c:981
-msgid "offset not a multiple of 4"
-msgstr "décalage n'est pas un multiple de 4"
-
-#: ppc-opc.c:894
-msgid "offset greater than 124"
-msgstr "décalage plus grand que 124"
-
-#: ppc-opc.c:913
-msgid "offset not a multiple of 8"
-msgstr "décalage n'est pas un multiple de 8"
-
-#: ppc-opc.c:915
-msgid "offset greater than 248"
-msgstr "décalage plus grand que 248"
-
-#: ppc-opc.c:958
-msgid "offset not between -2048 and 2047"
-msgstr "décalage n'est pas entre -2048 et 2047"
-
-#: ppc-opc.c:979
-msgid "offset not between -8192 and 8191"
-msgstr "décalage n'est pas entre -8192 et 8191"
-
-#: ppc-opc.c:1007
+#: ppc-opc.c:924
 msgid "invalid mask field"
-msgstr "masque de champ invalide"
+msgstr "masque non valide"
 
-#: ppc-opc.c:1033
+#: ppc-opc.c:950
 msgid "ignoring invalid mfcr mask"
-msgstr "masque mfcr invalide est ignoré"
+msgstr "masque mfcr non valide et ignoré"
 
-#: ppc-opc.c:1075
-msgid "ignoring least significant bits in branch offset"
-msgstr "Les derniers bits les moins significatifs sont ignorés dans le décalage de branchement"
-
-#: ppc-opc.c:1105 ppc-opc.c:1140
+#: ppc-opc.c:1000 ppc-opc.c:1035
 msgid "illegal bitmask"
 msgstr "masque de bits illégal"
 
-#: ppc-opc.c:1205
-msgid "value out of range"
-msgstr "valeur hors limite"
-
-#: ppc-opc.c:1273
+#: ppc-opc.c:1155
 msgid "index register in load range"
-msgstr "registre index n'est pas dans la plage de chargement"
+msgstr "Le registre index n'est pas dans la plage de chargement"
 
-#: ppc-opc.c:1289
+#: ppc-opc.c:1171
 msgid "source and target register operands must be different"
-msgstr "les opérandes des registres source et cible doivent être diffrents"
+msgstr "les opérandes des registres source et cible doivent être différents"
 
-#: ppc-opc.c:1304
+#: ppc-opc.c:1186
 msgid "invalid register operand when updating"
 msgstr "opérande registre invalide lors de la mise à jour"
 
-#: ppc-opc.c:1343
-msgid "target register operand must be even"
-msgstr "opérande du registre cible doit être pair"
+#: ppc-opc.c:1265
+msgid "invalid sprg number"
+msgstr "n° de registre spécial non valide"
 
-#: ppc-opc.c:1357
-msgid "source register operand must be even"
-msgstr "opérande du registre source doit être pair"
+#: s390-dis.c:276
+#, c-format
+msgid ""
+"\n"
+"The following S/390 specific disassembler options are supported for use\n"
+"with the -M switch (multiple options should be separated by commas):\n"
+msgstr ""
+"\n"
+"Les options spécifiques S/390 du désassembleur sont supportées avec l'utilisation de\n"
+"l'option -M (les options multiples doivent être séparées par des virgules):\n"
+
+#: s390-dis.c:280
+#, c-format
+msgid "  esa         Disassemble in ESA architecture mode\n"
+msgstr "  esa         Désassemble en mode architecture ESA\n"
+
+#: s390-dis.c:281
+#, c-format
+msgid "  zarch       Disassemble in z/Architecture mode\n"
+msgstr "  zarch       Désassemble en mode z/Architecture\n"
+
+#: score-dis.c:220 score-dis.c:383
+msgid "<illegal instruction>"
+msgstr "<instruction illégale>"
+
+#: sparc-dis.c:282
+#, c-format
+msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
+msgstr "Erreur interne :  sparc-opcode.h erroné : « %s », %#.8lx, %#.8lx\n"
+
+#: sparc-dis.c:293
+#, c-format
+msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
+msgstr "Erreur interne : sparc-opcode.h erroné : « %s », %#.8lx, %#.8lx\n"
+
+#: sparc-dis.c:343
+#, c-format
+msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
+msgstr "Erreur interne : sparc-opcode.h erroné : « %s » == « %s »\n"
 
 #. Mark as non-valid instruction.
-#: sparc-dis.c:760
+#: sparc-dis.c:1013
 msgid "unknown"
 msgstr "inconnu"
 
-#: sparc-dis.c:835
-#, c-format
-msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
-msgstr "Erreur interne:  sparc-opcode.h erroné: « %s », %#.8lx, %#.8lx\n"
-
-#: sparc-dis.c:846
-#, c-format
-msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
-msgstr "Erreur interne: sparc-opcode.h erroné: « %s », %#.8lx, %#.8lx\n"
-
-#: sparc-dis.c:895
-#, c-format
-msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
-msgstr "Erreur interne: sparc-opcode.h erroné: « %s » == « %s »\n"
-
-#: v850-dis.c:225
+#: v850-dis.c:239
 #, c-format
 msgid "unknown operand shift: %x\n"
-msgstr "décalage d'opérande inconnu: %x\n"
+msgstr "décalage d'opérande inconnu : %x\n"
 
-#: v850-dis.c:237
+#: v850-dis.c:253
 #, c-format
 msgid "unknown pop reg: %d\n"
-msgstr "registre de pile inconnu: %d\n"
+msgstr "registre pop inconnu : %d\n"
 
 #. The functions used to insert and extract complicated operands.
 #. Note: There is a conspiracy between these functions and
 #. v850_insert_operand() in gas/config/tc-v850.c.  Error messages
 #. containing the string 'out of range' will be ignored unless a
 #. specific command line option is given to GAS.
-#: v850-opc.c:69
+#: v850-opc.c:48
 msgid "displacement value is not in range and is not aligned"
-msgstr "La valeur de déplacement est hors limite et n'est pas alignée."
+msgstr "La valeur de déplacement hors limite et non alignée"
 
-#: v850-opc.c:70
+#: v850-opc.c:49
 msgid "displacement value is out of range"
-msgstr "valeur de déplacement est hors limite"
+msgstr "valeur de déplacement hors limite"
 
-#: v850-opc.c:71
+#: v850-opc.c:50
 msgid "displacement value is not aligned"
-msgstr "valeur de déplacement n'est pas alignée"
+msgstr "valeur de déplacement non alignée"
 
-#: v850-opc.c:73
+#: v850-opc.c:52
 msgid "immediate value is out of range"
-msgstr "valeur immédiate est hors limite"
+msgstr "valeur immédiate hors limite"
 
-#: v850-opc.c:84
+#: v850-opc.c:60
 msgid "branch value not in range and to odd offset"
-msgstr "valeur de branchement est hors limite et a un décalage impair"
+msgstr "valeur de branchement hors limite et avec un décalage impair"
 
-#: v850-opc.c:86 v850-opc.c:118
+#: v850-opc.c:62 v850-opc.c:89
 msgid "branch value out of range"
 msgstr "valeur de branchement hors limite"
 
-#: v850-opc.c:89 v850-opc.c:121
+#: v850-opc.c:65 v850-opc.c:92
 msgid "branch to odd offset"
-msgstr "Branchement avec un décalage impair"
+msgstr "branchement avec un décalage impair"
 
-#: v850-opc.c:116
+#: v850-opc.c:87
 msgid "branch value not in range and to an odd offset"
-msgstr "valeur de branchement est hors limite et a un décalage impair"
+msgstr "valeur de branchement hors limite et avec un décalage impair"
 
-#: v850-opc.c:347
+#: v850-opc.c:279
 msgid "invalid register for stack adjustment"
-msgstr "registre invalide pour un ajustement de la pile"
+msgstr "registre non valide pour l'ajustement de la pile"
 
-#: v850-opc.c:371
+#: v850-opc.c:299
 msgid "immediate value not in range and not even"
-msgstr "valeur immédiate est hors limite et est impaire"
+msgstr "La valeur immédiate est hors limite et non paire"
 
-#: v850-opc.c:376
+#: v850-opc.c:304
 msgid "immediate value must be even"
-msgstr "valeur immédiate doit être paire"
+msgstr "La valeur immédiate doit être paire"
 
-#: xstormy16-asm.c:76
+#: xc16x-asm.c:66
+msgid "Missing '#' prefix"
+msgstr "Préfixe manquant \"#\""
+
+#: xc16x-asm.c:82
+msgid "Missing '.' prefix"
+msgstr "Préfixe manquant \".\""
+
+#: xc16x-asm.c:98
+msgid "Missing 'pof:' prefix"
+msgstr "Préfixe \"pof:\" manquant"
+
+#: xc16x-asm.c:114
+msgid "Missing 'pag:' prefix"
+msgstr "Préfixe \"pag:\" manquant"
+
+#: xc16x-asm.c:130
+msgid "Missing 'sof:' prefix"
+msgstr "Préfixe \"sof:\" manquant"
+
+#: xc16x-asm.c:146
+msgid "Missing 'seg:' prefix"
+msgstr "Préfixe \"seg:\" manquant"
+
+#: xstormy16-asm.c:71
 msgid "Bad register in preincrement"
 msgstr "Registre erroné dans un préincrément"
 
-#: xstormy16-asm.c:81
+#: xstormy16-asm.c:76
 msgid "Bad register in postincrement"
 msgstr "Registre erroné dans un postincrément"
 
-#: xstormy16-asm.c:83
+#: xstormy16-asm.c:78
 msgid "Bad register name"
 msgstr "Nom erroné de registre"
 
-#: xstormy16-asm.c:87
+#: xstormy16-asm.c:82
 msgid "Label conflicts with register name"
 msgstr "Conflits d'étiquette avec le nom de registre"
 
-#: xstormy16-asm.c:91
+#: xstormy16-asm.c:86
 msgid "Label conflicts with `Rx'"
 msgstr "Conflit d'étiquette avec « Rx »"
 
-#: xstormy16-asm.c:93
+#: xstormy16-asm.c:88
 msgid "Bad immediate expression"
 msgstr "Expression immédiate erronée"
 
-#: xstormy16-asm.c:115
+#: xstormy16-asm.c:109
 msgid "No relocation for small immediate"
-msgstr "aucune relocalisation pour un petit immédiat"
+msgstr "Aucune relocalisation pour une petite valeur immédiate"
 
-#: xstormy16-asm.c:125
+#: xstormy16-asm.c:119
 msgid "Small operand was not an immediate number"
-msgstr "Petite opérande n'était pas un nombre immédiat"
+msgstr "Le petit opérande n'était pas un nombre immédiat"
 
-#: xstormy16-asm.c:164
+#: xstormy16-asm.c:157
 msgid "Operand is not a symbol"
-msgstr "opérande n'est pas un symbol"
+msgstr "L'opérande n'est pas un symbol"
 
-#: xstormy16-asm.c:172
+#: xstormy16-asm.c:165
 msgid "Syntax error: No trailing ')'"
-msgstr "Erreur de syntaxe: pas de ')' en suffixe"
+msgstr "Erreur de syntaxe : pas de ')' en suffixe"
+
+#~ msgid "unknown\t0x%04x"
+#~ msgstr "inconnu\t0x%04x"
+
+#~ msgid "offset not a multiple of 16"
+#~ msgstr "décalage n'est pas un multiple de 16"
+
+#~ msgid "offset not a multiple of 2"
+#~ msgstr "décalage n'est pas un multiple de 2"
+
+#~ msgid "offset greater than 62"
+#~ msgstr "décalage plus grand que 62"
+
+#~ msgid "offset not a multiple of 4"
+#~ msgstr "décalage n'est pas un multiple de 4"
+
+#~ msgid "offset greater than 124"
+#~ msgstr "décalage plus grand que 124"
+
+#~ msgid "offset not a multiple of 8"
+#~ msgstr "décalage n'est pas un multiple de 8"
+
+#~ msgid "offset greater than 248"
+#~ msgstr "décalage plus grand que 248"
+
+#~ msgid "offset not between -2048 and 2047"
+#~ msgstr "décalage n'est pas entre -2048 et 2047"
+
+#~ msgid "offset not between -8192 and 8191"
+#~ msgstr "décalage n'est pas entre -8192 et 8191"
+
+#~ msgid "ignoring least significant bits in branch offset"
+#~ msgstr "Les derniers bits les moins significatifs sont ignorés dans le décalage de branchement"
+
+#~ msgid "value out of range"
+#~ msgstr "valeur hors limite"
+
+#~ msgid "target register operand must be even"
+#~ msgstr "opérande du registre cible doit être pair"
+
+#~ msgid "source register operand must be even"
+#~ msgstr "opérande du registre source doit être pair"
 
 #~ msgid "unrecognized keyword/register name"
 #~ msgstr "nom de mot clé ou de registre non reconnu"
diff --git a/opcodes/po/vi.po b/opcodes/po/vi.po
index 4e5e07f..35021d2 100644
--- a/opcodes/po/vi.po
+++ b/opcodes/po/vi.po
@@ -1,20 +1,21 @@
 # Vietnamese Translation for Opcodes.
-# Copyright © 2007 Free Software Foundation, Inc.
-# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
-# 
+# Copyright © 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the binutils package.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: opcodes 2.17.90\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-07-05 09:17+0100\n"
-"PO-Revision-Date: 2007-08-07 23:32+0930\n"
+"Project-Id-Version: opcodes 2.18.90\n"
+"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
+"POT-Creation-Date: 2008-09-09 15:56+0930\n"
+"PO-Revision-Date: 2008-09-23 22:07+0930\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.7b1\n"
+"X-Generator: LocFactoryEditor 1.7b3\n"
 
 #: alpha-opc.c:155
 msgid "branch operand unaligned"
@@ -54,7 +55,7 @@
 msgstr "quá nhiều hằng số dài"
 
 #: arc-opc.c:668
-msgid "to many shimms in load"
+msgid "too many shimms in load"
 msgstr "quá nhiều shimm trong việc nạp"
 
 #. Do we have a limm already?
@@ -126,7 +127,7 @@
 msgid "Unrecognised disassembler option: %s\n"
 msgstr "Không nhận ra tùy chọn rã: %s\n"
 
-#: arm-dis.c:4226
+#: arm-dis.c:4238
 #, c-format
 msgid ""
 "\n"
@@ -197,14 +198,14 @@
 
 #: fr30-asm.c:310 frv-asm.c:1263 ip2k-asm.c:511 iq2000-asm.c:459
 #: m32c-asm.c:1589 m32r-asm.c:328 mep-asm.c:1001 mt-asm.c:595
-#: openrisc-asm.c:241 xc16x-asm.c:375 xstormy16-asm.c:276
+#: openrisc-asm.c:241 xc16x-asm.c:376 xstormy16-asm.c:276
 #, c-format
 msgid "Unrecognized field %d while parsing.\n"
 msgstr "Không nhận ra trường %d trong khi phân tách.\n"
 
 #: fr30-asm.c:361 frv-asm.c:1314 ip2k-asm.c:562 iq2000-asm.c:510
 #: m32c-asm.c:1640 m32r-asm.c:379 mep-asm.c:1052 mt-asm.c:646
-#: openrisc-asm.c:292 xc16x-asm.c:426 xstormy16-asm.c:327
+#: openrisc-asm.c:292 xc16x-asm.c:427 xstormy16-asm.c:327
 msgid "missing mnemonic in syntax string"
 msgstr "thiếu điều giúp trí nhớ trong chuỗi cú pháp"
 
@@ -217,7 +218,7 @@
 #: m32r-asm.c:605 m32r-asm.c:706 mep-asm.c:1187 mep-asm.c:1191 mep-asm.c:1278
 #: mep-asm.c:1379 mt-asm.c:781 mt-asm.c:785 mt-asm.c:872 mt-asm.c:973
 #: openrisc-asm.c:427 openrisc-asm.c:431 openrisc-asm.c:518 openrisc-asm.c:619
-#: xc16x-asm.c:561 xc16x-asm.c:565 xc16x-asm.c:652 xc16x-asm.c:753
+#: xc16x-asm.c:562 xc16x-asm.c:566 xc16x-asm.c:653 xc16x-asm.c:754
 #: xstormy16-asm.c:462 xstormy16-asm.c:466 xstormy16-asm.c:553
 #: xstormy16-asm.c:654
 msgid "unrecognized instruction"
@@ -225,40 +226,40 @@
 
 #: fr30-asm.c:543 frv-asm.c:1496 ip2k-asm.c:744 iq2000-asm.c:692
 #: m32c-asm.c:1822 m32r-asm.c:561 mep-asm.c:1234 mt-asm.c:828
-#: openrisc-asm.c:474 xc16x-asm.c:608 xstormy16-asm.c:509
+#: openrisc-asm.c:474 xc16x-asm.c:609 xstormy16-asm.c:509
 #, c-format
 msgid "syntax error (expected char `%c', found `%c')"
 msgstr "gặp lỗi cú pháp (mong đợi ký tự « %c », còn tìm « %c »)"
 
 #: fr30-asm.c:553 frv-asm.c:1506 ip2k-asm.c:754 iq2000-asm.c:702
 #: m32c-asm.c:1832 m32r-asm.c:571 mep-asm.c:1244 mt-asm.c:838
-#: openrisc-asm.c:484 xc16x-asm.c:618 xstormy16-asm.c:519
+#: openrisc-asm.c:484 xc16x-asm.c:619 xstormy16-asm.c:519
 #, c-format
 msgid "syntax error (expected char `%c', found end of instruction)"
 msgstr "gặp lỗi cú pháp (ngờ ký tự « %c », còn tìm kết thúc câu lệnh)"
 
 #: fr30-asm.c:581 frv-asm.c:1534 ip2k-asm.c:782 iq2000-asm.c:730
 #: m32c-asm.c:1860 m32r-asm.c:599 mep-asm.c:1272 mt-asm.c:866
-#: openrisc-asm.c:512 xc16x-asm.c:646 xstormy16-asm.c:547
+#: openrisc-asm.c:512 xc16x-asm.c:647 xstormy16-asm.c:547
 msgid "junk at end of line"
 msgstr "gặp rác tại kết thúc dòng"
 
 #: fr30-asm.c:687 frv-asm.c:1640 ip2k-asm.c:888 iq2000-asm.c:836
 #: m32c-asm.c:1966 m32r-asm.c:705 mep-asm.c:1378 mt-asm.c:972
-#: openrisc-asm.c:618 xc16x-asm.c:752 xstormy16-asm.c:653
+#: openrisc-asm.c:618 xc16x-asm.c:753 xstormy16-asm.c:653
 msgid "unrecognized form of instruction"
 msgstr "không nhận ra dạng câu lệnh"
 
 #: fr30-asm.c:699 frv-asm.c:1652 ip2k-asm.c:900 iq2000-asm.c:848
 #: m32c-asm.c:1978 m32r-asm.c:717 mep-asm.c:1390 mt-asm.c:984
-#: openrisc-asm.c:630 xc16x-asm.c:764 xstormy16-asm.c:665
+#: openrisc-asm.c:630 xc16x-asm.c:765 xstormy16-asm.c:665
 #, c-format
 msgid "bad instruction `%.50s...'"
 msgstr "câu lệnh sai « %.50s »"
 
 #: fr30-asm.c:702 frv-asm.c:1655 ip2k-asm.c:903 iq2000-asm.c:851
 #: m32c-asm.c:1981 m32r-asm.c:720 mep-asm.c:1393 mt-asm.c:987
-#: openrisc-asm.c:633 xc16x-asm.c:767 xstormy16-asm.c:668
+#: openrisc-asm.c:633 xc16x-asm.c:768 xstormy16-asm.c:668
 #, c-format
 msgid "bad instruction `%.50s'"
 msgstr "câu lệnh sai « %.50s »"
@@ -378,11 +379,11 @@
 msgid "%02x\t\t*unknown*"
 msgstr "%02x\t\t • không rõ •"
 
-#: i386-dis.c:3196
+#: i386-dis.c:9545
 msgid "<internal disassembler error>"
 msgstr "<lỗi rã nội bộ>"
 
-#: i386-dis.c:3423
+#: i386-dis.c:9776
 #, c-format
 msgid ""
 "\n"
@@ -393,79 +394,124 @@
 "Những tùy chọn rã đặc trưng cho i386/x86-64 theo đây được hỗ trợ\n"
 "để sử dụng với đối số « -M » (phân cách nhiều tùy chọn bằng dấu phẩy):\n"
 
-#: i386-dis.c:3427
+#: i386-dis.c:9780
 #, c-format
 msgid "  x86-64      Disassemble in 64bit mode\n"
 msgstr "  x86-64      Rã trong chế độ 64-bit\n"
 
-#: i386-dis.c:3428
+#: i386-dis.c:9781
 #, c-format
 msgid "  i386        Disassemble in 32bit mode\n"
 msgstr "  i386        Rã trong chế độ 32-bit\n"
 
-#: i386-dis.c:3429
+#: i386-dis.c:9782
 #, c-format
 msgid "  i8086       Disassemble in 16bit mode\n"
 msgstr "  i8086       Rã trong chế độ 16-bit\n"
 
-#: i386-dis.c:3430
+#: i386-dis.c:9783
 #, c-format
 msgid "  att         Display instruction in AT&T syntax\n"
 msgstr "  att         Hiển thị câu lệnh theo cú pháp AT&T\n"
 
-#: i386-dis.c:3431
+#: i386-dis.c:9784
 #, c-format
 msgid "  intel       Display instruction in Intel syntax\n"
 msgstr "  intel       Hiển thị câu lệnh theo cú pháp Intel\n"
 
-#: i386-dis.c:3432
+#: i386-dis.c:9785
+#, c-format
+msgid ""
+"  att-mnemonic\n"
+"              Display instruction in AT&T mnemonic\n"
+msgstr ""
+"  att-mnemonic\n"
+"              Hiển thị câu lệnh theo điều giúp trí nhớ AT&T\n"
+
+#: i386-dis.c:9787
+#, c-format
+msgid ""
+"  intel-mnemonic\n"
+"              Display instruction in Intel mnemonic\n"
+msgstr ""
+"  intel-mnemonic\n"
+"              Hiển thị câu lệnh theo điều giúp trí nhớ Intel\n"
+
+#: i386-dis.c:9789
 #, c-format
 msgid "  addr64      Assume 64bit address size\n"
 msgstr "  addr64      Giả sử kích cỡ địa chỉ 64-bit\n"
 
-#: i386-dis.c:3433
+#: i386-dis.c:9790
 #, c-format
 msgid "  addr32      Assume 32bit address size\n"
 msgstr "  addr32      Giả sử kích cỡ địa chỉ 32-bit\n"
 
-#: i386-dis.c:3434
+#: i386-dis.c:9791
 #, c-format
 msgid "  addr16      Assume 16bit address size\n"
 msgstr "  addr16     Giả sử kích cỡ địa chỉ 16-bit\n"
 
-#: i386-dis.c:3435
+#: i386-dis.c:9792
 #, c-format
 msgid "  data32      Assume 32bit data size\n"
 msgstr "  data32      Giả sử kích cỡ dữ liệu 32-bit\n"
 
-#: i386-dis.c:3436
+#: i386-dis.c:9793
 #, c-format
 msgid "  data16      Assume 16bit data size\n"
 msgstr "  data16      Giả sử kích cỡ dữ liệu 16-bit\n"
 
-#: i386-dis.c:3437
+#: i386-dis.c:9794
 #, c-format
 msgid "  suffix      Always display instruction suffix in AT&T syntax\n"
 msgstr "  suffix      Luôn luôn hiển thị hậu tố câu lệnh theo cú pháp AT&T\n"
 
-#: i386-gen.c:42 ia64-gen.c:307
+#: i386-gen.c:411 ia64-gen.c:307
 #, c-format
 msgid "%s: Error: "
 msgstr "%s: Lỗi: "
 
-#: i386-gen.c:109
-msgid "can't find i386-opc.tbl for reading\n"
-msgstr "không tìm thấy i386-opc.tbl để đọc\n"
+#: i386-gen.c:510
+#, c-format
+msgid "%s: %d: Unknown bitfield: %s\n"
+msgstr "%s: %d: Không rõ trường bit: %s\n"
 
-#: i386-gen.c:260
-msgid "can't find i386-reg.tbl for reading\n"
-msgstr "không tìm thấy i386-reg.tbl để đọc\n"
+#: i386-gen.c:674
+#, c-format
+msgid "can't find i386-opc.tbl for reading, errno = %s\n"
+msgstr "không tìm thấy i386-opc.tbl để đọc; số thứ tự lỗi = %s\n"
 
-#: i386-gen.c:386 ia64-gen.c:2841
+#: i386-gen.c:851
+#, c-format
+msgid "can't find i386-reg.tbl for reading, errno = %s\n"
+msgstr "không tìm thấy i386-reg.tbl để đọc; số thứ tự lỗi = %s\n"
+
+#: i386-gen.c:943
+#, c-format
+msgid "can't create i386-init.h, errno = %s\n"
+msgstr "không thể tạo i386-init.h, số thứ tự lỗi = %s\n"
+
+#: i386-gen.c:1032 ia64-gen.c:2850
 #, c-format
 msgid "unable to change directory to \"%s\", errno = %s\n"
 msgstr "không thể chuyển đổi thư mục sang « %s », số lỗi = %s\n"
 
+#: i386-gen.c:1039
+#, c-format
+msgid "%d unused bits in i386_cpu_flags.\n"
+msgstr "%d bit chưa dùng trong i386_cpu_flags.\n"
+
+#: i386-gen.c:1046
+#, c-format
+msgid "%d unused bits in i386_operand_type.\n"
+msgstr "%d bit chưa dùng trong i386_operand_type.\n"
+
+#: i386-gen.c:1060
+#, c-format
+msgid "can't create i386-tbl.h, errno = %s\n"
+msgstr "không thể tạo i386-tbl.h, số thứ tự lỗi = %s\n"
+
 #: ia64-gen.c:320
 #, c-format
 msgid "%s: Warning: "
@@ -504,62 +550,67 @@
 msgid "overwriting note %d with note %d (IC:%s)\n"
 msgstr "đang ghi đè lên ghi chú %d bằng ghi chú %d (IC:%s)\n"
 
-#: ia64-gen.c:1455
+#: ia64-gen.c:1459
 #, c-format
 msgid "don't know how to specify %% dependency %s\n"
 msgstr "không biết cách ghi rõ %% quan hệ phụ thuộc %s\n"
 
-#: ia64-gen.c:1477
+#: ia64-gen.c:1481
 #, c-format
 msgid "Don't know how to specify # dependency %s\n"
 msgstr "Không biết cách ghi rõ # quan hệ phụ thuộc %s\n"
 
-#: ia64-gen.c:1516
+#: ia64-gen.c:1520
 #, c-format
 msgid "IC:%s [%s] has no terminals or sub-classes\n"
 msgstr "IC:%s [%s] không có điều mở rộng hoàn thành hay hạng con\n"
 
-#: ia64-gen.c:1519
+#: ia64-gen.c:1523
 #, c-format
 msgid "IC:%s has no terminals or sub-classes\n"
 msgstr "IC:%s không có điều mở rộng hoàn thành hay hạng con\n"
 
-#: ia64-gen.c:1528
+#: ia64-gen.c:1532
 #, c-format
 msgid "no insns mapped directly to terminal IC %s [%s]"
 msgstr "không có câu lệnh được ánh xạ trực tiếp vào IC mở rộng hoàn thành %s [%s]"
 
-#: ia64-gen.c:1531
+#: ia64-gen.c:1535
 #, c-format
 msgid "no insns mapped directly to terminal IC %s\n"
 msgstr "không có câu lệnh được ánh xạ trực tiếp vào IC mở rộng hoàn thành %s\n"
 
-#: ia64-gen.c:1542
+#: ia64-gen.c:1546
 #, c-format
 msgid "class %s is defined but not used\n"
 msgstr "hạng %s được xác định nhưng chưa được dùng\n"
 
-#: ia64-gen.c:1553
+#: ia64-gen.c:1559
 #, c-format
-msgid "Warning: rsrc %s (%s) has no chks%s\n"
-msgstr "Cảnh báo : tài nguyên %s (%s) không có chks %s\n"
+msgid "Warning: rsrc %s (%s) has no chks\n"
+msgstr "Cảnh báo : rsrc %s (%s) không có chks\n"
 
-#: ia64-gen.c:1557
+#: ia64-gen.c:1562
+#, c-format
+msgid "Warning: rsrc %s (%s) has no chks or regs\n"
+msgstr "Cảnh báo : rsrc %s (%s) không có chks hay regs\n"
+
+#: ia64-gen.c:1566
 #, c-format
 msgid "rsrc %s (%s) has no regs\n"
 msgstr "Tài nguyên %s (%s) không có regs\n"
 
-#: ia64-gen.c:2469
+#: ia64-gen.c:2478
 #, c-format
 msgid "IC note %d in opcode %s (IC:%s) conflicts with resource %s note %d\n"
 msgstr "Ghi chú IC %d trong opcode (mã thao tác) %s (IC:%s) thì xung đột với tài nguyên %s ghi chú %d\n"
 
-#: ia64-gen.c:2497
+#: ia64-gen.c:2506
 #, c-format
 msgid "IC note %d for opcode %s (IC:%s) conflicts with resource %s note %d\n"
 msgstr "Ghi chú IC %d cho opcode (mã thao tác) %s (IC:%s) thì xung đột với tài nguyên %s ghi chú %d\n"
 
-#: ia64-gen.c:2511
+#: ia64-gen.c:2520
 #, c-format
 msgid "opcode %s has no class (ops %d %d %d)\n"
 msgstr "opcode (mã thao tác) %s không có hạng (những tác tử %d %d %d)\n"
@@ -740,26 +791,26 @@
 msgid "invalid %function() here"
 msgstr "hàm %function() không hợp lệ ở đây"
 
-#: mips-dis.c:745
+#: mips-dis.c:781
 msgid "# internal error, incomplete extension sequence (+)"
 msgstr "# lỗi nội bộ, dãy mở rộng chưa hoàn thành (+)"
 
-#: mips-dis.c:852
+#: mips-dis.c:915
 #, c-format
 msgid "# internal error, undefined extension sequence (+%c)"
 msgstr "# lỗi nội bộ, chưa xác định dãy mở rộng (+%c)"
 
-#: mips-dis.c:1211
+#: mips-dis.c:1274
 #, c-format
-msgid "# internal error, undefined modifier(%c)"
-msgstr "# lỗi nội bộ, chưa xác định điều sửa đổi(%c)"
+msgid "# internal error, undefined modifier (%c)"
+msgstr "# lỗi nội bộ, chưa xác định điều sửa đổi (%c)"
 
-#: mips-dis.c:1818
+#: mips-dis.c:1881
 #, c-format
 msgid "# internal disassembler error, unrecognised modifier (%c)"
 msgstr "# lỗi rã nội bộ, không nhận ra điều sửa đổi (%c)"
 
-#: mips-dis.c:2049
+#: mips-dis.c:2112
 #, c-format
 msgid ""
 "\n"
@@ -770,7 +821,7 @@
 "Nững tùy chọn rã đặc trưng cho MIPS theo đây được hỗ trợ để sử dụng\n"
 "với đối số « -M » (phân cách nhiều tùy chọn bằng dấu phẩy):\n"
 
-#: mips-dis.c:2053
+#: mips-dis.c:2116
 #, c-format
 msgid ""
 "\n"
@@ -781,7 +832,7 @@
 "  gpr-names=ABI            In ra các tên GPR theo ABI đã ghi rõ.\n"
 "                           Mặc định: dựa vào mã nhi phân đang bị rã\n"
 
-#: mips-dis.c:2057
+#: mips-dis.c:2120
 #, c-format
 msgid ""
 "\n"
@@ -792,7 +843,7 @@
 "  fpr-names=ABI            In ra các tên FPR theo ABI đã ghi rõ.\n"
 "                           Mặc định: thuộc số\n"
 
-#: mips-dis.c:2061
+#: mips-dis.c:2124
 #, c-format
 msgid ""
 "\n"
@@ -804,7 +855,7 @@
 "  cp0-names=ARCH           In ra các tên CP0 theo kiến trúc đã ghi rõ\n"
 "                           Mặc định: dựa vào mã nhi phân đang bị rã.\n"
 
-#: mips-dis.c:2066
+#: mips-dis.c:2129
 #, c-format
 msgid ""
 "\n"
@@ -816,7 +867,7 @@
 "  hwr-names=ARCH           In ra các tên HWR theo kiến trúc đã ghi rõ.\n"
 "                           Mặc định: dựa vào mã nhi phân đang bị rã.\n"
 
-#: mips-dis.c:2071
+#: mips-dis.c:2134
 #, c-format
 msgid ""
 "\n"
@@ -826,7 +877,7 @@
 "\n"
 "  reg-names=ABI            In ra các tên GPR và FPR theo ABI đã ghi rõ.\n"
 
-#: mips-dis.c:2075
+#: mips-dis.c:2138
 #, c-format
 msgid ""
 "\n"
@@ -837,7 +888,7 @@
 "  reg-names=ARCH\n"
 "\t In ra các tên HWR và thanh ghi CP0 theo kiến trúc đã ghi rõ.\n"
 
-#: mips-dis.c:2079
+#: mips-dis.c:2142
 #, c-format
 msgid ""
 "\n"
@@ -848,12 +899,12 @@
 "  Đối với các tùy chọn trên, những giá trị theo đây được hỗ trợ cho « ABI »:\n"
 "   "
 
-#: mips-dis.c:2084 mips-dis.c:2092 mips-dis.c:2094
+#: mips-dis.c:2147 mips-dis.c:2155 mips-dis.c:2157
 #, c-format
 msgid "\n"
 msgstr "\n"
 
-#: mips-dis.c:2086
+#: mips-dis.c:2149
 #, c-format
 msgid ""
 "\n"
@@ -892,9 +943,8 @@
 msgstr "Gặp lỗi nghiêm trọng trong « parse_imm16 »."
 
 #: mt-asm.c:157
-#, c-format
-msgid "%operator operand is not a symbol"
-msgstr "%otoán tử tác tử không phải là một ký hiệu"
+msgid "The percent-operator's operand is not a symbol"
+msgstr "Toán hạng của toán tử phần trăm không phải là một ký hiệu"
 
 #: mt-asm.c:395
 msgid "invalid operand.  type may have values 0,1,2 only."
@@ -910,42 +960,63 @@
 msgid "$<undefined>"
 msgstr "$<chưa xác định>"
 
-#: ppc-opc.c:782 ppc-opc.c:810
+#: ppc-opc.c:862 ppc-opc.c:890
 msgid "invalid conditional option"
 msgstr "tùy chọn điều kiện không hợp lệ"
 
-#: ppc-opc.c:812
+#: ppc-opc.c:892
 msgid "attempt to set y bit when using + or - modifier"
 msgstr "thử đặt « bit y » khi sử dụng điều sửa đổi + hay -"
 
-#: ppc-opc.c:844
+#: ppc-opc.c:924
 msgid "invalid mask field"
 msgstr "trường mặt nạ không hợp lệ"
 
-#: ppc-opc.c:870
+#: ppc-opc.c:950
 msgid "ignoring invalid mfcr mask"
 msgstr "đang bỏ qua mặt nạ mfcr không hợp lệ"
 
-#: ppc-opc.c:920 ppc-opc.c:955
+#: ppc-opc.c:1000 ppc-opc.c:1035
 msgid "illegal bitmask"
 msgstr "gặp mặt nặ bit cấm"
 
-#: ppc-opc.c:1075
+#: ppc-opc.c:1155
 msgid "index register in load range"
 msgstr "thanh ghi cơ số trong phạm vi nạp"
 
-#: ppc-opc.c:1091
+#: ppc-opc.c:1171
 msgid "source and target register operands must be different"
 msgstr "tác tử thanh ghi kiểu nguồn và đích phải là khác nhau"
 
-#: ppc-opc.c:1106
+#: ppc-opc.c:1186
 msgid "invalid register operand when updating"
 msgstr "gặp tác tử thanh ghi không hợp lệ khi cập nhật"
 
-#: ppc-opc.c:1188
+#: ppc-opc.c:1265
 msgid "invalid sprg number"
 msgstr "số sprg không hợp lệ"
 
+#: s390-dis.c:276
+#, c-format
+msgid ""
+"\n"
+"The following S/390 specific disassembler options are supported for use\n"
+"with the -M switch (multiple options should be separated by commas):\n"
+msgstr ""
+"\n"
+"Theo đây có những tùy chọn rã đặc trưng cho S/390 được hỗ trợ để sử dụng\n"
+"với đối số « -M » (phân cách nhiều tùy chọn bằng dấu phẩy):\n"
+
+#: s390-dis.c:280
+#, c-format
+msgid "  esa         Disassemble in ESA architecture mode\n"
+msgstr "  esa         Rã ở chế độ kiến trúc ESA\n"
+
+#: s390-dis.c:281
+#, c-format
+msgid "  zarch       Disassemble in z/Architecture mode\n"
+msgstr "  zarch       Rã ở chế độ z/kiến trúc\n"
+
 #: score-dis.c:220 score-dis.c:383
 msgid "<illegal instruction>"
 msgstr "<độ chính xác cấm>"
@@ -1029,27 +1100,27 @@
 msgid "immediate value must be even"
 msgstr "giá trị trực tiếp phải là số chẵn"
 
-#: xc16x-asm.c:65
+#: xc16x-asm.c:66
 msgid "Missing '#' prefix"
 msgstr "Thiếu tiền tố « # »"
 
-#: xc16x-asm.c:81
+#: xc16x-asm.c:82
 msgid "Missing '.' prefix"
 msgstr "Thiếu tiền tố « . »"
 
-#: xc16x-asm.c:97
+#: xc16x-asm.c:98
 msgid "Missing 'pof:' prefix"
 msgstr "Thiếu tiền tố « pof: »"
 
-#: xc16x-asm.c:113
+#: xc16x-asm.c:114
 msgid "Missing 'pag:' prefix"
 msgstr "Thiếu tiền tố « pag: »"
 
-#: xc16x-asm.c:129
+#: xc16x-asm.c:130
 msgid "Missing 'sof:' prefix"
 msgstr "Thiếu tiền tố « sof: »"
 
-#: xc16x-asm.c:145
+#: xc16x-asm.c:146
 msgid "Missing 'seg:' prefix"
 msgstr "Thiếu tiền tố « seg: »"
 
@@ -1092,42 +1163,3 @@
 #: xstormy16-asm.c:165
 msgid "Syntax error: No trailing ')'"
 msgstr "Lỗi cú pháp: không có dấu ngoặc đóng « ) » đi theo"
-
-#~ msgid "offset not a multiple of 16"
-#~ msgstr "hiệu số không phải là bội số cho 16"
-
-#~ msgid "offset not a multiple of 2"
-#~ msgstr "hiệu số không phải là bội số cho 2"
-
-#~ msgid "offset greater than 62"
-#~ msgstr "hiệu số hơn 62"
-
-#~ msgid "offset not a multiple of 4"
-#~ msgstr "hiệu số không phải là bội số cho 4"
-
-#~ msgid "offset greater than 124"
-#~ msgstr "hiệu số hơn 124"
-
-#~ msgid "offset not a multiple of 8"
-#~ msgstr "hiệu số không phải là bội số cho 8"
-
-#~ msgid "offset greater than 248"
-#~ msgstr "hiệu số hơn 248"
-
-#~ msgid "offset not between -2048 and 2047"
-#~ msgstr "hiệu số không phải ở giữa -2048 và 2047"
-
-#~ msgid "offset not between -8192 and 8191"
-#~ msgstr "hiệu số không phải ở giữa -8192 và 8191"
-
-#~ msgid "ignoring least significant bits in branch offset"
-#~ msgstr "đang bỏ qua các bit trọng đai ít nhất trong hiệu số cành"
-
-#~ msgid "value out of range"
-#~ msgstr "giá trị ở ngoại phạm vị"
-
-#~ msgid "target register operand must be even"
-#~ msgstr "tác tử thanh ghi đích phải là số chẵn"
-
-#~ msgid "source register operand must be even"
-#~ msgstr "tác tử thanh ghi nguồn phải là số chẵn"
diff --git a/opcodes/s390-opc.c b/opcodes/s390-opc.c
index d31ca1e..bf3b58d 100644
--- a/opcodes/s390-opc.c
+++ b/opcodes/s390-opc.c
@@ -273,7 +273,6 @@
 #define INSTR_RRF_U0RF   4, { R_24,U4_16,F_28,0,0,0 }          /* e.g. cfebr */
 #define INSTR_RRF_UUFF   4, { F_24,U4_16,F_28,U4_20,0,0 }      /* e.g. fidtr */
 #define INSTR_RRF_0UFF   4, { F_24,F_28,U4_20,0,0,0 }          /* e.g. ldetr */
-#define INSTR_RRF_FFFU   4, { F_24,F_16,F_28,U4_20,0,0 }       /* e.g. qadtr */
 #define INSTR_RRF_FFRU   4, { F_24,F_16,R_28,U4_20,0,0 }       /* e.g. rrdtr */
 #define INSTR_RRF_M0RR   4, { R_24,R_28,M_16,0,0,0 }           /* e.g. sske  */
 #define INSTR_RRF_U0RR   4, { R_24,R_28,U4_16,0,0,0 }          /* e.g. clrt  */
@@ -378,7 +377,6 @@
 #define MASK_RRF_U0RF    { 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00 }
 #define MASK_RRF_UUFF    { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 }
 #define MASK_RRF_0UFF    { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00 }
-#define MASK_RRF_FFFU    { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 }
 #define MASK_RRF_FFRU    { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 }
 #define MASK_RRF_M0RR    { 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00 }
 #define MASK_RRF_U0RR    { 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00 }
diff --git a/opcodes/s390-opc.txt b/opcodes/s390-opc.txt
index 6e0f3ad..52c2eba 100644
--- a/opcodes/s390-opc.txt
+++ b/opcodes/s390-opc.txt
@@ -378,8 +378,8 @@
 b990 trtt RRE_RR "translate two to two" g5 esa,zarch
 ea unpka SS_L0RDRD "unpack ascii" g5 esa,zarch
 e2 unpku SS_L0RDRD "unpack unicode" g5 esa,zarch
-b358 thder RRE_RR "convert short bfp to long hfp" g5 esa,zarch
-b359 thdr RRE_RR "convert long bfp to long hfp" g5 esa,zarch
+b358 thder RRE_FF "convert short bfp to long hfp" g5 esa,zarch
+b359 thdr RRE_FF "convert long bfp to long hfp" g5 esa,zarch
 b350 tbedr RRF_U0FF "convert long hfp to short bfp" g5 esa,zarch
 b351 tbdr RRF_U0FF "convert long hfp to long bfp" g5 esa,zarch
 b374 lzer RRE_F0 "load short zero" g5 esa,zarch
@@ -554,9 +554,9 @@
 b3b6 cxfr RRE_FR "convert from fixed 32 to extended hfp" g5 esa,zarch
 b3b5 cdfr RRE_FR "convert from fixed 32 to long hfp" g5 esa,zarch
 b3b4 cefr RRE_FR "convert from fixed 32 to short hfp" g5 esa,zarch
-b3ba cfxr RRF_U0RF "convert to fixed extended hfp to 32" z900 zarch
-b3b9 cfdr RRF_U0RF "convert to fixed long hfp to 32" z900 zarch
-b3b8 cfer RRF_U0RF "convert to fixed short hfp to 32" z900 zarch
+b3ba cfxr RRF_U0RF "convert to fixed extended hfp to 32" z900 esa,zarch
+b3b9 cfdr RRF_U0RF "convert to fixed long hfp to 32" z900 esa,zarch
+b3b8 cfer RRF_U0RF "convert to fixed short hfp to 32" z900 esa,zarch
 b362 ltxr RRE_FF "load and test extended hfp" g5 esa,zarch
 b363 lcxr RRE_FF "load complement extended hfp" g5 esa,zarch
 b367 fixr RRE_FF "load fp integer extended hfp" g5 esa,zarch
@@ -575,6 +575,7 @@
 ed0000000037 mee RXE_FRRD "multiply short hfp" g5 esa,zarch
 b336 sqxr RRE_FF "square root extended hfp" g5 esa,zarch
 ed0000000034 sqe RXE_FRRD "square root short hfp" g5 esa,zarch
+ed0000000035 sqd RXE_FRRD "square root long hfp" g5 esa,zarch
 b263 cmpsc RRE_RR "compression call" g5 esa,zarch
 eb00000000c0 tp RSL_R0RD "test decimal" g5 esa,zarch
 b365 lxr RRE_FF "load extended fp" g5 esa,zarch
@@ -614,8 +615,8 @@
 e30000000051 msy RXY_RRRD "multiply single with long offset" z990 zarch
 eb0000000056 oiy SIY_URD "or immediate with long offset" z990 zarch
 e30000000056 oy RXY_RRRD "or with long offset" z990 zarch
-ed0000000067 stdy RXY_FRRD "load (long) with long offset" z990 zarch
-ed0000000066 stey RXY_FRRD "load (short) with long offset" z990 zarch
+ed0000000067 stdy RXY_FRRD "store (long) with long offset" z990 zarch
+ed0000000066 stey RXY_FRRD "store (short) with long offset" z990 zarch
 e30000000050 sty RXY_RRRD "store with long offset" z990 zarch
 eb000000009b stamy RSY_AARD "store access multiple with long offset" z990 zarch
 e30000000072 stcy RXY_RRRD "store character with long offset" z990 zarch
@@ -695,7 +696,7 @@
 eb0000000045 bxleg RSY_RRRD "branch on index low or equal 64" z990 zarch
 eb0000000080 icmh RSY_RURD "insert characters under mask high with long offset" z990 zarch
 eb000000008e mvclu RSY_RRRD "move long unicode" z990 esa,zarch
-eb000000008f clclu RSY_RRRD "compare logical long unicode with long offset" z990 zarch
+eb000000008f clclu RSY_RRRD "compare logical long unicode with long offset" z990 esa,zarch
 eb0000000096 lmh RSY_RRRD "load multiple high" z990 zarch
 # new z990 instructions
 b98a cspg RRE_RR "compare and swap and purge" z990 zarch
@@ -831,8 +832,8 @@
 b3dd ldxtr RRF_UUFF "load rounded extended dfp" z9-ec zarch
 b3d0 mdtr RRR_F0FF "multiply long dfp" z9-ec zarch
 b3d8 mxtr RRR_F0FF "multiply extended dfp" z9-ec zarch
-b3f5 qadtr RRF_FFFU "Quantize long dfp" z9-ec zarch
-b3fd qaxtr RRF_FFFU "Quantize extended dfp" z9-ec zarch
+b3f5 qadtr RRF_FUFF "Quantize long dfp" z9-ec zarch
+b3fd qaxtr RRF_FUFF "Quantize extended dfp" z9-ec zarch
 b3f7 rrdtr RRF_FFRU "Reround long dfp" z9-ec zarch
 b3ff rrxtr RRF_FFRU "Reround extended dfp" z9-ec zarch
 b2b9 srnmt S_RD "set rounding mode dfp" z9-ec zarch
diff --git a/opcodes/z80-dis.c b/opcodes/z80-dis.c
index 98161d9..c9ee19e 100644
--- a/opcodes/z80-dis.c
+++ b/opcodes/z80-dis.c
@@ -128,8 +128,10 @@
 prt_rr_nn (struct buffer *buf, disassemble_info * info, char *txt)
 {
   char mytxt[TXTSIZ];
+  int rr;
 
-  snprintf (mytxt, TXTSIZ, txt, rr_str[(buf->data[0] >> 4) & 3]);
+  rr = (buf->data[buf->n_fetch - 1] >> 4) & 3; 
+  snprintf (mytxt, TXTSIZ, txt, rr_str[rr]);
   return prt_nn (buf, info, mytxt);
 }
 
@@ -297,9 +299,11 @@
   { 0x4A, 0xCF, prt_rr, "adc hl," },
   { 0x4B, 0xCF, prt_rr_nn, "ld %s,(0x%%04x)" },
   { 0x4D, 0xFF, prt, "reti" },
+  { 0x4F, 0xFF, prt, "ld r,a" },
   { 0x56, 0xFF, prt, "im 1" },
   { 0x57, 0xFF, prt, "ld a,i" },
   { 0x5E, 0xFF, prt, "im 2" },
+  { 0x5F, 0xFF, prt, "ld a,r" },
   { 0x67, 0xFF, prt, "rrd" },
   { 0x6F, 0xFF, prt, "rld" },
   { 0xA0, 0xE4, cis, "" },