OSDN Git Service
cgf [Tue, 30 Sep 2008 02:39:07 +0000 (02:39 +0000)]
* thread.cc (pthread_mutex::_fixup_after_fork): Reinstate DEBUGGING
conditional.
cgf [Tue, 30 Sep 2008 02:22:39 +0000 (02:22 +0000)]
* thread.cc (pthread_mutex::_fixup_after_fork): Just reset lock to pristine
state after fork. Don't recreate a mutex since it may not actually be needed.
gdbadmin [Tue, 30 Sep 2008 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Tue, 30 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
ccoutant [Mon, 29 Sep 2008 21:26:39 +0000 (21:26 +0000)]
Added missing files to ChangeLog entry.
ccoutant [Mon, 29 Sep 2008 21:23:02 +0000 (21:23 +0000)]
* 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.
ccoutant [Mon, 29 Sep 2008 21:10:26 +0000 (21:10 +0000)]
* 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.
corinna [Mon, 29 Sep 2008 17:03:48 +0000 (17:03 +0000)]
* flock.cc (inode_t::get_all_locks_list): Fix typo.
* posix.sgml: Add cfmakeraw to list of implemented BSD functions.
hjl [Mon, 29 Sep 2008 16:54:07 +0000 (16:54 +0000)]
2008-09-29 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* configure: Likewise.
* Makefile.in: Likewise.
sje [Mon, 29 Sep 2008 15:40:26 +0000 (15:40 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* newlib.hin: Ditto.
* doc/Makefile.in: Ditto.
* doc/configure: Ditto.
* iconvdata/Makefile.in: Ditto.
* iconvdata/aclocal.m4: Ditto.
* iconvdata/configure: Ditto.
* libc/Makefile.in: Ditto.
* libc/aclocal.m4: Ditto.
* libc/configure: Ditto.
* libc/argz/Makefile.in: Ditto.
* libc/ctype/Makefile.in: Ditto.
* libc/errno/Makefile.in: Ditto.
* libc/iconv/Makefile.in: Ditto.
* libc/iconv/ccs/Makefile.in: Ditto.
* libc/iconv/ccs/binary/Makefile.in: Ditto.
* libc/iconv/ces/Makefile.in: Ditto.
* libc/iconv/lib/Makefile.in: Ditto.
* libc/locale/Makefile.in: Ditto.
* libc/machine/Makefile.in: Ditto.
* libc/machine/aclocal.m4: Ditto.
* libc/machine/configure: Ditto.
* libc/machine/a29k/Makefile.in: Ditto.
* libc/machine/a29k/configure: Ditto.
* libc/machine/arm/Makefile.in: Ditto.
* libc/machine/arm/configure: Ditto.
* libc/machine/bfin/Makefile.in: Ditto.
* libc/machine/bfin/configure: Ditto.
* libc/machine/cris/Makefile.in: Ditto.
* libc/machine/cris/configure: Ditto.
* libc/machine/crx/Makefile.in: Ditto.
* libc/machine/crx/configure: Ditto.
* libc/machine/d10v/Makefile.in: Ditto.
* libc/machine/d10v/configure: Ditto.
* libc/machine/d30v/Makefile.in: Ditto.
* libc/machine/d30v/configure: Ditto.
* libc/machine/fr30/Makefile.in: Ditto.
* libc/machine/fr30/configure: Ditto.
* libc/machine/frv/Makefile.in: Ditto.
* libc/machine/frv/configure: Ditto.
* libc/machine/h8300/Makefile.in: Ditto.
* libc/machine/h8300/configure: Ditto.
* libc/machine/h8500/Makefile.in: Ditto.
* libc/machine/h8500/configure: Ditto.
* libc/machine/hppa/Makefile.in: Ditto.
* libc/machine/hppa/configure: Ditto.
* libc/machine/i386/Makefile.in: Ditto.
* libc/machine/i386/aclocal.m4: Ditto.
* libc/machine/i386/configure: Ditto.
* libc/machine/i960/Makefile.in: Ditto.
* libc/machine/i960/configure: Ditto.
* libc/machine/iq2000/Makefile.in: Ditto.
* libc/machine/iq2000/configure: Ditto.
* libc/machine/m32c/Makefile.in: Ditto.
* libc/machine/m32c/configure: Ditto.
* libc/machine/m32r/Makefile.in: Ditto.
* libc/machine/m32r/configure: Ditto.
* libc/machine/m68hc11/Makefile.in: Ditto.
* libc/machine/m68hc11/configure: Ditto.
* libc/machine/m68k/Makefile.in: Ditto.
* libc/machine/m68k/configure: Ditto.
* libc/machine/m88k/Makefile.in: Ditto.
* libc/machine/m88k/configure: Ditto.
* libc/machine/mep/Makefile.in: Ditto.
* libc/machine/mep/configure: Ditto.
* libc/machine/mips/Makefile.in: Ditto.
* libc/machine/mips/configure: Ditto.
* libc/machine/mn10200/Makefile.in: Ditto.
* libc/machine/mn10200/configure: Ditto.
* libc/machine/mn10300/Makefile.in: Ditto.
* libc/machine/mn10300/configure: Ditto.
* libc/machine/mt/Makefile.in: Ditto.
* libc/machine/mt/configure: Ditto.
* libc/machine/necv70/Makefile.in: Ditto.
* libc/machine/necv70/configure: Ditto.
* libc/machine/powerpc/Makefile.in: Ditto.
* libc/machine/powerpc/configure: Ditto.
* libc/machine/sh/Makefile.in: Ditto.
* libc/machine/sh/configure: Ditto.
* libc/machine/sparc/Makefile.in: Ditto.
* libc/machine/sparc/configure: Ditto.
* libc/machine/spu/Makefile.in: Ditto.
* libc/machine/spu/configure: Ditto.
* libc/machine/tic4x/Makefile.in: Ditto.
* libc/machine/tic4x/configure: Ditto.
* libc/machine/tic80/Makefile.in: Ditto.
* libc/machine/tic80/configure: Ditto.
* libc/machine/v850/Makefile.in: Ditto.
* libc/machine/v850/configure: Ditto.
* libc/machine/w65/Makefile.in: Ditto.
* libc/machine/w65/configure: Ditto.
* libc/machine/x86_64/Makefile.in: Ditto.
* libc/machine/x86_64/configure: Ditto.
* libc/machine/xscale/Makefile.in: Ditto.
* libc/machine/xscale/configure: Ditto.
* libc/machine/xstormy16/Makefile.in: Ditto.
* libc/machine/xstormy16/configure: Ditto.
* libc/machine/z8k/Makefile.in: Ditto.
* libc/machine/z8k/configure: Ditto.
* libc/misc/Makefile.in: Ditto.
* libc/posix/Makefile.in: Ditto.
* libc/reent/Makefile.in: Ditto.
* libc/search/Makefile.in: Ditto.
* libc/signal/Makefile.in: Ditto.
* libc/stdio/Makefile.in: Ditto.
* libc/stdio64/Makefile.in: Ditto.
* libc/stdlib/Makefile.in: Ditto.
* libc/string/Makefile.in: Ditto.
* libc/sys/Makefile.in: Ditto.
* libc/sys/aclocal.m4: Ditto.
* libc/sys/configure: Ditto.
* libc/sys/a29khif/Makefile.in: Ditto.
* libc/sys/a29khif/configure: Ditto.
* libc/sys/arc/Makefile.in: Ditto.
* libc/sys/arc/configure: Ditto.
* libc/sys/arm/Makefile.in: Ditto.
* libc/sys/arm/configure: Ditto.
* libc/sys/d10v/Makefile.in: Ditto.
* libc/sys/d10v/configure: Ditto.
* libc/sys/decstation/Makefile.in: Ditto.
* libc/sys/decstation/configure: Ditto.
* libc/sys/h8300hms/Makefile.in: Ditto.
* libc/sys/h8300hms/configure: Ditto.
* libc/sys/h8500hms/Makefile.in: Ditto.
* libc/sys/h8500hms/configure: Ditto.
* libc/sys/linux/Makefile.in: Ditto.
* libc/sys/linux/aclocal.m4: Ditto.
* libc/sys/linux/configure: Ditto.
* libc/sys/linux/argp/Makefile.in: Ditto.
* libc/sys/linux/cmath/Makefile.in: Ditto.
* libc/sys/linux/dl/Makefile.in: Ditto.
* libc/sys/linux/iconv/Makefile.in: Ditto.
* libc/sys/linux/intl/Makefile.in: Ditto.
* libc/sys/linux/linuxthreads/Makefile.in: Ditto.
* libc/sys/linux/linuxthreads/aclocal.m4: Ditto.
* libc/sys/linux/linuxthreads/configure: Ditto.
* libc/sys/linux/linuxthreads/machine/Makefile.in: Ditto.
* libc/sys/linux/linuxthreads/machine/aclocal.m4: Ditto.
* libc/sys/linux/linuxthreads/machine/configure: Ditto.
* libc/sys/linux/linuxthreads/machine/i386/Makefile.in: Ditto.
* libc/sys/linux/linuxthreads/machine/i386/aclocal.m4: Ditto.
* libc/sys/linux/linuxthreads/machine/i386/configure: Ditto.
* libc/sys/linux/machine/Makefile.in: Ditto.
* libc/sys/linux/machine/aclocal.m4: Ditto.
* libc/sys/linux/machine/configure: Ditto.
* libc/sys/linux/machine/i386/Makefile.in: Ditto.
* libc/sys/linux/machine/i386/aclocal.m4: Ditto.
* libc/sys/linux/machine/i386/configure: Ditto.
* libc/sys/linux/net/Makefile.in: Ditto.
* libc/sys/linux/stdlib/Makefile.in: Ditto.
* libc/sys/m88kbug/Makefile.in: Ditto.
* libc/sys/m88kbug/configure: Ditto.
* libc/sys/mmixware/Makefile.in: Ditto.
* libc/sys/mmixware/configure: Ditto.
* libc/sys/netware/Makefile.in: Ditto.
* libc/sys/netware/configure: Ditto.
* libc/sys/rdos/Makefile.in: Ditto.
* libc/sys/rdos/configure: Ditto.
* libc/sys/rtems/Makefile.in: Ditto.
* libc/sys/rtems/configure: Ditto.
* libc/sys/sh/Makefile.in: Ditto.
* libc/sys/sh/configure: Ditto.
* libc/sys/sparc64/Makefile.in: Ditto.
* libc/sys/sparc64/configure: Ditto.
* libc/sys/sun4/Makefile.in: Ditto.
* libc/sys/sun4/configure: Ditto.
* libc/sys/sysmec/Makefile.in: Ditto.
* libc/sys/sysmec/configure: Ditto.
* libc/sys/sysnec810/Makefile.in: Ditto.
* libc/sys/sysnec810/configure: Ditto.
* libc/sys/sysnecv850/Makefile.in: Ditto.
* libc/sys/sysnecv850/configure: Ditto.
* libc/sys/sysvi386/Makefile.in: Ditto.
* libc/sys/sysvi386/configure: Ditto.
* libc/sys/sysvnecv70/Makefile.in: Ditto.
* libc/sys/sysvnecv70/configure: Ditto.
* libc/sys/tic80/Makefile.in: Ditto.
* libc/sys/tic80/configure: Ditto.
* libc/sys/w65/Makefile.in: Ditto.
* libc/sys/w65/configure: Ditto.
* libc/sys/z8ksim/Makefile.in: Ditto.
* libc/sys/z8ksim/configure: Ditto.
* libc/syscalls/Makefile.in: Ditto.
* libc/time/Makefile.in: Ditto.
* libc/unix/Makefile.in: Ditto.
* libm/Makefile.in: Ditto.
* libm/aclocal.m4: Ditto.
* libm/configure: Ditto.
* libm/common/Makefile.in: Ditto.
* libm/machine/Makefile.in: Ditto.
* libm/machine/aclocal.m4: Ditto.
* libm/machine/configure: Ditto.
* libm/machine/i386/Makefile.in: Ditto.
* libm/machine/i386/aclocal.m4: Ditto.
* libm/machine/i386/configure: Ditto.
* libm/machine/spu/Makefile.in: Ditto.
* libm/machine/spu/configure: Ditto.
* libm/math/Makefile.in: Ditto.
* libm/mathfp/Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:36:22 +0000 (15:36 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:35:33 +0000 (15:35 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:34:32 +0000 (15:34 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* doc/Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:33:28 +0000 (15:33 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* doc/Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:31:59 +0000 (15:31 +0000)]
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* doc/Makefile.in: Ditto.
sje [Mon, 29 Sep 2008 15:28:14 +0000 (15:28 +0000)]
* 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.
nickc [Mon, 29 Sep 2008 14:20:38 +0000 (14:20 +0000)]
PR 6878
* app.c (do_scrub_chars): Only issue warnings about tick
characters detected in symbol strings if hex ticks are supported.
amodra [Mon, 29 Sep 2008 14:12:01 +0000 (14:12 +0000)]
bfd/
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.
ld/testsuite/
* ld-elf/extract-symbol-1sec.d: Correct section lma.
ktietz [Mon, 29 Sep 2008 14:01:49 +0000 (14:01 +0000)]
2008-09-26 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (make_import_fixup_entry): Make sure reloc is addend.
nickc [Mon, 29 Sep 2008 09:48:31 +0000 (09:48 +0000)]
* po/vi.po: Updated Vietnamese translation.
* po/fr.po: Updated French translation.
gdbadmin [Mon, 29 Sep 2008 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 29 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
drow [Sun, 28 Sep 2008 15:15:31 +0000 (15:15 +0000)]
* NEWS: Mention .cfi_val_encoded_addr.
amodra [Sun, 28 Sep 2008 13:30:35 +0000 (13:30 +0000)]
* 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.
amodra [Sun, 28 Sep 2008 13:29:18 +0000 (13:29 +0000)]
* objcopy.c (setup_section): Set elf_group_id.
jkratoch [Sun, 28 Sep 2008 11:39:45 +0000 (11:39 +0000)]
gdb/testsuite/
* gdb.threads/attachstop-mt.exp: Note a real testcase name this
testcase is derived from. Fix racy dependency on an expected PID
number. No longer support the testcase on Linux kernel 2.4.x.
gdbadmin [Sun, 28 Sep 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sun, 28 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
tromey [Sat, 27 Sep 2008 21:40:48 +0000 (21:40 +0000)]
gdb
* NEWS: Update.
* macrocmd.c (extract_identifier): Add is_parameter argument.
(macro_define_command): Update.
(macro_undef_command): Likewise.
* macroexp.c (stringify): New function.
(find_parameter): Likewise.
(gather_arguments): Add nargs argument. Handle varargs.
(substitute_args): Add is_varargs and va_arg_name arguments.
Handle varargs, splicing, stringification. Use find_parameter.
(expand): Handle varargs.
gdb/doc
* gdb.texinfo (Macros): Remove text about stringification,
varargs, and splicing.
gdb/testsuite
* gdb.base/macscp.exp: Add tests for stringification, splicing,
and varargs.
tromey [Sat, 27 Sep 2008 21:29:27 +0000 (21:29 +0000)]
gdb
* scm-lang.c (scm_language_defn): Update.
* p-typeprint.c (pascal_print_typedef): New function.
* p-lang.h: (pascal_print_typedef): Declare.
* p-lang.c (pascal_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* m2-typeprint.c (m2_print_typedef): New function.
* m2-lang.h (m2_print_typedef): Declare.
* m2-lang.c (m2_language_defn): Update.
* language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
Remove.
(struct language_defn) <la_print_typedef>: New field.
(default_print_typedef): Declare.
(LA_PRINT_TYPEDEF): New define.
* language.c (unknown_language_defn): Update.
(auto_language_defn): Update.
(local_language_defn): Update.
* jv-lang.c (java_language_defn): Update.
* f-lang.c (f_language_defn): Update.
* c-typeprint.c (c_print_typedef): New function.
* c-lang.h (c_print_typedef): Declare.
* c-lang.c (c_language_defn): Update.
(cplus_language_defn): Update.
(asm_language_defn): Update.
(minimal_language_defn): Update.
* ada-lang.c (ada_language_defn): Update.
* typeprint.c (default_print_typedef): New function.
gdb/doc
* gdbint.texinfo (Language Support): Remove text about omitting
support for a language.
tromey [Sat, 27 Sep 2008 17:03:15 +0000 (17:03 +0000)]
* jv-exp.y (insert_exp): Define using ISO syntax.
(copy_exp): Likewise.
(push_expression_name): Likewise.
(push_fieldnames): Likewise.
(java_type_from_name): Likewise.
(yyerror): Likewise.
(yylex): Likewise.
(parse_number): Likewise.
amodra [Sat, 27 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 27 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
brobecke [Fri, 26 Sep 2008 18:38:40 +0000 (18:38 +0000)]
* MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
jjohnstn [Fri, 26 Sep 2008 16:23:58 +0000 (16:23 +0000)]
2008-09-26 Craig Howland <howland@LGSInnovations.com>
* libc/stdlib/getenv_r.c (_getenv_r): Modify to not match if name
contains an equal sign.
jjohnstn [Fri, 26 Sep 2008 16:15:49 +0000 (16:15 +0000)]
2008-09-25 Raphael Derossa Pereira <raphaelpereira@gmail.com>
* libc/include/pthread.h[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add
new pthread_mutexattr_gettype and pthread_mutexattr_settype
prototypes.
* libc/include/sys/types.h[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add
new mutex type values.
(pthread_mutexattr_t)[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add type
field.
krebbel [Fri, 26 Sep 2008 13:44:32 +0000 (13:44 +0000)]
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-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.
ebotcazou [Fri, 26 Sep 2008 07:02:43 +0000 (07:02 +0000)]
* 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.
jiez [Fri, 26 Sep 2008 04:49:16 +0000 (04:49 +0000)]
* config/bfin-parse.y (asm_1): Fix reduce/reduce conflicts.
ironhead [Fri, 26 Sep 2008 01:20:21 +0000 (01:20 +0000)]
2008-09-25 Chris Sutcliffe <ir0nh34d@users.sf.net>
* include/vfw.h (capSendMessage): Rename to __capSendMessage.
gdbadmin [Fri, 26 Sep 2008 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Fri, 26 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
keithmarshall [Thu, 25 Sep 2008 21:53:17 +0000 (21:53 +0000)]
brobecke [Thu, 25 Sep 2008 16:04:11 +0000 (16:04 +0000)]
* stack.c (print_frame_args): Fix typos in comments.
bauermann [Thu, 25 Sep 2008 14:13:43 +0000 (14:13 +0000)]
2008-09-25 Sérgio Durigan Júnior <sergiodj@linux.vnet.ibm.com>
* linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
amodra [Thu, 25 Sep 2008 03:16:42 +0000 (03:16 +0000)]
* ld-elf/eh-group.exp: Only run on ELF targets.
* ld-elf/eh5b.s: Export main, start, __start.
jjohnstn [Thu, 25 Sep 2008 03:00:03 +0000 (03:00 +0000)]
2008-09-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/setenv_r.c (_unsetenv_r): Modify to return -1 only if
name is NULL, empty, or contains equal sign.
amodra [Thu, 25 Sep 2008 02:33:59 +0000 (02:33 +0000)]
* ldexp.c (fold_binary): Evaluate rhs when lhs not valid.
jjohnstn [Thu, 25 Sep 2008 01:23:08 +0000 (01:23 +0000)]
2008-09-24 Pawel Veselov <pawel.veselov@gmail.com>
Fix setenv/getenv/unsetenv to be OpenGroup compliant:
* libc/include/stdlib.h (unsetenv, _unsetenv_r): Redefine with integer
return types.
* libc/stdlib/getenv_r.c (_findenv_r): Do no special processing with
names that contain equal chars.
* libc/stdlib/setenv.c: Redefine _unsetenv_r as returning int.
* libc/stdlib/setenv_r.c (_setenv_r): Return -1 and set errno to
EINVAL if name contains an equal sign. Do not remove any equal signs
from the value.
(_unsetenv_r): Modified to return int. Return -1 and set EINVAL
if name contains equal sign. Return -1 if no variable(s) were found
and return 0 otherwise.
amodra [Thu, 25 Sep 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 25 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
ironhead [Wed, 24 Sep 2008 23:32:42 +0000 (23:32 +0000)]
2008-09-24 Chris Sutcliffe <ir0nh34d@users.sf.net>
* include/vfw.h (WM_CAP_SET_CALLBACK_ERRORA, WM_CAP_SET_CALLBACK_ERRORW,
WM_CAP_SET_CALLBACK_STATUS, WM_CAP_SET_CALLBACK_YIELD,
WM_CAP_SET_CALLBACK_FRAMEA, WM_CAP_SET_CALLBACK_FRAMEW,
WM_CAP_SET_CALLBACK_VIDEOSTREAM, WM_CAP_SET_CALLBACK_WAVESTREAM,
WM_CAP_GET_USER_DATA, WM_CAP_SET_USER_DATA, WM_CAP_DRIVER_CONNECT,
WM_CAP_DRIVER_DISCONNECT, WM_CAP_DRIVER_GET_NAMEA, WM_CAP_DRIVER_GET_NAMEW,
WM_CAP_DRIVER_GET_VERSIONA, WM_CAP_DRIVER_GET_VERSIONW,
WM_CAP_DRIVER_GET_CAPS, WM_CAP_FILE_SET_CAPTURE_FILEA,
WM_CAP_FILE_SET_CAPTURE_FILEW, WM_CAP_FILE_GET_CAPTURE_FILEA,
WM_CAP_FILE_GET_CAPTURE_FILEW, WM_CAP_FILE_ALLOCATE, WM_CAP_FILE_SAVEASA,
WM_CAP_FILE_SAVEASW, WM_CAP_FILE_SET_INFOCHUNK, WM_CAP_FILE_SAVEDIBA,
WM_CAP_FILE_SAVEDIBW, WM_CAP_EDIT_COPY, WM_CAP_SET_AUDIOFORMAT,
WM_CAP_GET_AUDIOFORMAT, WM_CAP_DLG_VIDEOFORMAT, WM_CAP_DLG_VIDEOSOURCE,
WM_CAP_DLG_VIDEODISPLAY, WM_CAP_GET_VIDEOFORMAT, WM_CAP_SET_VIDEOFORMAT,
WM_CAP_DLG_VIDEOCOMPRESSION, WM_CAP_SET_PREVIEW, WM_CAP_SET_OVERLAY,
WM_CAP_SET_PREVIEWRATE, WM_CAP_SET_SCALE, WM_CAP_GET_STATUS,
WM_CAP_SET_SCROLL, WM_CAP_GRAB_FRAME, WM_CAP_GRAB_FRAME_NOSTOP,
WM_CAP_SEQUENCE, WM_CAP_SEQUENCE_NOFILE, WM_CAP_SET_SEQUENCE_SETUP,
WM_CAP_GET_SEQUENCE_SETUP, WM_CAP_SET_MCI_DEVICEA, WM_CAP_SET_MCI_DEVICEW,
WM_CAP_GET_MCI_DEVICEA, WM_CAP_GET_MCI_DEVICEW, WM_CAP_STOP, WM_CAP_ABORT,
WM_CAP_SINGLE_FRAME_OPEN, WM_CAP_SINGLE_FRAME_CLOSE, WM_CAP_SINGLE_FRAME,
WM_CAP_PAL_OPENA, WM_CAP_PAL_OPENW, WM_CAP_PAL_SAVEA, WM_CAP_PAL_SAVEW,
WM_CAP_PAL_PASTE, WM_CAP_PAL_AUTOCREATE, WM_CAP_PAL_MANUALCREATE,
WM_CAP_SET_CALLBACK_CAPCONTROL): Define using WM_USER.
(capSendMessage): Don't undef.
dj [Wed, 24 Sep 2008 23:29:37 +0000 (23:29 +0000)]
* m32c/varvects.S: New.
* m32c/varvects.h: New.
* m32c/sample.c: New.
* m32c/Makefile.in: Add m32cgloss library support.
* m32c/crt0.S: Tweaks to support interrupts by default.
* m32c/m32c.tmpl: Likewise.
rth [Wed, 24 Sep 2008 23:21:03 +0000 (23:21 +0000)]
include/
* elf/dwarf2.h (DW_OP_GNU_encoded_addr): New.
binutils/
* 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.
gas/
* 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.
vprus [Wed, 24 Sep 2008 16:37:22 +0000 (16:37 +0000)]
* remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
amodra [Wed, 24 Sep 2008 14:38:02 +0000 (14:38 +0000)]
PR 6913
* listing.c (print_options): Don't call fprintf without format string.
amodra [Wed, 24 Sep 2008 14:37:35 +0000 (14:37 +0000)]
PR 6913
* dwarf.c (print_dwarf_vma): Don't call printf without format string.
schwab [Wed, 24 Sep 2008 12:59:48 +0000 (12:59 +0000)]
* frame.c (get_frame_register_bytes): Avoid excessive function calls.
schwab [Wed, 24 Sep 2008 12:17:19 +0000 (12:17 +0000)]
* frame.c (get_frame_register_bytes): Take pseudo registers into
account.
ironhead [Wed, 24 Sep 2008 00:59:03 +0000 (00:59 +0000)]
2008-09-23 Chris Sutcliffe <ir0nh34d@users.sf.net>
* Makefile.in: Don't include host_os as part of snapshot filename.
amodra [Wed, 24 Sep 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 24 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
devans [Tue, 23 Sep 2008 18:35:29 +0000 (18:35 +0000)]
* dcache.c (state_chars): New static global.
(ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
All uses updated.
(dcache_info): Print cache state as mnemonically useful letters instead
of magic numbers.
* doc/gdb.texinfo (info dcache): Update.
devans [Tue, 23 Sep 2008 18:35:11 +0000 (18:35 +0000)]
* dcache.c (state_chars): New static global.
(ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
All uses updated.
(dcache_info): Print cache state as mnemonically useful letters instead
of magic numbers.
* doc/gdb.texinfo (info dcache): Update.
devans [Tue, 23 Sep 2008 17:36:50 +0000 (17:36 +0000)]
* dwarf2read.c (comp_unit_head): Reorganize for better packing.
amodra [Tue, 23 Sep 2008 00:00:07 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 23 Sep 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
kseitz [Mon, 22 Sep 2008 18:32:41 +0000 (18:32 +0000)]
* generic/gdbtk-cmds.c (gdb_clear_file): The global "attach_flag"
is now per-inferior.
tromey [Mon, 22 Sep 2008 18:18:06 +0000 (18:18 +0000)]
* symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
printf_filtered.
cgf [Mon, 22 Sep 2008 16:55:30 +0000 (16:55 +0000)]
* setup2.sgml: Clarify heap allocation.
ian [Mon, 22 Sep 2008 16:37:41 +0000 (16:37 +0000)]
* 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.
sandra [Mon, 22 Sep 2008 16:31:00 +0000 (16:31 +0000)]
2008-09-22 Sandra Loosemore <sandra@codesourcery.com>
gdb/doc
* gdb.texinfo (Packets): Add info on thread-id syntax and
multiprocess extensions.
<D>: Document multiprocess form of packet.
<H>: Use thread-id syntax.
<T>: Likewise.
<vCont>: Likewise. Note this is required for multiprocess.
<vKill>: New packet.
(Stop Reply Packets) <T>: Use thread-id syntax.
<W>: Document multiprocess form of reply.
<X>: Likewise.
(General Query Packets) <qC>: Use thread-id syntax.
<qfThreadInfo>: Likewise.
<qGetTLSAddr>: Likewise.
<qP>: Likewise.
<qSupported>: Add "multiprocess" feature.
<qThreadExtraInfo>: Use thread-id syntax.
palves [Mon, 22 Sep 2008 15:26:52 +0000 (15:26 +0000)]
* infrun.c (follow_exec): Don't do a generic mourn. Instead
inline the required bits.
* breakpoint.h (enum inf_context): Add inf_execd.
palves [Mon, 22 Sep 2008 15:25:54 +0000 (15:25 +0000)]
* infrun.c (handle_inferior_event): In the follow exec case,
context-switch before doing anything else.
palves [Mon, 22 Sep 2008 15:24:49 +0000 (15:24 +0000)]
* top.c (any_thread_of, kill_or_detach): New functions.
(quit_target): Iterate over all inferiors, killing or detaching
accordingly.
palves [Mon, 22 Sep 2008 15:21:30 +0000 (15:21 +0000)]
Remove the attach_flag global, and make it per-inferior.
* inferior.h (attach_flag): Delete.
(inferior_process): Declare.
* solib.c (update_solib_list): Adjust.
* gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
* inf-ptrace.c (inf_ptrace_detach): Adjust.
(inf_ptrace_files_info): Get it from the current inferior.
* inf-ttrace.c (inf_ttrace_attach): Adjust.
(inf_ttrace_files_info): Get it from the current
inferior.
* inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
(clear_sigint_trap): Get it from the current process.
* remote.c (extended_remote_attach_1)
(extended_remote_create_inferior_1): Adjust.
* top.c (quit_confirm, quit_target): Get it from the current inferior.
* procfs.c (do_detach): Adjust.
(procfs_wait): Get it from the event inferior.
(procfs_files_info): Get it from the current inferior.
* nto-procfs.c (procfs_files_info): Likewise.
(procfs_attach): Adjust. Set the attach_flag here.
(do_attach): Don't set it here.
(procfs_detach): Don't clear it.
(procfs_mourn_inferior): Don't clear it.
* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
* target.c (attach_flag): Delete.
(generic_mourn_inferior): Don't clear it.
* win32-nat.c (get_win32_debug_event): Get it from the event
process.
(do_initial_win32_stuff): Add attaching argument. Set attach_flag
in the inferior accordingly.
(win32_attach): Don't set the attach_flag here. Pass 1 to
do_intial_win32_stuff.
(win32_files_info): Get it from the current inferior.
(win32_create_inferior): Dont clear attach_flag here. Pass 0 to
do_intial_win32_stuff.
palves [Mon, 22 Sep 2008 15:20:07 +0000 (15:20 +0000)]
Make the stop_soon global be per-inferior instead.
* infcmd.c (attach_command_post_wait): Adjust.
(attach_command): Likewise.
* inferior.h (stop_soon): Delete.
(struct inferior): Add stop_soon member.
* infrun.c (stop_soon): Delete.
(clear_proceed_status, start_remote)
(fetch_inferior_event, handle_inferior_event): Adjust.
(signal_stop_state): Don't check stop_soon here. Check in callers
instead.
(save_inferior_status, restore_inferior_status): Adjust.
* linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
signals to common code if starting up the inferior.
* inferior.h (struct inferior_info): Added stop_soon member.
* inferior.c (add_inferior) Clear stop_soon.
* mips-tdep.c (heuristic_proc_start): Adjust.
* nto-procfs.c (procfs_create_inferior): Adjust.
* solib-irix.c (irix_solib_create_inferior_hook): Adjust.
* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
* solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
* solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
* win32-nat.c (do_initial_win32_stuff): Adjust.
* alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
palves [Mon, 22 Sep 2008 15:18:30 +0000 (15:18 +0000)]
Implement remote multi-process extensions.
* remote.c (struct remote_state): Add extended and
multi_process_aware fields.
(remote_multi_process_p): New.
(PACKET_vKill): New.
(record_currthread): Use thread_change_ptid. Notice new
inferiors.
(set_thread, remote_thread_alive): Use write_ptid.
(write_ptid, read_ptid): New.
(remote_current_thread, remote_threads_extra_info): Use them.
(remote_threads_info): Likewise. Detect new inferiors.
(remote_start_remote): Add inferior to inferior list.
(remote_multi_process_feature): New.
(remote_protocol_features): Add "multiprocess" feature.
(remote_query_supported): Pass "multiprocess+" as supported
features.
(remote_open_1): Clear multi_process_aware. Set extended
accordingly.
(remote_detach_1): Detach current process. Use extended packet
format for extended-remote multi-process. Detach process from the
inferior list. Only mourn after printing output.
(extended_remote_attach_1): Add process to the inferior list.
(remote_vcont_resume): Use write_ptid to pass the thread ids.
(remote_wait): Use read_ptid. Implement the extended
multi-process extension format of the 'W' and 'X' reply packets.
Remove exited inferiors from inferior list.
(remote_xfer_memory): Set general thread.
(remote_vkill): New.
(extended_remote_kill): New.
(remote_mourn_1): Discard all inferiors.
(select_new_thread_callback): New.
(extended_remote_mourn_1): If there are more processes to debug,
switch to a thread in another process, and don't pop the target.
(extended_remote_create_inferior_1): Add the new process to the
inferior list.
(remote_stopped_by_watchpoint): Indenting.
(remote_xfer_partial): Set the general thread.
(remote_pid_to_str): If the remote is multi-process aware, print
the process id as well as the thread id.
(remote_get_thread_local_address): Use write_ptid.
(init_extended_remote_ops): Register extended_remote_kill.
(_initialize_remote): Register new packets. Change
magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
member to 42000.
* thread.c (thread_change_ptid): Also account for the inferior pid
changing.
* inferior.h (discard_all_inferiors): Declare.
* inferior.c (discard_all_inferiors): New.
palves [Mon, 22 Sep 2008 15:16:51 +0000 (15:16 +0000)]
* gnu-nat.c (gnu_attach): Add process to inferiors table.
(gnu_detach): Remove it.
* go32-nat.c (go32_create_inferior): Add process to gdb's inferior
table.
* inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
to inferior table accordingly.
(inf_ptrace_attach): Add new process to inferior table.
(inf_ptrace_detach): Remove it.
* inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
to inferior table accordingly.
(inf_ttrace_attach): Add process to inferior table.
(inf_ttrace_detach): Remove it.
* linux-fork.c (init_fork_list): Delete any left over inferior.
(linux_fork_mourn_inferior, detach_fork_command): Also delete
processes from inferior list.
* monitor.c (monitor_open): Add process to inferior list.
(monitor_close): Remove it.
* nto-procfs.c (procfs_attach): Add process to inferior list.
Find threads after pushing the target.
(procfs_detach): Remove process from inferior list.
(procfs_create_inferior): Add process to inferior list.
* procfs.c (procfs_detach): Remove process from inferior list.
(do_attach): Add process to inferior list.
* remote-sim.c (sim_create_inferior): Add process to inferior list.
(gdbsim_close): Remove it.
* target.c (generic_mourn_inferior): If inferior_ptid is not
null_ptid, remove the corresponding inferior from inferior list.
* win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
(win32_detach): Remove it.
* linux-nat.c (linux_child_follow_fork): Delete and add inferiors
to inferior list accordingly.
* fork-child.c (fork_inferior): Add process to inferior list.
* corelow.c (CORELOW_PID): Define.
(core_close): Remove core from inferior list.
(core_open): Add it.
palves [Mon, 22 Sep 2008 15:12:18 +0000 (15:12 +0000)]
gdb/
* inferior.h: Forward declare struct ui_out.
Forward declare struct private_inferior.
(struct inferior): New.
(init_inferior_list, add_inferior, add_inferior_silent)
(delete_inferior, delete_inferior_silent, detach_inferior)
(gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
(valid_inferior_id, find_inferior_pid): New functions.
(inferior_callback_func): New typedef.
(iterate_over_inferiors, print_inferior, have_inferiors)
(current_inferior): New functions.
* inferior.c: New file.
* Makefile.in (SFILES): Add inferior.c.
(COMMON_OBS): Add inferior.o.
gdb/doc/
* gdb.texinfo (Inferiors): New section.
jlarmour [Mon, 22 Sep 2008 15:03:06 +0000 (15:03 +0000)]
* arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
instead of determining symbol and line info directly.
* MAINTAINERS: Update my email address.
jlarmour [Mon, 22 Sep 2008 15:02:54 +0000 (15:02 +0000)]
* arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
instead of determining symbol and line info directly.
jlarmour [Mon, 22 Sep 2008 15:02:04 +0000 (15:02 +0000)]
Update my email address.
drow [Mon, 22 Sep 2008 14:56:15 +0000 (14:56 +0000)]
* symtab.c (skip_prologue_using_sal): Treat two consecutive lines
at the same address as a prologue marker. Do not skip an entire
function.
ams [Mon, 22 Sep 2008 13:36:28 +0000 (13:36 +0000)]
2008-09-22 Andrew Stubbs <ams@codesourcery.com>
* frame.c (get_frame_register_bytes): Comment improvments.
palves [Mon, 22 Sep 2008 11:00:39 +0000 (11:00 +0000)]
gdb/
* linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
all-stop mode.
gdb/testsuite/
* lib/mi-support.exp (mi_expect_interrupt): New.
(mi_reverse_list, mi_check_thread_states): New, moved and renamed
from gdb.mi/mi-nonstop.exp.
* gdb.mi/mi-nsintrall.exp, gdb.mi/nsintrall.c: New.
* gdb.mi/mi-nonstop.exp (myreverse, check_thread_states): Moved to
lib/mi-support.exp.
Use mi_check_thread_states throughout. Avoid ".*" and do not
require an anchor after -exec-run.
gdbadmin [Mon, 22 Sep 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 22 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
ironhead [Sun, 21 Sep 2008 16:56:44 +0000 (16:56 +0000)]
2008-09-21 Chris Sutcliffe <ir0nh34d@users.sf.net>
* incude/sspi.h: include subauth.h to fix issue of UNICODE_STRING being
undefined.
gdbadmin [Sun, 21 Sep 2008 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sun, 21 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
rsandifo [Sat, 20 Sep 2008 09:47:43 +0000 (09:47 +0000)]
ld/testsuite/
* ld-mips-elf/reloc-estimate-1.d: Make endian-neutral.
jkratoch [Sat, 20 Sep 2008 08:42:53 +0000 (08:42 +0000)]
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'.
amodra [Sat, 20 Sep 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 20 Sep 2008 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
ericb [Fri, 19 Sep 2008 23:29:24 +0000 (23:29 +0000)]
* errno.cc (_sys_errlist): Add ECANCELED, ENOTRECOVERABLE, EOWNERDEAD.
ccoutant [Fri, 19 Sep 2008 22:54:57 +0000 (22:54 +0000)]
Add plugin functionality for link-time optimization (LTO).
include/:
* plugin-api.h: New file.
gold/:
* 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.
keithmarshall [Fri, 19 Sep 2008 22:41:01 +0000 (22:41 +0000)]
keithmarshall [Fri, 19 Sep 2008 21:32:42 +0000 (21:32 +0000)]
ams [Fri, 19 Sep 2008 18:33:10 +0000 (18:33 +0000)]
2008-09-19 Andrew Stubbs <ams@codesourcery.com>
* MAINTAINERS: Update my email address.