diff options
387 files changed, 58497 insertions, 10986 deletions
@@ -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= target_alias ; }; 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_ADAFLAGS ; optional=true ; }; 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 @@ BUILD_EXPORTS = \ 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 @@ BUILD_EXPORTS = \ 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 @@ HOST_EXPORTS = \ 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 @@ AR_FOR_BUILD = @AR_FOR_BUILD@ 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 @@ GNATBIND = @GNATBIND@ GNATMAKE = @GNATMAKE@ CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBCFLAGS = $(CFLAGS) CXXFLAGS = @CXXFLAGS@ @@ -399,13 +404,14 @@ COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@ 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 @@ BASE_FLAGS_TO_PASS = \ "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 @@ BASE_FLAGS_TO_PASS = \ "BOOT_CFLAGS=$(BOOT_CFLAGS)" \ "BOOT_LDFLAGS=$(BOOT_LDFLAGS)" \ "CFLAGS=$(CFLAGS)" \ + "CPPFLAGS=$(CPPFLAGS)" \ "CXXFLAGS=$(CXXFLAGS)" \ "LDFLAGS=$(LDFLAGS)" \ "LIBCFLAGS=$(LIBCFLAGS)" \ @@ -617,6 +625,7 @@ EXTRA_TARGET_FLAGS = \ '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 @@ BUILD_EXPORTS = \ 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 @@ BUILD_EXPORTS = \ 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 @@ HOST_EXPORTS = \ 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 @@ AR_FOR_BUILD = @AR_FOR_BUILD@ 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 @@ GNATBIND = @GNATBIND@ GNATMAKE = @GNATMAKE@ CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBCFLAGS = $(CFLAGS) CXXFLAGS = @CXXFLAGS@ @@ -402,13 +407,14 @@ COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@ 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 @@ EXTRA_TARGET_FLAGS = \ '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 @@ coff-arm.lo: coff-arm.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \ 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 @@ pei-arm.lo: pei-arm.c $(INCDIR)/filenames.h 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 -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 @@ elf32-ia64.lo: elf32-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 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 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ $(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 @@ DATADIRNAME = @DATADIRNAME@ DEBUGDIR = @DEBUGDIR@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -171,6 +172,7 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -181,8 +183,12 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ WIN32LIBADD = @WIN32LIBADD@ 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 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi @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 @@ coff-arm.lo: coff-arm.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \ 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 @@ pei-arm.lo: pei-arm.c $(INCDIR)/filenames.h 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 -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 @@ elf32-ia64.lo: elf32-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 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([../libtool.m4]) 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 @@ This is the 5 bits of a value. */ /* 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 @@ cache_bread (struct bfd *abfd, void *buf, file_ptr nbytes) 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 @@ cache_bwrite (struct bfd *abfd, const void *where, file_ptr nbytes) { 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 @@ cache_bflush (struct bfd *abfd) { int sts; FILE *f = bfd_cache_lookup (abfd, CACHE_NO_OPEN); + if (f == NULL) return 0; sts = fflush (f); @@ -377,6 +379,7 @@ cache_bstat (struct bfd *abfd, struct stat *sb) { 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 @@ cache_bstat (struct bfd *abfd, struct stat *sb) 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 @@ static const struct xcoff_backend_data_rec bfd_xcoff_backend_data = 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 @@ coff_write_native_symbol (bfd *abfd, 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 @@ coff_write_symbols (bfd *abfd) } 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 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd, 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 @@ ac_includes_default="\ # 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 @@ Optional Features: --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 @@ fi # Define the identity of the package. PACKAGE=bfd - VERSION=2.18.50 + VERSION=2.19.50 cat >>confdefs.h <<_ACEOF @@ -4933,105 +4934,387 @@ _ACEOF _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 () +{ -macro_version='2.1a' -macro_revision='1.2435' - - - - - - - - - - + ; + 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 -ltmain="$ac_aux_dir/ltmain.sh" +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 -# Set options + 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 () +{ -enable_dlopen=no + ; + 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 () +{ -enable_win32_dll=no + ; + 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 -# 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 +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 - enable_static=yes -fi; + 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 -# 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 +macro_version='2.2.6' +macro_revision='1.3012' -# 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; @@ -5039,6 +5322,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5260,7 +5544,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5594,7 +5876,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6274,6 +6653,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -10046,7 +11097,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10449,7 +11496,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10489,7 +11536,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10549,7 +11592,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -11048,7 +12091,7 @@ bfd_default_target_size=32 # 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_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -21829,6 +22880,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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_CONFIG_SRCDIR([libbfd.c]) 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_DISABLE_SHARED AC_PROG_CC AC_GNU_SOURCE AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE LT_INIT @@ -119,7 +120,7 @@ bfd_default_target_size=32 # 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 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ $(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 @@ DATADIRNAME = @DATADIRNAME@ DEBUGDIR = @DEBUGDIR@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -144,6 +145,7 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -154,8 +156,12 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ WIN32LIBADD = @WIN32LIBADD@ 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 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi 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 @@ struct dwarf_block bfd_byte *data; }; -struct loadable_section +struct adjusted_section { asection *section; bfd_vma adj_vma; @@ -143,11 +143,11 @@ struct dwarf2_debug 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 @@ struct comp_unit /* 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 @@ read_attribute_value (struct attribute *attr, 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 @@ lookup_symbol_in_variable_table (struct comp_unit *unit, } 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 @@ find_abstract_instance_name (struct comp_unit *unit, bfd_uint64_t die_ref) 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 @@ scan_unit_for_symbols (struct comp_unit *unit) 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 @@ parse_comp_unit (struct dwarf2_debug *stash, 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 @@ parse_comp_unit (struct dwarf2_debug *stash, 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 @@ find_debug_info (bfd *abfd, asection *after_sec) 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) + 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 (sect->vma != 0 || (sect->flags & SEC_LOAD) == 0) + if (!is_debug_info && (sect->flags & SEC_LOAD) == 0) continue; sz = sect->rawsize ? sect->rawsize : sect->size; @@ -2524,19 +2567,33 @@ place_sections (bfd *abfd, struct dwarf2_debug *stash) 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 @@ place_sections (bfd *abfd, struct dwarf2_debug *stash) 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 @@ place_sections (bfd *abfd, struct dwarf2_debug *stash) + ~((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 @@ struct elf_backend_data /* 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_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, < (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 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, /* 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 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, 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 @@ -1863,14 +1863,8 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex) 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 @@ elf_fake_sections (bfd *abfd, asection *asect, void *failedptrarg) *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 @@ bfd_elf_set_group_contents (bfd *abfd, asection *sec, void *failedptrarg) || *failedptr) return; - symindx = 0; - if (elf_group_id (sec) != NULL) - symindx = elf_group_id (sec)->udata.i; + if (elf_section_data (sec)->this_hdr.sh_info == 0) + { + 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 (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; + } + else if (elf_section_data (sec)->this_hdr.sh_info == (unsigned int) -2) { - /* 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; + /* 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; } - elf_section_data (sec)->this_hdr.sh_info = symindx; /* The contents won't be allocated for "ld -r" or objcopy. */ gas = TRUE; @@ -3386,7 +3411,7 @@ get_program_header_size (bfd *abfd, struct bfd_link_info *info) ++segs; } - if (info->relro) + if (info != NULL && info->relro) { /* We need a PT_GNU_RELRO segment. */ ++segs; @@ -3768,8 +3793,13 @@ _bfd_elf_map_sections_to_segments (bfd *abfd, struct bfd_link_info *info) } /* 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 @@ _bfd_elf_map_sections_to_segments (bfd *abfd, struct bfd_link_info *info) pm = &m->next; } - if (info->relro) + if (info != NULL && info->relro) { for (m = mfirst; m != NULL; m = m->next) { @@ -4128,7 +4158,7 @@ assign_file_positions_for_load_sections (bfd *abfd, 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 @@ assign_file_positions_for_load_sections (bfd *abfd, 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 @@ _bfd_elf_init_private_section_data (bfd *ibfd, 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 @@ static reloc_howto_type cris_elf_howto_table [] = 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 @@ static const struct cris_reloc_map cris_reloc_map [] = { 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 @@ static const bfd_vma ppc_elf_vxworks_pic_plt0_entry /* 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 @@ ppc_elf_merge_obj_attributes (bfd *ibfd, bfd *obfd) 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 @@ ppc_elf_relocate_section (bfd *output_bfd, } } - 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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_relocate_section (bfd *output_bfd, { 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 @@ ppc_elf_relocate_section (bfd *output_bfd, && (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 @@ ppc_elf_relocate_section (bfd *output_bfd, 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 @@ ppc_elf_finish_dynamic_symbol (bfd *output_bfd, /* 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 @@ ppc_elf_finish_dynamic_symbol (bfd *output_bfd, + 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 @@ ppc_elf_finish_dynamic_symbol (bfd *output_bfd, 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 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd, 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 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd, 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 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd, } } - /* 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 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd, 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 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd, } } - 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 @@ sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd, /* 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 @@ sh_symbian_relocate_section (bfd * output_bfd, 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 @@ spu_elf_final_link (bfd *output_bfd, struct bfd_link_info *info) 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 @@ spu_elf_post_process_headers (bfd *abfd, 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 @@ elf_xtensa_check_relocs (bfd *abfd, { 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 @@ elf_xtensa_check_relocs (bfd *abfd, } } 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 @@ static bfd_vma opd_entry_value #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 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, } /* 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 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, 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 @@ struct ppc_link_hash_table /* 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 @@ add_symbol_adjust (struct ppc_link_hash_entry *eh, struct bfd_link_info *info) /* 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 @@ _bfd_elf_merge_symbol (bfd *abfd, 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 @@ _bfd_elf_merge_symbol (bfd *abfd, && 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 @@ _bfd_elf_merge_symbol (bfd *abfd, && 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 @@ _bfd_elf_merge_symbol (bfd *abfd, 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 @@ _bfd_elf_merge_symbol (bfd *abfd, && (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 @@ _bfd_elf_merge_symbol (bfd *abfd, && (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 @@ _bfd_elf_merge_symbol (bfd *abfd, && 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 @@ _bfd_elf_merge_symbol (bfd *abfd, 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 @@ _bfd_elf_merge_symbol (bfd *abfd, 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 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info) 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 @@ elf_link_input_bfd (struct elf_final_link_info *finfo, bfd *input_bfd) 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 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info) 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 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info) && (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 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info) 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 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info) 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 @@ bfd_elf_discard_info (bfd *output_bfd, struct bfd_link_info *info) 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 @@ _bfd_elf_section_already_linked (bfd *abfd, struct bfd_section *sec, 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 @@ _bfd_elf_section_already_linked (bfd *abfd, struct bfd_section *sec, /* 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 @@ section_allows_mips16_refs_p (asection *section) 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 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "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 @@ default_indirect_link_order (bfd *output_bfd, } } - /* 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 @@ msgstr "%B: Äã nháºp kiểu định vị lại không hợp lệ: %d" 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 @@ msgstr "không Ä‘ang ánh xạ: chÆ°a đặt biến môi trÆ°á»ng\n" 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 @@ msgstr "" 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 @@ msgstr "%B: định vị lại không được há»— trợ : ALPHA_R_GPRELHIGH" 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 @@ 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 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 @@ msgstr "" " 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 @@ msgstr "Äịa chỉ tuyệt đối vượt quá phạm vi 8 bit" 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 @@ msgstr "%s: cảnh báo : chỉ mục ký hiệu cấm %ld trong các định vá 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 @@ msgstr "Lá»–I: %B được biên dịch cho EP9312, còn %B được biên dịc 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:452 +#, c-format +msgid "Dwarf Error: unable to decompress %s section." +msgstr "Lá»—i Dwarf: không thể giải nén phần %s." -#: dwarf2.c:607 +#: dwarf2.c:462 #, 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: 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:822 +#: 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 @@ msgstr "" "\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 @@ 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: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 +#: 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: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: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:2288 elf32-frv.c:2919 +#: 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:2385 +#: 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:2424 elf32-bfin.c:2547 elf32-frv.c:3656 elf32-frv.c:3777 +#: 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:2452 elf32-bfin.c:2587 elf32-frv.c:3687 elf32-frv.c:3821 +#: 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:2505 +#: 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:2673 +#: 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:2674 +#: 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:3083 -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 -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: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 @@ msgstr "%B, phần %A: đã tạo định vị lại %s không có GOT" 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 @@ msgstr "" "%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 @@ msgstr "" "%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 @@ msgstr "các cá» riêng = 0x%lx:" 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 @@ msgstr "trình liên kết ip2k: thừa chủ dẫn trang tại 0x%08lx (Ä‘Ãch 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 @@ msgstr ": chỉ dẫn m32rx" 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 @@ msgstr "%B: Äịnh vị lại %s (%d) hiện thá»i không được há»— trợ. 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 @@ msgstr "định vị lại tÆ°Æ¡ng đối 32-bit gp xảy ra cho má»™t ký hiệ 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-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-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-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: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-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: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 @@ msgstr "%B: 0x%lx: cảnh báo : đếm sai" 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 @@ msgstr "%B: được biên dịch cho hệ thống 64-bit, còn Ä‘Ãch là 32-bi 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 @@ msgstr "" " *\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 @@ msgstr " [trôi g]" 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 @@ msgstr "" "%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 @@ msgstr "" "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 @@ msgstr "" " Ä‘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 @@ msgstr "Ký hiệu « %s » có các kiểu khác hau: %s trong %b, trÆ°á»›c là 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ẻ" - -#: 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.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 »" +#: elf64-x86-64.c:2670 +msgid "; recompile with -fPIC" +msgstr "; biên dịch lại vá»›i « -fPIC »" -#: 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" +#: 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.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" +#: 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: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 @@ msgstr "%s: lá»i định nghÄ©a TLS trong %B không tÆ°Æ¡ng ứng vá»›i lá»i Ä 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 +#: 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: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:11496 +#: 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:11987 -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: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 @@ msgstr "%B: gặp chiá»u dà i phần sai trong ihex_read_section" 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 @@ msgstr "%s: không thể đại diện phần « %s » theo oasys" 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 @@ msgstr "%B: trÆ°á»ng kÃch cỡ là số không trong phần đầu Äịnh dẠ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 @@ msgstr "" 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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "som_sizeof_headers chÆ°a được thá»±c hiện" 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 @@ msgstr "Trà n đống (%d) trong _bfd_vms_push" 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 @@ msgstr "%s: định vị lại bá»™ nạp trong phần không được nháºn ra 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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" " 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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "\tđịnh vị lại %4d bù %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:1827 pepigen.c:1827 pex64igen.c:1827 +#: peigen.c:2015 pepigen.c:2015 pex64igen.c:2015 #, c-format msgid "" "\n" @@ -3690,22 +3826,22 @@ msgstr "" "\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 @@ ENUMDOC 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_14-branch 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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ DEFS = @DEFS@ 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 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBICONV = @LTLIBICONV@ LTLIBOBJS = @LTLIBOBJS@ @@ -287,9 +289,13 @@ MSGFMT = @MSGFMT@ 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 @@ XGETTEXT = @XGETTEXT@ 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 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi @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([../libtool.m4]) 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 @@ ac_includes_default="\ # 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 @@ Optional Features: --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,134 +4736,386 @@ _ACEOF _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 -macro_version='2.1a' -macro_revision='1.2435' - - - - - - - - - - - - -ltmain="$ac_aux_dir/ltmain.sh" - -# Set options - -enable_dlopen=no - - -enable_win32_dll=no + 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 -# 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 +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 - enable_shared=yes -fi; + 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 -# 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 +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 - enable_static=yes -fi; - + 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 -# 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 +macro_version='2.2.6' +macro_revision='1.3012' -# 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; @@ -4870,6 +5123,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5091,7 +5345,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5425,7 +5677,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6105,6 +6454,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -9877,7 +10928,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10280,7 +11327,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10320,7 +11367,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10380,7 +11423,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10971,7 +12014,7 @@ if test "$LEX" = :; then 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_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -15940,6 +16991,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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 @@ AM_INIT_AUTOMAKE(binutils, ${BFD_VERSION}) AC_PROG_CC AC_GNU_SOURCE AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE LT_INIT AC_ARG_ENABLE(targets, @@ -47,7 +48,7 @@ fi 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_open_obj_file (bfd *); 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 @@ dump_def_info (FILE *f) 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 @@ flush_page (FILE *f, long *need, int page_addr, int on_page) 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 @@ gen_exp_file (void) /* 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 @@ gen_exp_file (void) 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 @@ gen_exp_file (void) { 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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ DEFS = @DEFS@ 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 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBICONV = @LTLIBICONV@ LTLIBOBJS = @LTLIBOBJS@ @@ -158,9 +160,13 @@ MSGFMT = @MSGFMT@ 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 @@ XGETTEXT = @XGETTEXT@ 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 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi 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 @@ byte_get_signed (unsigned char *field, int size) } } +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 @@ print_dwarf_vma (dwarf_vma val, unsigned byte_size) 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 @@ static int 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 @@ decode_location_expression (unsigned char * data, 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 @@ read_and_display_attr_value (unsigned long attribute, 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 @@ process_debug_info (struct dwarf_section *section, 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 @@ display_debug_pubnames (struct dwarf_section *section, 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 @@ display_debug_loc (struct dwarf_section *section, void *file) 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 @@ display_debug_aranges (struct dwarf_section *section, 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 @@ display_debug_aranges (struct dwarf_section *section, ranges += address_size; + printf (" "); print_dwarf_vma (address, address_size); print_dwarf_vma (length, address_size); putchar ('\n'); @@ -3756,30 +3797,6 @@ frame_display_row (Frame_Chunk *fc, int *need_col_headers, int *max_regs) 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 @@ display_debug_frames (struct dwarf_section *section, 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 @@ display_debug_frames (struct dwarf_section *section, 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 @@ display_debug_frames (struct dwarf_section *section, 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 @@ display_debug_frames (struct dwarf_section *section, { 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 @@ main () # 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 @@ setup_section (bfd *ibfd, sec_ptr isection, void *obfdarg) 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 @@ setup_section (bfd *ibfd, sec_ptr isection, void *obfdarg) 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 [option(s)] [addr(s)]\n" +msgstr "Användning: %s [flaggor] [adress(er)]]\n" + +#: 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 "" -"Usage: %s [-CfsHV] [-b bfdname] [--target=bfdname]\n" -" [-e executable] [--exe=executable] [--demangle[=style]]\n" -" [--basenames] [--functions] [addr addr ...]\n" +" 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 "" -"Användning: %s [-CfsHV] [-b bfd-namn] [--target=bfd-namn]\n" -" [-e programfil] [--exe=programfil] [--demangle[=stil]]\n" -" [--basenames] [--functions] [adress adress ...]\n" +" 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: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: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 +#: ar.c:260 msgid " d - delete file(s) from the archive\n" -msgstr " d - ta bort fil(er) i arkivet\n" +msgstr " d - radera fil(er) i arkivet\n" -# -#: ar.c:260 +#: 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 +#: 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" +msgstr " p - skriv ut fil(er) som pÃ¥träffas i arkivet\n" -# -#: ar.c:262 +#: 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 +#: ar.c:264 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" +msgstr " r[ab][f][u] - ersätt existerande eller infoga ny(a) fil(er) i arkivet\n" -# -#: ar.c:264 +#: ar.c:265 msgid " t - display contents of archive\n" -msgstr " t - visa innehållet i arkivet\n" +msgstr " t - visa innehÃ¥llet i arkivet\n" -# -#: ar.c:265 +#: ar.c:266 msgid " x[o] - extract file(s) from the archive\n" -msgstr " x[o] - hämta fil(er) från arkivet\n" +msgstr " x[o] - hämta fil(er) frÃ¥n arkivet\n" -# -#: ar.c:266 +#: ar.c:267 msgid " command specific modifiers:\n" -msgstr " modifierare specifika för kommandona:\n" +msgstr " modifierare specifika för kommandona:\n" -# -#: ar.c:267 +#: ar.c:268 msgid " [a] - put file(s) after [member-name]\n" msgstr " [a] - infoga fil(er) efter [medlemsnamn]\n" -# -#: ar.c:268 +#: ar.c:269 msgid " [b] - put file(s) before [member-name] (same as [i])\n" -msgstr " [b] - infoga fil(er) före [medlemsnamn] (samma som [i])\n" +msgstr " [b] - infoga fil(er) före [medlemsnamn] (samma som [i])\n" -# -#: ar.c:269 +#: ar.c:270 msgid " [N] - use instance [count] of name\n" -msgstr " [N] - använd förekomst [nummer] av namn\n" +msgstr " [N] - använd förekomst [nummer] av namn\n" -# -#: ar.c:270 +#: ar.c:271 msgid " [f] - truncate inserted file names\n" msgstr " [f] - korta av infogade filnamn\n" -# -#: ar.c:271 +#: ar.c:272 msgid " [P] - use full path names when matching\n" -msgstr " [P] - använd fullständiga sökvägen vid jämförelser\n" +msgstr " [P] - mönsterpassa mot namnets hela sökväg\n" -# -#: ar.c:272 +#: ar.c:273 msgid " [o] - preserve original dates\n" msgstr " [o] - bevara ursprungliga datum\n" -# -#: ar.c:273 +#: 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" +msgstr " [u] - ersätt bara filer som är nyare än i arkivet\n" -# -#: ar.c:274 +#: ar.c:275 msgid " generic modifiers:\n" msgstr " generella modifierare:\n" -# -#: ar.c:275 +#: ar.c:276 msgid " [c] - do not warn if the library had to be created\n" -msgstr " [c] - varna inte om biblioteket måste skapas\n" +msgstr " [c] - varna inte om biblioteket mÃ¥ste skapas\n" -# -#: ar.c:276 +#: ar.c:277 msgid " [s] - create an archive index (cf. ranlib)\n" -msgstr " [s] - skapa ett index över arkivet (jfr. ranlib)\n" +msgstr " [s] - skapa ett index över arkivet (jfr. ranlib)\n" -# -#: ar.c:277 +#: ar.c:278 msgid " [S] - do not build a symbol table\n" -msgstr " [S] - skapa inget index över arkivet\n" +msgstr " [S] - skapa inget index över arkivet\n" -# -#: ar.c:278 +#: ar.c:279 msgid " [v] - be verbose\n" -msgstr " [v] - var mångordig\n" +msgstr " [v] - beskriv utförligt\n" -# -#: ar.c:279 +#: 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 @@ msgstr "" "<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 +#: arsup.c:189 #, c-format msgid "%s: Can't open input archive %s\n" -msgstr "%s: Kan inte öppna indataarkiv %s\n" +msgstr "%s: Kan inte öppna indataarkivet %s\n" -# -#: arsup.c:189 +#: arsup.c:198 #, c-format msgid "%s: file %s is not an archive\n" -msgstr "%s: fil %s är inte ett arkiv\n" +msgstr "%s: fil %s är inte ett arkiv\n" -# -#: arsup.c:230 +#: 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 +#: ieee.c:1242 msgid "unknown BB type" -msgstr "okänd BB-typ" +msgstr "okänd BB-typ" -# -#: ieee.c:1242 +#: ieee.c:1251 msgid "stack overflow" -msgstr "överspill i stacken" +msgstr "överspill i stacken" -# -#: ieee.c:1267 +#: 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 @@ msgid "" " -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 @@ msgid "" " -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 @@ msgid "" 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 @@ msgid "" 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 @@ msgid "" 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 @@ msgid "" 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 @@ msgstr "" "\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 @@ msgid "" " --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 @@ msgid "" " --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 @@ msgid "" " --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 @@ msgid "" " -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 @@ msgid "" " --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 @@ msgstr "" "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 @@ msgstr "" "\n" "startadress 0x" -# -#: objdump.c:2052 +#: objdump.c:2071 #, c-format msgid "" "\n" @@ -2520,556 +2295,460 @@ msgstr "" "\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:2153 -msgid " Options are:\n" -msgstr " Flaggorna är:\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:2616 +msgid "Usage: readelf <option(s)> elf-file(s)\n" +msgstr "Användning: readelf <flaggor> elf-fil(er)\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: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: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" - -# -#: 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:2163 -msgid " -r or --relocs Display the relocations (if present)\n" -msgstr " -r eller --relocs Visa omlokaliseringsinformationen (om den finns)\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" +" 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: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:2180 -msgid " -H or --help Display this information\n" -msgstr " -H eller --help Visa denna hjälp\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: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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgid "" " 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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\n" "Disassembleringsutskrift av sektion %s\n" -# -#: readelf.c:5719 +#: readelf.c:6396 #, c-format msgid "" "\n" @@ -3846,8 +3402,7 @@ msgstr "" "\n" "Sektion \"%s\" har ingen data att skriva ut.\n" -# -#: readelf.c:5724 +#: readelf.c:6401 #, c-format msgid "" "\n" @@ -3856,62 +3411,52 @@ msgstr "" "\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 @@ msgstr "" "%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 @@ msgid "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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: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: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: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 @@ msgstr "" "\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 +#: 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:8203 #, c-format -msgid " (indirect string, offset: 0x%lx): " -msgstr " (indirekt sträng, offset: 0x%lx): " +msgid " (indirect string, offset: 0x%lx): %s" +msgstr " (indirekt sträng, offset: 0x%lx): %s" -# -#: readelf.c:7363 +#: readelf.c:8212 #, c-format -msgid "Unrecognised form: %d\n" -msgstr "Okänt formulär: %d\n" +msgid "Unrecognized form: %d\n" +msgstr "Okänd formtyp: %d\n" -# -#: readelf.c:7376 +#: 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" - -# -#: readelf.c:7988 -msgid "64-bit DWARF format frames are not supported yet.\n" -msgstr "64-bitars DWARF-formatmallar stöds inte än.\n" +msgstr "Sektion %s innehÃ¥ller:\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 @@ msgstr "" "\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 +#: resrc.c:873 msgid "help ID requires DIALOGEX" -msgstr "hjälp-ID kräver DIALOGEX" +msgstr "hjälp-ID kräver DIALOGEX" -# -#: resrc.c:873 +#: resrc.c:875 msgid "control data requires DIALOGEX" -msgstr "kontrolldata kräver DIALOGEX" +msgstr "kontrolldata kräver DIALOGEX" -# -#: resrc.c:1016 +#: 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" - -# -#: 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" +" 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: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" - -# -#: sysdump.c:733 -#, c-format -msgid "Usage: %s [-hV] in-file\n" -msgstr "Användning: %s [-hV] infil\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: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: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:805 +#: 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" - -# -#: windres.c:725 -msgid " --yydebug Turn on parser debugging\n" -msgstr " --yydebug Slå på tolkens felsökning\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: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 @@ byte_put_little_endian (unsigned char *field, bfd_vma value, int size) } /* Print a VMA value. */ + static int print_vma (bfd_vma vma, print_mode mode) { @@ -462,7 +463,7 @@ print_symbol (int width, const char *symbol) { if (len > width) len = width; - + printf (format_string, len, symbol); width -= len; @@ -486,7 +487,7 @@ print_symbol (int width, const char *symbol) { if (width < 6) break; - + printf ("<0x%.2x>", *c); width -= 6; @@ -1272,7 +1273,7 @@ dump_relocations (FILE *file, && 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 @@ get_machine_name (unsigned e_machine) 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 @@ process_section_headers (FILE *file) 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 @@ process_section_headers (FILE *file) 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 @@ process_section_headers (FILE *file) 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 @@ is_32bit_abs_reloc (unsigned int reloc_type) 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 @@ is_16bit_abs_reloc (unsigned int reloc_type) } } +/* 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 @@ uncompress_section_contents (unsigned char **buffer, dwarf_size_type *size) 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 @@ uncompress_section_contents (unsigned char **buffer, dwarf_size_type *size) /* 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 @@ uncompress_section_contents (unsigned char **buffer, dwarf_size_type *size) 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 @@ debug_apply_relocations (void *file, 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 @@ debug_apply_relocations (void *file, } 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 @@ display_power_gnu_attribute (unsigned char *p, int tag) 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 @@ process_archive (char *file_name, FILE *file) 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 @@ process_archive (char *file_name, FILE *file) error (_("%s: failed to read archive index symbol table\n"), file_name); ret = 1; goto out; - } + } } else { @@ -10786,7 +10847,7 @@ process_archive (char *file_name, FILE *file) { 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 @@ parse_stab_string (void *dhandle, struct stab_handle *info, int stabtype, 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 @@ parse_stab_sun_builtin_type (void *dhandle, const char **pp) } ++*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 { ([istarget "ia64-*-elf*"] 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 @@ if [is_elf_format] { 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 @@ res_init (void) 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 @@ res_init (void) 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 @@ reswr_init (void) 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. */ @@ -272,7 +272,7 @@ PACKAGE_STRING= 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 @@ case "${target}" in 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 @@ if test "x$CXXFLAGS_FOR_TARGET" = x; then 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 @@ esac # 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 @@ done + # 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,@SYSROOT_CFLAGS_FOR_TARGET@,$SYSROOT_CFLAGS_FOR_TARGET,;t t 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,@AR_FOR_BUILD@,$AR_FOR_BUILD,;t t 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 @@ case "${target}" in 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 @@ if test "x$CXXFLAGS_FOR_TARGET" = x; then 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 @@ esac # 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(AR_FOR_BUILD) 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 @@ TARG_ENV_HFILES = \ 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 @@ dep-am: DEP 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 @@ DEPTC_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_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 \ 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 @@ DEPTC_cris_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-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_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ 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 @@ DEPTC_frv_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \ 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 @@ DEPTC_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 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 @@ DEPTC_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 \ - 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 @@ DEPTC_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_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)/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_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ 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 @@ DEPTC_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \ $(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 @@ DEPTC_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)/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 @@ DEPTC_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_sh64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_tic4x_coff = $(INCDIR)/safe-ctype.h $(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)/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 @@ DEPTC_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 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_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \ 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 @@ DEPOBJ_arc_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-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 @@ DEPOBJ_cris_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-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 @@ DEPOBJ_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h \ $(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_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \ 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 @@ DEPOBJ_openrisc_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-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 @@ DEPOBJ_pdp11_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-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 @@ DEPOBJ_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 \ $(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 @@ DEP_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -174,6 +176,7 @@ LIBM = @LIBM@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -184,9 +187,13 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ XGETTEXT = @XGETTEXT@ 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 @@ TARG_ENV_HFILES = \ 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 @@ CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/configure.in $(srcdir)/configure.tgt 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 @@ DEPTC_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_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 \ 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 @@ DEPTC_cris_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-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_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ 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 @@ DEPTC_frv_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \ 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 @@ DEPTC_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 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 @@ DEPTC_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 \ - 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 @@ DEPTC_ip2k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.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 \ @@ -993,9 +1005,9 @@ DEPTC_m32c_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_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)/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_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ 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 @@ DEPTC_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \ $(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 @@ DEPTC_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)/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 @@ DEPTC_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.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 \ @@ -1205,8 +1210,8 @@ DEPTC_sh64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(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 @@ DEPTC_tic4x_coff = $(INCDIR)/safe-ctype.h $(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)/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 @@ DEPTC_xc16x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.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 \ @@ -1294,9 +1297,8 @@ DEPTC_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 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_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \ 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 @@ DEPOBJ_arc_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-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_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.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 \ @@ -1380,69 +1382,69 @@ DEPOBJ_cris_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-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 @@ DEPOBJ_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h \ $(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_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.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 \ @@ -1561,39 +1562,39 @@ DEPOBJ_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \ 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 @@ DEPOBJ_openrisc_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-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 @@ DEPOBJ_pdp11_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-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_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.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 \ @@ -1701,24 +1702,23 @@ DEPOBJ_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.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 \ @@ -1728,36 +1728,35 @@ DEPOBJ_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 \ $(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 @@ DEP_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.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 \ @@ -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([../libtool.m4]) m4_include([../ltoptions.m4]) m4_include([../ltsugar.m4]) m4_include([../ltversion.m4]) +m4_include([../lt~obsolete.m4]) m4_include([acinclude.m4]) @@ -1024,7 +1024,8 @@ do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen) #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 @@ do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen) 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 @@ asm_1: 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 @@ note_reloc2 (INSTR_T code, const char *symbol, int reloc, int value, int pcrel) 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 @@ int count_insns; static void * allocate (int n) { - return (void *) obstack_alloc (&mempool, n); + return obstack_alloc (&mempool, n); } Expr_Node * @@ -1452,14 +1452,14 @@ bfin_gen_ldstidxi (REG_T ptr, REG_T reg, int W, int sz, int Z, Expr_Node * poffs { 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_loc (int); 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 @@ static bfd_boolean symbols_have_leading_underscore /* 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 @@ md_assemble (char *str) /* 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_assemble (char *str) 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 @@ cris_process_instruction (char *insn_text, struct cris_instruction *out_insnp, 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 @@ cris_process_instruction (char *insn_text, struct cris_instruction *out_insnp, 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 @@ cris_process_instruction (char *insn_text, struct cris_instruction *out_insnp, 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 @@ cris_process_instruction (char *insn_text, struct cris_instruction *out_insnp, } /* 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 @@ get_autoinc_prefix_or_indir_op (char **cPP, struct cris_prefix *prefixp, /* 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 @@ get_autoinc_prefix_or_indir_op (char **cPP, struct cris_prefix *prefixp, /* 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 @@ get_autoinc_prefix_or_indir_op (char **cPP, struct cris_prefix *prefixp, 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 @@ get_autoinc_prefix_or_indir_op (char **cPP, struct cris_prefix *prefixp, /* 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 @@ get_3op_or_dip_prefix_op (char **cPP, struct cris_prefix *prefixp) | 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 @@ gen_cond_branch_32 (char *opcodep, char *writep, fragS *fragP, 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 @@ cris_get_pic_reloc_size (bfd_reloc_code_real_type reloc) 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 @@ cris_get_pic_suffix (char **cPP, bfd_reloc_code_real_type *relocp, 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 @@ cris_get_pic_suffix (char **cPP, bfd_reloc_code_real_type *relocp, 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 @@ cris_get_pic_suffix (char **cPP, bfd_reloc_code_real_type *relocp, 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 @@ cris_number_to_imm (char *bufp, long val, int n, fixS *fixP, segT seg) 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 @@ tc_gen_reloc (asection *section ATTRIBUTE_UNUSED, fixS *fixP) 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 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) 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 @@ extern int frv_force_relocation (struct fix *); /* 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 @@ hppa_regname_to_dw2regnum (char *regname) { 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 @@ int hppa_fix_adjustable (struct fix *); 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 @@ typedef struct } 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 i386_cpu_flags cpu_arch_flags = CPU_UNKNOWN_FLAGS; 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 @@ i386_align_code (fragS *fragP, int count) { 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 @@ i386_align_code (fragS *fragP, int count) 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 @@ i386_align_code (fragS *fragP, int count) } 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 @@ i386_align_code (fragS *fragP, int count) 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 @@ i386_align_code (fragS *fragP, int count) 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 @@ i386_elf_section_type (const char *str, size_t len) 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 @@ void i386_print_statistics (FILE *); #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 @@ extern void tc_x86_frame_initial_instructions (void); #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 @@ md_begin (void) 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 @@ swap_mri_condition (int cc) 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 @@ md_begin (void) 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 @@ static const struct mips_cpu_info mips_cpu_info_table[] = { "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 @@ static const struct mips_cpu_info mips_cpu_info_table[] = { "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 @@ md_assemble (char *str) 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 @@ mmix_md_end (void) { fragS *fragP; symbolS *mainsym; + asection *regsec; int i; /* The first frag of GREG:s going into the register contents section. */ @@ -3512,9 +3516,9 @@ mmix_md_end (void) 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 @@ mmix_md_end (void) 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 @@ extern void mmix_md_do_align (int, char *, int, int); /* 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 @@ void mn10300_cons_fix_new (fragS *, int, int, expressionS *); /* 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_fix_new (int size, /* Length of bitfield. */ { bit_fixS *bit_fixP; - bit_fixP = (bit_fixS *) obstack_alloc (¬es, sizeof (bit_fixS)); + bit_fixP = obstack_alloc (¬es, 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 @@ ppc_setup_opcodes (void) && ((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 @@ extern int sh_force_relocation (struct fix *); || (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 @@ extern bfd_boolean sh_fix_adjustable (struct fix *); || (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 @@ extern int sh64_target_mach (void); /* 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 @@ tic4x_globl (int ignore ATTRIBUTE_UNUSED) *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 @@ init_op_placement_info_table (void) { 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 @@ extern char *xtensa_section_rename (char *); #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 @@ emit_ldreg (int dest, expressionS * src) && (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 @@ ac_includes_default="\ # 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 @@ Optional Features: --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,135 +4733,387 @@ _ACEOF _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 () +{ -macro_version='2.1a' -macro_revision='1.2435' - - - - - - - - - - - - -ltmain="$ac_aux_dir/ltmain.sh" - -# Set options - -enable_dlopen=no - - -enable_win32_dll=no - + ; + 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 -# 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 +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 - enable_shared=yes -fi; + 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 -# 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 +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 - enable_static=yes -fi; + 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 -# 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 +macro_version='2.2.6' +macro_revision='1.3012' -# 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; @@ -4868,6 +5121,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5089,7 +5343,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5423,7 +5675,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6103,6 +6452,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -9875,7 +10926,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10278,7 +11325,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10318,7 +11365,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10378,7 +11421,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -11923,7 +12966,7 @@ if test "$LEX" = :; then 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_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -14809,6 +15860,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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 @@ AM_INIT_AUTOMAKE(gas, ${BFD_VERSION}) AC_PROG_CC AC_GNU_SOURCE AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE LT_INIT @@ -603,7 +604,7 @@ AC_DEFINE_UNQUOTED(TARGET_OS, "${target_os}", [Target OS.]) 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 @@ case ${generic_target} in 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 @@ case ${generic_target} in 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 @@ case ${generic_target} in 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 @@ case ${generic_target} in *-*-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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -129,6 +131,7 @@ LIBM = @LIBM@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -139,9 +142,13 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ XGETTEXT = @XGETTEXT@ 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 @@ scope for the entire file, or until they are redefined by another occurrence of 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 @@ The special symbol @samp{.} refers to the current address that @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 @@ Some machine configurations provide additional directives. * 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 @@ Some machine configurations provide additional directives. * 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 @@ Some machine configurations provide additional directives. * 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 @@ Some machine configurations provide additional directives. @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 @@ GAS also provides @code{.balign} and @code{.p2align} directives, 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 @@ undefined. @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 @@ Allows the user to add arbitrary bytes to the unwind info. One 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. - -The @var{options} are a sequence of the following tokens in any order: - -@table @code -@item basic_block -This option will set the @code{basic_block} register in the -@code{.debug_line} state machine to @code{true}. - -@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. +@node Comm +@section @code{.comm @var{symbol} , @var{length} } -@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. +@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. -@end table +@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 -@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 @@ than 500, @command{@value{AS}} will print an error message. The message will 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 @@ assemblers, but ignores it. @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 @@ statements on the current line (after a statement separator character) are 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 have different sizes. 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 @@ output format. @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 @@ macro syntax'' with @samp{--alternate} or @code{.altmacro}.} @xref{Altmacro,,@code{.altmacro}}. @end ftable -@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!}. +@node MRI +@section @code{.mri @var{val}} -@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 @@ the endianness of the processor). If it skips 1 or 3 bytes, the fill value is 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 @@ In terms of the section stack, this directive swaps the current section with 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 @@ symbols. @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 @@ This directive emits @var{size} bytes, each of value @var{fill}. Both @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 @@ the subtrahend will be resolved and @code{fx_subsy} set to @code{NULL} for @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_insn_data struct cfi_escape_data *next; expressionS exp; } *esc; + + struct { + unsigned reg, encoding; + expressionS exp; + } ea; } u; }; @@ -376,6 +385,7 @@ static void dot_cfi_startproc (int); 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 @@ static void dot_cfi_lsda (int); #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 @@ const pseudo_typeS cfi_pseudo_table[] = { "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 @@ dot_cfi_personality (int ignored ATTRIBUTE_UNUSED) } 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 @@ dot_cfi_lsda (int ignored ATTRIBUTE_UNUSED) } 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 @@ dot_cfi_lsda (int ignored ATTRIBUTE_UNUSED) } 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 @@ output_cfi_insn (struct cfi_insn_data *insn) 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 @@ select_cie_for_fde (struct fde_entry *fde, struct cfi_insn_data **pfirst) break; case CFI_escape: + case CFI_val_encoded_addr: /* Don't bother matching these for now. */ goto fail; @@ -1307,7 +1443,8 @@ select_cie_for_fde (struct fde_entry *fde, struct cfi_insn_data **pfirst) && (!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 @@ select_cie_for_fde (struct fde_entry *fde, struct cfi_insn_data **pfirst) 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 @@ cfi_finish (void) 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 @@ frag_alloc (struct obstack *ob) (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; @@ -237,7 +237,7 @@ hash_insert (struct hash_control *table, const char *key, void *value) ++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 @@ hash_jam (struct hash_control *table, const char *key, void *value) ++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 @@ buffer_line (file_info_type *file, char *line, unsigned int size) 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 @@ buffer_line (file_info_type *file, char *line, unsigned int size) /* 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 @@ buffer_line (file_info_type *file, char *line, unsigned int size) 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 @@ print_options (char ** argv) 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" @@ -220,9 +220,9 @@ static void s_reloc (int); 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 @@ pobegin (void) #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 @@ read_a_source_file (char *name) /* 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 @@ s_irp (int irpc) 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 @@ s_lsym (int ignore ATTRIBUTE_UNUSED) 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 @@ get_line_sb (sb *line) 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 @@ get_line_sb (sb *line) 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 @@ s_macro (int ignore ATTRIBUTE_UNUSED) 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 @@ do_repeat (int count, const char *start, const char *end) 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 @@ pseudo_set (symbolS *symbolP) 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 @@ input_scrub_insert_file (char *path) #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 @@ _find_end_of_line (char *s, int mri_string, int insn ATTRIBUTE_UNUSED) #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 @@ _find_end_of_line (char *s, int mri_string, int insn ATTRIBUTE_UNUSED) 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 @@ symbol_create (const char *name, /* It is copied, the caller can destroy/modify. preserved_copy_of_name = save_symbol_name (name); - symbolP = (symbolS *) obstack_alloc (¬es, sizeof (symbolS)); + symbolP = obstack_alloc (¬es, 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 @@ local_symbol_make (const char *name, segT section, valueT value, fragS *frag) name_copy = save_symbol_name (name); - ret = (struct local_symbol *) obstack_alloc (¬es, sizeof *ret); + ret = obstack_alloc (¬es, sizeof *ret); ret->lsy_marker = NULL; ret->lsy_name = name_copy; ret->lsy_section = section; @@ -2191,12 +2191,14 @@ S_SET_EXTERNAL (symbolS *s) _("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 @@ case $target_triplet in { } # .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 @@ if { ([istarget "*-*-*elf*"] 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 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] 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 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t 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 @@ Disassembly of section .text: [ ]*[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 @@ _start: 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 @@ _start: # 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 @@ Disassembly of section .text: [ ]*[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 @@ _start: 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 @@ _start: # 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 @@ Disassembly of section \.text: 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 @@ start: 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 @@ if { [istarget powerpc*-*-*] } then { 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 @@ Disassembly of section .text: .*: 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 @@ Disassembly of section .text: .*: 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 @@ Disassembly of section .text: .*: 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 @@ Disassembly of section .text: .*: 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 @@ Disassembly of section .text: .*: 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 @@ foo: 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 @@ foo: 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 @@ foo: 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 @@ Disassembly of section .text: .*: 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 @@ foo: 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 @@ Disassembly of section .text: .*: 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 @@ foo: 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 @@ Disassembly of section .text: .*: 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 @@ Disassembly of section .text: .*: 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 @@ foo: 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 @@ if [istarget z80-*-*] then { 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 @@ fixup_segment (fixS *fixP, segT this_segment) #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 @@ fixup_segment (fixS *fixP, segT this_segment) 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 @@ install_reloc (asection *sec, arelent *reloc, fragS *fragp, && (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 @@ INCLUDES = \ LIBIBERTY = ../libiberty/libiberty.a +if PLUGINS +LIBDL = -ldl +endif + if THREADS THREADSLIB = -lpthread endif @@ -53,6 +57,7 @@ CCFILES = \ options.cc \ output.cc \ parameters.cc \ + plugin.cc \ readsyms.cc \ reduced_debug_output.cc \ reloc.cc \ @@ -90,6 +95,7 @@ HFILES = \ options.h \ output.h \ parameters.h \ + plugin.h \ readsyms.h \ reduced_debug_output.h \ reloc.h \ @@ -122,7 +128,8 @@ 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) 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 @@ am__objects_1 = archive.$(OBJEXT) binary.$(OBJEXT) common.$(OBJEXT) \ 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_1 = 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_STRING = @PACKAGE_STRING@ 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 @@ INCLUDES = \ @INCINTL@ LIBIBERTY = ../libiberty/libiberty.a +@PLUGINS_TRUE@LIBDL = -ldl @THREADS_TRUE@THREADSLIB = -lpthread AM_YFLAGS = -d noinst_LIBRARIES = libgold.a @@ -336,6 +339,7 @@ CCFILES = \ options.cc \ output.cc \ parameters.cc \ + plugin.cc \ readsyms.cc \ reduced_debug_output.cc \ reloc.cc \ @@ -373,6 +377,7 @@ HFILES = \ options.h \ output.h \ parameters.h \ + plugin.h \ readsyms.h \ reduced_debug_output.h \ reloc.h \ @@ -403,7 +408,9 @@ ALL_TARGETOBJS = \ 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 @@ distclean-compile: @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 @@ Archive::setup(Input_objects* input_objects) && 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 @@ Archive::end() 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 @@ Archive::get_file_and_offset(off_t off, Input_objects* input_objects, // 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 @@ Archive::get_file_and_offset(off_t off, Input_objects* input_objects, 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 @@ Archive::get_file_and_offset(off_t off, Input_objects* input_objects, return false; *memoff = 0; + *memsize = (*input_file)->file().filesize(); return true; } @@ -515,11 +520,26 @@ Archive::get_elf_object_for_member(off_t off, Input_objects* input_objects) 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 @@ Archive::include_member(Symbol_table* symtab, Layout* layout, 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 @@ class Archive 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 @@ ac_includes_default="\ # 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 @@ Optional Features: --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 @@ else 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 @@ echo "$as_me: error: conditional \"THREADS\" was never defined. 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__tar@,$am__tar,;t t 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 @@ if test "$threads" = "yes"; then 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 @@ Descriptors::open(int descriptor, const char* name, int flags, int mode) 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 @@ Descriptors::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. +// 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 @@ class Descriptors 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 @@ class Descriptors 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 @@ inline void 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 @@ File_read::release() 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 @@ File_read::make_view(off_t start, section_size_type size, { 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 @@ class File_read 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 @@ class File_read 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 @@ queue_initial_tasks(const General_options& options, 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 @@ queue_middle_tasks(const General_options& options, 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 @@ class Target_i386 : public Sized_target<32, false> // 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 @@ class Target_i386 : public Sized_target<32, false> 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 @@ Target_i386::make_plt_entry(Symbol_table* symtab, Layout* layout, Symbol* gsym) 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 @@ Target_i386::define_tls_base_symbol(Symbol_table* symtab, Layout* layout) 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 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, } 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 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, 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 @@ main(int argc, char** argv) 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 @@ Mapfile::print_input_section(Relobj* relobj, unsigned int shndx) { 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 @@ Sized_relobj<size, big_endian>::do_layout(Symbol_table* symtab, { // 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 @@ Sized_relobj<size, big_endian>::do_layout(Symbol_table* symtab, 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 @@ Sized_relobj<size, big_endian>::do_layout(Symbol_table* symtab, if (data_section == NULL) { out_sections[i] = NULL; - out_section_offsets[i] = -1U; + out_section_offsets[i] = invalid_address; continue; } @@ -1014,7 +1014,7 @@ Sized_relobj<size, big_endian>::do_layout(Symbol_table* symtab, 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 @@ Sized_relobj<size, big_endian>::do_layout(Symbol_table* symtab, &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 @@ Sized_relobj<size, big_endian>::do_finalize_local_symbols(unsigned int index, // 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 @@ Sized_relobj<size, big_endian>::map_to_kept_section( *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 Layout; 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 @@ class Object 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 @@ class Object 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 @@ class Sized_relobj : public Relobj 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 @@ class Sized_relobj : public Relobj // 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 @@ class Sized_relobj : public Relobj // 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 @@ General_options::parse_library(const char*, const char* arg, 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 @@ namespace gold General_options::General_options() : execstack_status_(General_options::EXECSTACK_FROM_INPUT), static_(false), - do_demangle_(false) + do_demangle_(false), plugins_() { } @@ -632,6 +642,16 @@ General_options::add_sysroot() 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 @@ General_options::finalize() 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 Search_directory; 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 @@ class General_options 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 @@ class General_options 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 @@ class General_options 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 @@ class General_options 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 @@ class General_options 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_reloc<elfcpp::SHT_REL, dynamic, size, big_endian>:: 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_reloc<elfcpp::SHT_REL, dynamic, size, big_endian>::get_address() const 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 @@ Output_section::output_address(const Relobj* object, unsigned int shndx, 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 @@ class Output_reloc<elfcpp::SHT_REL, dynamic, size, big_endian> 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 @@ class Output_section : public Output_data // 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*>(¶meters->target()); + else + target = const_cast<Target*>(¶meters->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 @@ class Target_powerpc : public Sized_target<size, big_endian> // 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 @@ Read_symbols::do_read_symbols(Workqueue* workqueue) 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 @@ Read_symbols::do_read_symbols(Workqueue* workqueue) } } - 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, // 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, { 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, } 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 @@ Sized_relobj<size, big_endian>::write_sections(const unsigned char* pshdrs, 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 @@ Sized_relobj<size, big_endian>::relocate_sections( 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 @@ Sized_relobj<size, big_endian>::relocate_sections( 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 @@ Symbol_table::resolve(Sized_symbol<size>* to, 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 @@ class Target_sparc : public Sized_target<size, big_endian> 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 @@ Symbol::init_fields(const char* name, const char* version, 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 @@ Symbol::init_base_object(const char* name, const char* version, Object* object, 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 @@ Symbol::init_base_output_data(const char* name, const char* version, 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 @@ Symbol::init_base_output_segment(const char* name, const char* version, 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 @@ Symbol::init_base_constant(const char* name, const char* version, 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 @@ Symbol::init_base_undefined(const char* name, const char* version, 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 @@ Symbol::output_section() const 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 @@ Symbol_table::add_from_relobj( } } +// 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 @@ Symbol_table::sized_finalize_symbol(Symbol* unsized_sym) 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 @@ Symbol_table::sized_finalize_symbol(Symbol* unsized_sym) } 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 @@ Symbol_table::sized_write_globals(const Input_objects* input_objects, 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 @@ Symbol_table::add_from_relobj<64, true>( #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 Object; 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 @@ class Symbol 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 @@ class Symbol 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 @@ class Symbol_table 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 @@ relocate_section( 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 @@ relocate_for_relocatable( 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 @@ relocate_for_relocatable( 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 @@ relocate_for_relocatable( 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 @@ class Target // 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 @@ class Target // 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 @@ AUTOMAKE_OPTIONS = # 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_READELF = $(top_builddir)/../binutils/readelf 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 @@ libgoldtest_a_SOURCES = test.cc testmain.cc testfile.cc 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_file2_pic.o: tls_test_file2.cc 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: basic_test.o gcctestdir/ld $(srcdir)/script_test_4.t 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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ $(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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ @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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ @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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ @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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ @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 @@ check_PROGRAMS = object_unittest$(EXEEXT) binary_unittest$(EXEEXT) \ @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 @@ libgoldtest_a_OBJECTS = $(am_libgoldtest_a_OBJECTS) @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_OBJECTS = $(am_binary_unittest_OBJECTS) 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_OBJECTS = \ 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_OBJECTS = \ 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_OBJECTS = many_sections_r_test.$(OBJEXT) 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_OBJECTS = $(am_object_unittest_OBJECTS) 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_OBJECTS = script_test_3.$(OBJEXT) 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_OBJECTS = two_file_strip_test.$(OBJEXT) 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_OBJECTS = weak_plt.$(OBJEXT) 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 @@ SOURCES = $(libgoldtest_a_SOURCES) basic_pic_test.c \ 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 @@ DIST_SOURCES = $(libgoldtest_a_SOURCES) basic_pic_test.c \ 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_STRING = @PACKAGE_STRING@ 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 @@ AUTOMAKE_OPTIONS = # 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_READELF = $(top_builddir)/../binutils/readelf 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 @@ TEST_STRIP = $(top_builddir)/../binutils/strip-new # .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 @@ DEPENDENCIES = \ 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 @@ binary_unittest_SOURCES = binary_unittest.cc @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 @@ many_sections_test$(EXEEXT): $(many_sections_test_OBJECTS) $(many_sections_test_ 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 @@ script_test_2$(EXEEXT): $(script_test_2_OBJECTS) $(script_test_2_DEPENDENCIES) @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 @@ distclean-compile: @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 @@ distclean-compile: @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 @@ uninstall-am: uninstall-info-am @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 @@ uninstall-am: uninstall-info-am @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 @@ class Target_x86_64 : public Sized_target<64, false> // 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 @@ class Target_x86_64 : public Sized_target<64, false> 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 @@ Target_x86_64::make_plt_entry(Symbol_table* symtab, Layout* layout, 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 @@ Target_x86_64::define_tls_base_symbol(Symbol_table* symtab, Layout* layout) 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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/warning.m4 \ $(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 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -164,6 +165,7 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -174,8 +176,12 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ WARN_CFLAGS = @WARN_CFLAGS@ 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([../libtool.m4]) 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 @@ ac_includes_default="\ # 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 @@ Optional Features: --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 _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,134 +5189,22 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - -macro_version='2.1a' -macro_revision='1.2435' - - - - - - - - - - - - -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; - +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.2.6' +macro_revision='1.3012' -# 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; @@ -4959,6 +5212,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5180,7 +5434,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5514,7 +5766,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6194,6 +6543,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -9966,7 +11017,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10369,7 +11416,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10409,7 +11456,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10469,7 +11512,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -12162,6 +13205,7 @@ lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -12273,6 +13324,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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_CONFIG_HEADERS([gconfig.h:gconfig.in]) 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 @@ msgstr "" 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 @@ msgstr "••• Táºp tin %s:\n" #, 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 @@ enum demangle_component_type 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 @@ START_RELOC_NUMBERS (elf_cris_reloc_type) 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 @@ enum dwarf_location_atom /* 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 @@ enum 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 @@ __extension__ \ > (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 @@ ldmisc.o: ldmisc.c sysdep.h config.h $(INCDIR)/fopen-same.h \ $(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 @@ pe-dll.o: pe-dll.c sysdep.h config.h $(INCDIR)/fopen-same.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 + $(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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -195,6 +196,7 @@ LIBTOOL = @LIBTOOL@ # 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 @@ MSGFMT = @MSGFMT@ 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 @@ XGETTEXT = @XGETTEXT@ 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 @@ ldmisc.o: ldmisc.c sysdep.h config.h $(INCDIR)/fopen-same.h \ $(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 @@ pe-dll.o: pe-dll.c sysdep.h config.h $(INCDIR)/fopen-same.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 + $(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([../libtool.m4]) 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 @@ ac_includes_default="\ # 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 @@ Optional Features: 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 _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,134 +5389,22 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - -macro_version='2.1a' -macro_revision='1.2435' - - - - - - - - - - - - -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; - +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.2.6' +macro_revision='1.3012' -# 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; @@ -5159,6 +5412,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5380,7 +5634,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5714,7 +5966,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6394,6 +6743,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -10166,7 +11217,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10569,7 +11616,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10609,7 +11656,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10669,7 +11712,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10841,7 +11884,7 @@ CC="$lt_save_CC" -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_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -14202,6 +15253,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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 @@ fi 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 @@ EXTRA_EM_FILE=genelf 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 @@ TEMPLATE_NAME=elf32 # 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 @@ EXTRA_EM_FILE=genelf 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 @@ SCRIPT_NAME=elf 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 @@ SCRIPT_NAME=elf 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 @@ TEMPLATE_NAME=elf32 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 @@ SCRIPT_NAME=elf 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_SHLIB_SCRIPT=yes 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 @@ SCRIPT_NAME=elf 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 @@ ELFSIZE=64 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 @@ GENERATE_SHLIB_SCRIPT=yes 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_SHLIB_SCRIPT=yes 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 @@ else .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 @@ SCRIPT_NAME=elf 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 @@ SCRIPT_NAME=elf 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 @@ SCRIPT_NAME=elf 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 @@ SCRIPT_NAME=elf 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 @@ TEMPLATE_NAME=elf32 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 @@ gld${EMULATION_NAME}_before_parse (void) 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 @@ gld${EMULATION_NAME}_finish (void) 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_LONGOPTS=' 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 @@ gld_${EMULATION_NAME}_before_allocation (void) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ fragment <<EOF 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 @@ output_rel_find (asection *sec, int isdyn) /* 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) } } - 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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 @@ gld${EMULATION_NAME}_place_orphan (asection *s) 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}_finish (void) 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 @@ fragment <<EOF 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 @@ mmo_place_orphan (asection *s) 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 @@ mmo_place_orphan (asection *s) 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 @@ mmo_place_orphan (asection *s) /* 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 @@ mmo_place_orphan (asection *s) 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 @@ pe_find_data_imports (void) { 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 @@ gld_${EMULATION_NAME}_after_open (void) 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 @@ gld_${EMULATION_NAME}_before_allocation (void) (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 @@ gld_${EMULATION_NAME}_finish (void) 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 @@ gld_${EMULATION_NAME}_place_orphan (asection *s) ->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 @@ gld_${EMULATION_NAME}_place_orphan (asection *s) } } - 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 @@ pep_find_data_imports (void) { 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 @@ gld_${EMULATION_NAME}_after_open (void) 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 @@ gld_${EMULATION_NAME}_finish (void) 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 @@ gld_${EMULATION_NAME}_place_orphan (asection *s) ->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 @@ gld_${EMULATION_NAME}_place_orphan (asection *s) } } - 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 @@ spu_place_special_section (asection *s, asection *o, const char *output_name) 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 @@ gld${EMULATION_NAME}_before_allocation (void) /* 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 @@ ldemul_open_dynamic_archive (const char *arch, search_dirs_type *search, 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 @@ extern void ldemul_set_symbols (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 @@ typedef struct ld_emulation_xfer_struct { /* 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. */ @@ -282,6 +282,7 @@ fold_unary (etree_type *tree) 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 @@ fold_binary (etree_type *tree) expld.result.section = expld.section; break; } + return; } - else if (expld.result.valid_p) - { - etree_value_type lhs = expld.result; - exp_fold_tree_1 (tree->binary.rhs); - 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) + { + /* 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, ||); - - case MAX_K: - if (lhs.value > expld.result.value) - expld.result.value = lhs.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, ||); + + 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)) - { - bfd_vma maxpage = lhs.value; - bfd_vma commonpage = expld.result.value; + 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) + 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; + else if (commonpage < maxpage) + expld.result.value += ((expld.dot + commonpage - 1) + & (maxpage - commonpage)); + } + else + expld.result.valid_p = FALSE; + break; - 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; + 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_align_seen) - expld.dataseg.phase = exp_dataseg_relro_seen; + 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.valid_p = FALSE; - break; + expld.result.value = lhs.value; - default: - FAIL (); + 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 @@ input_statement_is_archive_path (const char *file_spec, char *sep, return match; } -bfd_boolean +static bfd_boolean unique_section_p (const asection *sec) { struct unique_sections *unam; @@ -1278,19 +1278,25 @@ lang_output_section_statement_lookup (const char *const name, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ lang_output_section_find_by_flags (const asection *sec, 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 @@ insert_os_after (lang_output_section_statement_type *after) 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 @@ lang_insert_orphan (asection *s, 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 @@ init_os (lang_output_section_statement_type *s, asection *isec, 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 @@ lang_size_sections_1 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 @@ lang_place_orphans (void) default_common_section); } } - else if (ldemul_place_orphan (s)) - ; else { - lang_output_section_statement_type *os; + const char *name = s->name; + int constraint = 0; + + if (config.unique_orphan_sections || unique_section_p (s)) + constraint = SPECIAL; - os = lang_output_section_statement_lookup (s->name, 0, TRUE); - lang_add_section (&os->children, s, os); + 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 @@ extern lang_output_section_statement_type *lang_output_section_find_by_flags (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_register_vers_node 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 @@ make_import_fixup_entry (const char *name, 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" +"X-Generator: LocFactoryEditor 1.7b3\n" -#: emultempl/armcoff.em:72 +#: emultempl/armcoff.em:73 #, 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" +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:73 +#: 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" -"\t\t(_mục nháºp thumb_)\n" +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:121 +#: 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 @@ msgstr "" " --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 @@ msgstr "" " --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 @@ msgstr "" "\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 @@ msgstr "" " --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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" "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 @@ msgstr "%B%F: không thể Ä‘á»c các sá»± định vị lại : %E\n" #. 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 @@ msgstr "Mô phá»ng đã há»— trợ : " 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 @@ msgstr "" "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 @@ msgstr "" "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 @@ msgstr "" "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 @@ msgstr "" "\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 @@ msgstr "" "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 @@ msgstr "" "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 @@ msgstr "không có ký hiệu" 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: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:478 +#: 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 @@ msgstr "%P%F: tùy chá»n « --unresolved-symbols » sai: %s\n" #. an error message here. We cannot just make this a warning, #. increment optind, and continue because getopt is too confused #. and will seg-fault the next time around. -#: lexsup.c: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 @@ msgstr "Hãy thông báo lá»—i cho %s\n" 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 @@ SECTIONS .rela.plt ${RELOCATING-0} : { *(.rela.plt) } /* Internal text space or external memory. */ - .text : + .text ${RELOCATING-0} : { *(.vectors) KEEP(*(.vectors)) @@ -168,7 +168,7 @@ SECTIONS ${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 @@ SECTIONS ${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 @@ SECTIONS ${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 @@ SECTIONS .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 @@ eval $COMBRELOCCAT <<EOF .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 @@ cat <<EOF ${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 @@ The section .eh_frame contains: 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 @@ The section .eh_frame contains: 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 @@ The section .eh_frame contains: 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 @@ The section .eh_frame contains: 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 @@ The section .eh_frame contains: 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 @@ set build_tests { {"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 @@ set run_tests { {"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 @@ main (void) { 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 @@ Section Headers: +\[[ 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 @@ Section Headers: +\[[ 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 @@ Relocation section '\.rel\.dyn' .*: 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 @@ Relocation section '\.rel\.dyn' .*: 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 @@ Relocation section '\.rel\.dyn' .*: 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 @@ Relocation section '\.rel\.dyn' .*: 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 @@ OFFSET TYPE VALUE # 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-4-41" 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 @@ Relocation section '\.rela\.dyn' at offset .* contains 5 entries: 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 @@ shlib_overriddencall2 () int main () { - int (*p) (); - printf ("mainvar == %d\n", mainvar); printf ("overriddenvar == %d\n", overriddenvar); printf ("shlibvar1 == %d\n", shlibvar1); @@ -62,21 +60,29 @@ main () 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 @@ proc simple_diff { file_1 file_2 } { # # 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 @@ proc check_gc_sections_available { } { } 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 @@ Thu Oct 8 23:42:08 1998 Jeffrey A Law (law@cygnus.com) * 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 @@ AR_FLAGS = rc CC = @CC@ CFLAGS = @CFLAGS@ -LIBCFLAGS = $(CFLAGS) +CPPFLAGS = @CPPFLAGS@ RANLIB = @RANLIB@ MAKEINFO = @MAKEINFO@ PERL = @PERL@ @@ -79,8 +79,8 @@ FLAGS_TO_PASS = \ "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 @@ installcheck: installcheck-subdir 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 @@ install: install_to_$(INSTALL_DEST) install-subdir # 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 @@ Optional Features: 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_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 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_compiler_gnu=$ac_cv_c_compiler_gnu 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 @@ fi 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_info 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 @@ d_dump (struct demangle_component *dc, int indent) 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 @@ d_make_comp (struct d_info *di, enum demangle_component_type type, 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 @@ d_make_comp (struct d_info *di, enum demangle_component_type type, 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 @@ const struct demangle_operator_info cplus_demangle_operators[] = { "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 @@ cplus_demangle_builtin_types[D_BUILTIN_TYPE_COUNT] = /* 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 (struct d_info *di) 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 @@ d_template_args (struct d_info *di) 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 @@ d_template_arg (struct d_info *di) 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_expression (struct d_info *di) 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 @@ d_expression (struct d_info *di) 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 @@ d_expression (struct d_info *di) 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 @@ cplus_demangle_print (int options, const struct demangle_component *dc, 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 @@ d_print_comp (struct d_print_info *dpi, 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 @@ d_print_comp (struct d_print_info *dpi, 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 @@ d_print_comp (struct d_print_info *dpi, 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_comp (struct d_print_info *dpi, 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_print_comp (struct d_print_info *dpi, && 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_comp (struct d_print_info *dpi, 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_print_comp (struct d_print_info *dpi, 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 @@ struct d_info 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 @@ f<X> # --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 @@ int* const volatile restrict _far # --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 @@ hairyfunc5 # 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 @@ f # 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 @@ myspace::foo()::localstruct::f(myspace::foo()::otherlocalstruct) --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 @@ obtain memory. */ -#include <sys/types.h> #ifdef HAVE_CONFIG_H #include "config.h" #endif +#include <sys/types.h> #ifdef HAVE_STRING_H #include <string.h> #else @@ -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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ m4_defun([LT_PREREQ], [$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 @@ dnl unless we require an AC_DEFUNed macro: 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 @@ _LT_SETUP # Only expand once: m4_define([LT_INIT]) -])# _LT_INIT +])# LT_INIT # Old names: AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) @@ -141,9 +155,7 @@ test -z "$LN_S" && LN_S="ln -s" _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 @@ m4_define([lt_decl_dquote_varnames], # 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_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl 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 @@ do 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 @@ _LT_CONFIG_SAVE_COMMANDS([ #! $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 @@ ac_outfile=conftest.$ac_objext 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_DECL([], [ECHO], [1], # _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 @@ sparc*-*solaris*) *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 @@ _LT_DECL([], [RANLIB], [1], [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 @@ _LT_TAGDECL([], [old_archive_cmds], [2], # ---------------------------------------------------------------- # 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 @@ AC_CACHE_CHECK([$1], [$2], $2=yes fi fi - $RM conftest* + $RM -r conftest* LDFLAGS="$save_LDFLAGS" ]) @@ -1378,7 +1516,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl 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 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -1565,7 +1699,7 @@ int main () 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -1628,7 +1762,7 @@ else 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 @@ else [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 @@ dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # 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 @@ m4_defun([_LT_SYS_DYNAMIC_LINKER], [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 @@ BEGIN {RS=" "; FS="/|\n";} { 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 @@ aix[[4-9]]*) ;; 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 @@ bsdi[[45]]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ darwin* | rhapsody*) 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 @@ linux* | k*bsd*-gnu) 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 @@ linux* | k*bsd*-gnu) # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ _LT_DECL([], [reload_cmds], [2])dnl # -- 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 @@ mingw* | pw32*) 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 @@ _LT_DECL([], [file_magic_cmd], [1], # 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 @@ _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], 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 @@ case $host_os in aix*) symcode='[[BCDT]]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) @@ -3224,6 +3369,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], _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 @@ m4_if([$1], [CXX], [ _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 @@ m4_if([$1], [CXX], [ 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 @@ m4_if([$1], [CXX], [ ;; 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 @@ m4_if([$1], [CXX], [ _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 @@ m4_if([$1], [CXX], [ _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 @@ m4_if([$1], [CXX], [ ;; 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 @@ m4_if([$1], [CXX], [ ;; 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 @@ m4_if([$1], [CXX], [ _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 @@ m4_if([$1], [CXX], [ 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 @@ m4_if([$1], [CXX], [ # 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 @@ _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], # 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 @@ _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], # 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 @@ m4_if([$1], [CXX], [ 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 @@ m4_if([$1], [CXX], [ # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF ;; 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 @@ _LT_EOF ;; 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_EOF _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 @@ _LT_EOF ;; 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 @@ if test "$_lt_caught_CXX_error" != yes; then 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 @@ if test "$_lt_caught_CXX_error" != yes; then 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 @@ if test "$_lt_caught_CXX_error" != yes; then 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 @@ if test "$_lt_caught_CXX_error" != yes; then _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 @@ if test "$_lt_caught_CXX_error" != yes; then # 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 @@ if test "$_lt_caught_CXX_error" != yes; then ;; 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 @@ if AC_TRY_EVAL(ac_compile); then # 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 @@ esac 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 @@ if test "$_lt_disable_F77" != yes; then # 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 @@ if test "$_lt_disable_F77" != yes; then _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 @@ if test "$_lt_disable_FC" != yes; then # 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 @@ if test "$_lt_disable_FC" != yes; then _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 @@ _LT_LINKER_BOILERPLATE # 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 @@ if test -n "$compiler"; then _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 @@ _LT_LINKER_BOILERPLATE # 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 @@ if test -n "$compiler"; then _LT_CONFIG($1) fi +GCC=$lt_save_GCC AC_LANG_RESTORE CC="$lt_save_CC" ])# _LT_LANG_RC_CONFIG @@ -6890,6 +7006,18 @@ AC_SUBST([GREP]) ]) +# _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 @@ m4_defun([_LT_CHECK_SHELL_FEATURES], 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 @@ m4_defun([_LT_PROG_XSI_SHELLFNS], [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 () 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 () *) 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 () 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 () { 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 @@ func_append () { eval "$[1]=\$$[1]\$[2]" } + _LT_EOF ;; esac @@ -30,6 +30,7 @@ _LT_COMPILER_BOILERPLATE _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 @@ if test -n "$compiler"; then _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) @@ -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 @@ DUALCASE=1; export DUALCASE # for MKS sh # 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 @@ $lt_unset CDPATH : ${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 @@ IFS=" $lt_nl" 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 @@ progpath="$0" # 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_dry_run=false 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 @@ func_error () # 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 () } +# 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 @@ EOF fi magic="%%%MAGIC variable%%%" - +magic_exe="%%%MAGIC EXE variable%%%" # Global variables. # $mode is unset @@ -626,191 +692,6 @@ func_enable_tag () esac } - -func_mode_help () -{ - # We need to display help for each of the modes. - case $mode in - "") - # Generic help is extracted from the usage comments - # at the start of this file. - func_help - ;; - - clean) - $ECHO \ -"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - - compile) - $ECHO \ -"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -no-suppress do not suppress compiler output for multiple passes - -prefer-pic try to building PIC objects only - -prefer-non-pic try to building non-PIC objects only - -shared do not build a \`.o' file suitable for static linking - -static only build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - - execute) - $ECHO \ -"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - - finish) - $ECHO \ -"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - - install) - $ECHO \ -"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The following components of INSTALL-COMMAND are treated specially: - - -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - - link) - $ECHO \ -"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects - -precious-files-regex REGEX - don't remove output files matching REGEX - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -shared only do dynamic linking of libtool libraries - -shrext SUFFIX override the standard shared library file extension - -static do not do any dynamic linking of uninstalled libtool libraries - -static-libtool-libs - do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -weak LIBNAME declare that the target provides the LIBNAME interface - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - - uninstall) - $ECHO \ -"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - - *) - func_fatal_help "invalid operation mode \`$mode'" - ;; - esac - - $ECHO - $ECHO "Try \`$progname --help' for more information about other modes." - - 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. { @@ -846,11 +727,11 @@ Otherwise, only FILE itself is deleted using RM." shift case $opt in - --config) func_config ;; + --config) func_config ;; --debug) preserve_args="$preserve_args $opt" - func_echo "enabling shell trace mode" - opt_debug='set -x' + func_echo "enabling shell trace mode" + opt_debug='set -x' $opt_debug ;; @@ -864,7 +745,7 @@ Otherwise, only FILE itself is deleted using RM." --finish) mode="finish" ;; --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break - case $1 in + case $1 in # Valid mode arguments: clean) ;; compile) ;; @@ -882,19 +763,19 @@ Otherwise, only FILE itself is deleted using RM." ;; esac - mode="$1" + mode="$1" shift ;; --preserve-dup-deps) - opt_duplicate_deps=: ;; + opt_duplicate_deps=: ;; --quiet|--silent) preserve_args="$preserve_args $opt" - opt_silent=: + opt_silent=: ;; --verbose| -v) preserve_args="$preserve_args $opt" - opt_silent=false + opt_silent=false ;; --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break @@ -917,16 +798,14 @@ Otherwise, only FILE itself is deleted using RM." -*) func_fatal_help "unrecognized option \`$opt'" ;; *) nonopt="$opt" - break + 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*) + *cygwin* | *mingw* | *pw32* | *cegcc*) # don't eliminate duplications in $postdeps and $predeps opt_duplicate_compiler_generated_deps=: ;; @@ -980,7 +859,7 @@ _LT_EOF ## Main. ## ## ----------- ## -{ +$opt_help || { # Sanity checks first: func_check_version_match @@ -1014,8 +893,9 @@ _LT_EOF # determined imposters. func_lalib_p () { - $SED -e 4q "$1" 2>/dev/null \ - | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null \ + | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # func_lalib_unsafe_p file @@ -1028,7 +908,7 @@ func_lalib_p () func_lalib_unsafe_p () { lalib_p=no - if test -r "$1" && exec 5<&1 <"$1"; then + 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 @@ -1036,18 +916,55 @@ func_lalib_unsafe_p () \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done - exec 1<&5 5<&- + 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. +# 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_lalib_p "$1" + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" } @@ -1084,55 +1001,6 @@ func_source () } -# 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. @@ -1192,359 +1060,6 @@ func_infer_tag () -# 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. @@ -1578,7 +1093,7 @@ pic_object=$write_lobj non_pic_object=$write_oldobj EOF - mv -f "${write_libobj}T" "${write_libobj}" + $MV "${write_libobj}T" "${write_libobj}" } } @@ -1694,26 +1209,16 @@ func_mode_compile () # 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 ;; + *.[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 - libobj=`$ECHO "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) @@ -1752,11 +1257,10 @@ func_mode_compile () func_quote_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_result" \ - && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name \`$libobj' may not contain shell special characters." - func_basename "$obj" + func_dirname_and_basename "$obj" "/" "" objname="$func_basename_result" - func_dirname "$obj" "/" "" xdir="$func_dirname_result" lobj=${xdir}$objdir/$objname @@ -1770,12 +1274,9 @@ func_mode_compile () 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*) + cygwin* | mingw* | pw32* | os2* | cegcc*) pic_mode=default ;; esac @@ -1789,8 +1290,6 @@ func_mode_compile () 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 @@ -1820,17 +1319,20 @@ 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 - $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. @@ -1850,9 +1352,7 @@ compiler." command="$command -o $lobj" fi - $opt_dry_run || $RM "$lobj" "$output_obj" - - func_show_eval "$command" \ + func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && @@ -1901,8 +1401,7 @@ compiler." # 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" \ + func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && @@ -1937,6 +1436,7 @@ compiler." # Unlock the critical section if it was locked if test "$need_locks" != no; then + removelist=$lockfile $RM "$lockfile" fi } @@ -1944,7 +1444,193 @@ compiler." exit $EXIT_SUCCESS } +$opt_help || { test "$mode" = compile && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to building PIC objects only + -prefer-non-pic try to building non-PIC objects only + -shared do not build a \`.o' file suitable for static linking + -static only build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode \`$mode'" + ;; + esac + + $ECHO + $ECHO "Try \`$progname --help' for more information about other modes." + + exit $? +} + + # Now that we've collected a possible --mode arg, show help if necessary + $opt_help && func_mode_help # func_mode_execute arg... @@ -2029,9 +1715,13 @@ func_mode_execute () -*) ;; *) # 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 @@ func_mode_execute () 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 @@ func_mode_install () case $arg in -d) isdir=yes ;; -f) - case " $install_prog " in + case " $install_prog " in *[\\\ /]cp\ *) ;; *) prev=$arg ;; esac @@ -2251,9 +1941,8 @@ func_mode_install () 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 @@ func_mode_install () 'exit $?' tstripme="$stripme" case $host_os in - cygwin* | mingw* | pw32*) + cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) tstripme="" @@ -2464,15 +2153,20 @@ func_mode_install () # 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 @@ func_mode_install () 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 @@ func_mode_link () 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 @@ func_mode_link () ;; esac ;; - esac + esac prev= continue ;; @@ -2927,7 +4363,7 @@ func_mode_link () continue ;; shrext) - shrext_cmds="$arg" + shrext_cmds="$arg" prev= continue ;; @@ -2971,7 +4407,11 @@ func_mode_link () 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 @@ func_mode_link () -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 @@ func_mode_link () ;; 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 @@ func_mode_link () -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 @@ func_mode_link () -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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () # 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 @@ func_mode_link () 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 @@ func_mode_link () 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_mode_link () 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 @@ func_mode_link () # 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () ;; 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 @@ func_mode_link () # 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 @@ func_mode_link () ;; 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () 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 @@ func_mode_link () ;; *-*-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 @@ EOF 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 @@ EOF $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 @@ EOF $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 @@ EOF 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 @@ EOF $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 @@ EOF $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 @@ EOF 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 @@ EOF 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 @@ EOF # 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF # 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 @@ EOF 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 - -/* $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. + func_emit_cwrapperexe_src > $cwrappersource - 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 - ;; - 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 + # 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 + } - $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+\"\$@\"} -" + # 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 - *) - $ECHO >> $output "\ - exec \"\$progdir/\$program\" \${1+\"\$@\"} -" + func_emit_wrapper no > $output + chmod +x $output ;; 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 @@ fi\ # 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\ 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 @@ fi\ 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 @@ fi\ *.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 @@ fi\ # 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 @@ func_mode_uninstall () 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 @@ _LT_UNLESS_OPTIONS([fast-install disable-fast-install], ## 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 @@ dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # 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 @@ _LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl ])# 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 @@ AC_ARG_ENABLE([shared], [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 @@ AC_ARG_ENABLE([static], [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 @@ _LT_DECL([fast_install], [enable_fast_install], [0], [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 @@ test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) _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 @@ put the `pic-only' option into LT_INIT's first parameter.]) 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])]) @@ -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 @@ AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # ----------------------------- # 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 @@ m4_define([lt_unquote], $1) # 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 @@ m4_define([lt_append], # 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_define([lt_if_append_uniq], [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 @@ dep-am: DEP # 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 @@ i386-gen.lo: i386-gen.c sysdep.h config.h $(INCDIR)/ansidecl.h \ 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-m.lo: ia64-opc-m.c ia64-opc.h $(INCDIR)/opcode/ia64.h \ 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 \ + $(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)/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 + $(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 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 + $(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)/ansidecl.h $(INCDIR)/symcat.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)/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 + $(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 + $(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)/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)/libiberty.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)/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 + $(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)/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 + $(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)/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 \ - $(INCDIR)/libiberty.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 + $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.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 + $(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)/ansidecl.h \ - $(INCDIR)/symcat.h $(INCDIR)/symcat.h openrisc-desc.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)/libiberty.h $(INCDIR)/ansidecl.h \ - $(INCDIR)/xregex.h $(INCDIR)/xregex2.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 \ - opintl.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)/ansidecl.h \ - $(INCDIR)/symcat.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)/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 + $(INCDIR)/dis-asm.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)/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 + $(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)/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)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.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 -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)/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)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \ - opintl.h $(INCDIR)/safe-ctype.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)/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 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(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 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ @@ -157,6 +158,7 @@ LIBINTL_DEP = @LIBINTL_DEP@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ @@ -167,8 +169,12 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ 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 @@ WARN_CFLAGS = @WARN_CFLAGS@ 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 @@ dep-am: DEP # 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 @@ i386-gen.lo: i386-gen.c sysdep.h config.h $(INCDIR)/ansidecl.h \ 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-m.lo: ia64-opc-m.c ia64-opc.h $(INCDIR)/opcode/ia64.h \ 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 \ + $(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)/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 + $(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 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 + $(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)/ansidecl.h $(INCDIR)/symcat.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)/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 + $(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 + $(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)/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)/libiberty.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)/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 + $(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)/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 + $(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)/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 \ - $(INCDIR)/libiberty.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 + $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/dis-asm.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 + $(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)/ansidecl.h \ - $(INCDIR)/symcat.h $(INCDIR)/symcat.h openrisc-desc.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)/libiberty.h $(INCDIR)/ansidecl.h \ - $(INCDIR)/xregex.h $(INCDIR)/xregex2.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 \ - opintl.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)/ansidecl.h \ - $(INCDIR)/symcat.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)/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 + $(INCDIR)/dis-asm.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)/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 + $(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)/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)/xregex.h $(INCDIR)/xregex2.h $(INCDIR)/libiberty.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 -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)/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)/symcat.h $(INCDIR)/opcode/cgen-bitset.h xstormy16-opc.h \ - opintl.h $(INCDIR)/safe-ctype.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)/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([../libtool.m4]) 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 @@ ac_includes_default="\ # 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,104 +4930,22 @@ 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' - - - - - - - - - - - - -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 +macro_version='2.2.6' +macro_revision='1.3012' -# 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; @@ -5035,6 +4953,7 @@ fi; +ltmain="$ac_aux_dir/ltmain.sh" 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 @@ -5256,7 +5175,6 @@ with_gnu_ld=$lt_cv_prog_gnu_ld - 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 @@ if test "${lt_cv_nm_interface+set}" = set; then 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 @@ else 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 @@ else 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 @@ max_cmd_len=$lt_cv_sys_max_cmd_len - : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} @@ -5590,7 +5507,9 @@ echo $ECHO_N "checking whether the shell understands some XSI constructs... $ECH 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 @@ esac +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 @@ mingw* | pw32*) 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 @@ test -z "$RANLIB" && RANLIB=: # 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 @@ case $host_os in aix*) symcode='[BCDT]' ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) @@ -6270,6 +6284,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' # 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 @@ _LT_EOF 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 @@ fi + + + + + # 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 @@ ia64-*-hpux*) ;; *-*-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 @@ sparc*-*solaris*) *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 @@ esac 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 @@ done +# 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 @@ ac_outfile=conftest.$ac_objext 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 @@ else -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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 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 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 # 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 @@ echo "${ECHO_T}$lt_prog_compiler_pic" >&6 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 @@ else -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 @@ fi 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 @@ else $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 @@ else -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 @@ else -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 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar # 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 @@ _LT_EOF ;; 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 @@ _LT_EOF 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 @@ _LT_EOF && 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ _LT_EOF 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; 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 @@ fi 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 @@ rm -f conftest.err conftest.$ac_objext \ ;; 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 @@ esac 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 @@ aix[4-9]*) ;; 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 @@ bsdi[45]*) # 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 @@ cygwin* | mingw* | pw32*) 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 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 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 @@ rm -f conftest.err conftest.$ac_objext \ # 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 @@ tpf*) 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 @@ if test "$GCC" = yes; then 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 @@ else lt_cv_dlopen_self=yes ;; - mingw* | pw32*) + mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; @@ -10042,7 +10728,7 @@ fi 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 @@ fi 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 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10445,7 +11127,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -10485,7 +11167,7 @@ else 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 @@ else # endif #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif - void fnord() { int i=42;} int main () { @@ -10545,7 +11223,7 @@ int main () else puts (dlerror ()); - exit (status); + return status; } _LT_EOF if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 @@ -11758,6 +12436,10 @@ if test "$enable_shared" = "yes"; then 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_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' 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 @@ GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' 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_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_ 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 @@ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ +OBJDUMP \ deplibs_check_method \ file_magic_cmd \ AR \ @@ -12648,6 +13338,7 @@ compiler \ 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_pic \ 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,@DUMPBIN@,$DUMPBIN,;t t 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 @@ done #! $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. # -# 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. +# 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. # -# 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. +# You should have received a copy of the GNU General Public License +# 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 @@ NL2SP=$lt_lt_NL2SP 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 @@ global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # 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 @@ MAGIC_CMD=$MAGIC_CMD # 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 @@ ltmain="$ac_aux_dir/ltmain.sh" 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 () 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 () *) 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 () 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 () { 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 @@ func_append () { 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 @@ if test "$enable_shared" = "yes"; then 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 @@ remove_trailing_whitespaces (char *str) 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_field (char *str, char sep, char **next) *next = str + 1; + if (p >= last) + abort (); + return p; } @@ -559,7 +563,7 @@ process_i386_cpu_flag (FILE *table, char *flag, int macro, 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 @@ process_i386_opcode_modifier (FILE *table, char *mod) 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 @@ process_i386_operand_type (FILE *table, char *op, int macro, 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 @@ process_i386_operand_type (FILE *table, char *op, int macro, } 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 @@ process_i386_opcodes (FILE *table) 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 @@ process_i386_opcodes (FILE *table) switch (p[0]) { case '#': - fprintf (table, "%s\n", p); + /* Ignore comments. */ case '\0': continue; break; @@ -708,117 +845,58 @@ process_i386_opcodes (FILE *table) last = p + strlen (p); /* Find name. */ - name = next_field (p, ',', &str); - - if (str >= last) - abort (); - - /* 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); + name = next_field (p, ',', &str, last); - 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); + /* 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); - 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 "); + /* 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); + } + } - process_i386_operand_type (table, operand_types[i], 0, - "\t "); + /* 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); } - fprintf (table, " } },\n"); } fclose (fp); @@ -885,41 +963,26 @@ process_i386_registers (FILE *table) 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 @@ cmpeqss, 2, 0xf30fc2, 0x0, 2, CpuSSE, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|N 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 @@ cmpeqsd, 2, 0xf20fc2, 0x0, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf| 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ const template i386_optab[] = 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 @@ msgstr "" "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: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: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: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:608 +msgid "missing `]'" +msgstr "\"]\"' manquant" -#: frv-asm.c:978 +#: 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 @@ msgstr "" "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:1559 +#, c-format +msgid "Warning: rsrc %s (%s) has no chks\n" +msgstr "Attention : reg. source %s (%s) sans sélecteur \"chks\"\n" -#: ia64-gen.c:1541 +#: ia64-gen.c:1562 #, 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 or regs\n" +msgstr "Attention : reg. source %s (%s) sans sélecteur \"chks\" ou \"regs\"\n" -#: ia64-gen.c:1545 +#: 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" + +#: m32c-asm.c:117 +msgid "imm:6 immediate is out of range" +msgstr "valeur immédiate imm:6 hors limites" -#: m68k-dis.c:295 +#: 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" + +#: 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)" -#: m68k-dis.c:1089 +#: 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 "<internal error in opcode table: %s %s>\n" +msgstr "<erreur interne dans la table des opcodes : %s %s>\n" + +#: 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 "# <dis error: %08x>" -msgstr "# <erreur du désassembleur: %08x>" +msgid "invalid %function() here" +msgstr "%function() non valide ici" -#: mips-dis.c:720 +#: 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 @@ msgstr "" "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 @@ msgid "" 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 @@ msgid "" 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 @@ msgstr "" "\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 @@ msgstr "" "\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 @@ msgstr "" " 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 @@ msgstr "" " 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 @@ msgid "" " " 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 @@ msgid "" " " 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é" - -#: 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" +msgstr "tentative d'initialisation du bit y lors de l'utilisation du modificateur + ou -" -#: 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é" - -#: 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" +msgstr "masque mfcr non valide et ignoré" -#: 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" + +#: 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" -#: ppc-opc.c:1357 -msgid "source register operand must be even" -msgstr "opérande du registre source doit être pair" +#: s390-dis.c:281 +#, c-format +msgid " zarch Disassemble in z/Architecture mode\n" +msgstr " zarch Désassemble en mode z/Architecture\n" -#. Mark as non-valid instruction. -#: sparc-dis.c:760 -msgid "unknown" -msgstr "inconnu" +#: score-dis.c:220 score-dis.c:383 +msgid "<illegal instruction>" +msgstr "<instruction illégale>" -#: sparc-dis.c:835 +#: 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" +msgstr "Erreur interne : sparc-opcode.h erroné : « %s », %#.8lx, %#.8lx\n" -#: sparc-dis.c:846 +#: 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" +msgstr "Erreur interne : sparc-opcode.h erroné : « %s », %#.8lx, %#.8lx\n" -#: sparc-dis.c:895 +#: 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" +msgstr "Erreur interne : sparc-opcode.h erroné : « %s » == « %s »\n" + +#. Mark as non-valid instruction. +#: sparc-dis.c:1013 +msgid "unknown" +msgstr "inconnu" -#: 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 @@ msgid "too many long constants" 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 @@ msgstr "Không nháºn ra táºp hợp tên thanh ghi: %s\n" 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 @@ msgstr "Danh sách thanh ghi không hợp lệ" #: 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 @@ msgstr "thiếu Ä‘iá»u giúp trà nhá»› trong chuá»—i cú pháp" #: 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 @@ msgstr "không nháºn ra câu lệnh" #: 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 @@ msgstr "không thể xá» lý Ä‘iá»u chèn %d\n" 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 @@ msgstr "" "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: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: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: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: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:386 ia64-gen.c:2841 +#: 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 @@ msgstr "trÆ°á»ng chồng lấp %s -> %s\n" 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\n" +msgstr "Cảnh báo : rsrc %s (%s) không có chks\n" + +#: ia64-gen.c:1562 #, 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 or regs\n" +msgstr "Cảnh báo : rsrc %s (%s) không có chks hay regs\n" -#: ia64-gen.c:1557 +#: 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 @@ msgstr "Chỉ cho phép $sp hay $15 cho mã thao tác nà y" 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 @@ msgstr "" "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 @@ msgstr "" " 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 @@ msgstr "" " 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 @@ msgstr "" " 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 @@ msgstr "" " 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 @@ msgstr "" "\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 @@ msgstr "" " 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 @@ msgstr "" " Äố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 @@ msgid "Biiiig Trouble in parse_imm16!" 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 @@ msgstr "tác tá» không hợp lệ. kiểu chỉ có thể có giá trị 0,1,2 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 @@ msgstr "giá trị trá»±c tiếp ở ngoạị phạm vi và không phải số 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 @@ msgstr "Tác tá» không phải ký hiệu" #: 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 @@ const struct s390_operand s390_operands[] = #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 @@ const struct s390_operand s390_operands[] = #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 @@ b991 trto RRE_RR "translate two to one" g5 esa,zarch 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 @@ b369 cxr RRE_FF "compare extended hfp" g5 esa,zarch 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 @@ b337 meer RRE_FF "multiply short hfp" g5 esa,zarch 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 @@ eb0000000052 mviy SIY_URD "move immediate with long offset" z990 zarch 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 @@ eb0000000044 bxhg RSY_RRRD "branch on index high 64" z990 zarch 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 @@ b3d5 ledtr RRF_UUFF "load rounded long dfp" z9-ec zarch 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 @@ static int 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 @@ struct tab_elt opc_ed[] = { 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, "" }, |