Commit graph

30319 commits

Author SHA1 Message Date
Jan Kratochvil
0511cc75f8 gdb/doc/
* gdb.texinfo (Auto-loading safe path): Replace @itemize @bullet
	by @table @asis.  Fix formatting of one item.
2012-04-22 15:49:21 +00:00
gdbadmin
4ff4b0eb41 *** empty log message *** 2012-04-22 00:00:32 +00:00
Paul N. Hilfinger
c8ea197278 Add proper handling for internal functions and STT_GNU_IFUNC symbols in Ada mode.
The code for handling calls to internal functions (esp., Python
functions) and for handling STT_GNU_IFUNC had not been added to the Ada
expression evaluator.  This change adapts them from eval.c.

gdb/Changelog:

        * ada-lang.c (ada_evaluate_subexp): Add cases for
          TYPE_CODE_INTERNAL_FUNCTION and for TYPE_GNU_IFUNC, following
          their treatment in eval.c.
2012-04-21 22:12:59 +00:00
David S. Miller
8d1b3521db Handle sparc compare-and-branch
SPARC-T4 adds a "compare and branch" instruction which fuses
a compare and a branch instruction into one.  The branch
is non-delayed, there are no anulling facilities, and the
displacement is 10-bits.

This also corrects the existing bit test for Branch on
Integer Register.  The distinguising characteristic between
Branch on Integer Register and Compare-and-Branch is bit
28.  The existing code was checking bit 24 for zero, but
that's pointless because bit 24 is already covered by
the "X_OP2 (insn) == 3" test.

gdb/

	* sparc-tdep.c (X_DISP10): Define.
	(sparc_analyze_control_transfer): Handle compare-and-branch.
2012-04-21 19:03:52 +00:00
gdbadmin
4272ccafdd *** empty log message *** 2012-04-21 00:00:34 +00:00
Jonathan Larmour
03145bf42d * features/Makefile (WHICH): Add arm-with-m and arm-with-m-fpa-layout.
* arm-tdep.c (arm_register_g_packet_guesses): Fix comment.
2012-04-20 23:39:58 +00:00
Maciej W. Rozycki
004159a2dc * mips-tdep.c (mips_float_register_p): New function.
(mips_convert_register_float_case_p): Use mips_float_register_p.
	(mips_register_type): Likewise.
	(mips_print_register): Likewise.
	(print_gp_register_row): Likewise.
	(mips_print_registers_info): Likewise.
2012-04-20 23:31:39 +00:00
Maciej W. Rozycki
7f0e6aaed2 * mips-tdep.c (mips_elf_make_msymbol_special): Fix identification
of mips16 symbols.
2012-04-20 23:01:51 +00:00
Andrew Pinski
bc17beea2d 2012-04-20 Andrew Pinski <apinski@cavium.com>
* MAINTAINERS (Write After Approval): Add myself to the list.
2012-04-20 22:59:48 +00:00
Sergio Durigan Junior
1730a5a56b 2012-04-20 Sergio Durigan Junior <sergiodj@redhat.com>
* MAINTAINERS: Update my e-mail address.
2012-04-20 22:56:45 +00:00
Pedro Alves
38ea300a20 2012-04-20 Pedro Alves <palves@redhat.com>
gdb/
	* acx_configure_dir.m4 (ACX_CONFIGURE_DIR): Handle absolute
	$srcdir.
	* configure: Regenerate.

	gdb/gdbserver/
	* configure: Regenerate.
2012-04-20 17:58:49 +00:00
Sergio Durigan Junior
111dfaae04 2012-04-20 Sergio Durigan Junior <sergiodj@redhat.com>
* cp-support.h: Include `gdb_vecs.h'.  Delete `const_char_ptr' VEC
	declaration.
	* gdb_vecs.h: Declare `const_char_ptr' VEC.
2012-04-20 16:57:17 +00:00
Pedro Alves
a09130f92f whitespace/tabify 2012-04-20 16:36:24 +00:00
Jan Kratochvil
4fb2c64af1 gdb/
Fix compilation compatibility with python-2.4
	* python/py-type.c (convert_field): Cast ADDRSTRING for
	PyObject_SetAttrString as non-const.  New comment.
2012-04-20 07:17:58 +00:00
gdbadmin
d5003ebff0 *** empty log message *** 2012-04-20 00:00:33 +00:00
Tom Tromey
6328eb3805 * top.c (quit_target): Use all_cleanups.
* main.c (captured_command_loop): Use all_cleanups.
	* exceptions.c (throw_exception): Use all_cleanups.
2012-04-19 20:18:26 +00:00
Pedro Alves
c971b7fa72 2012-04-19 Pedro Alves <palves@redhat.com>
gdb/
	* Makefile.in (GNULIB_BUILDDIR): New.
	(LIBGNU, INCGNU, GNULIB_H): Adjust.
	(SUBDIRS): Add $(GNULIB_BUILDDIR).
	(CLEANDIRS). Remove gnulib/import.
	(REQUIRED_SUBDIRS): Replace gnulib/import with $(GNULIB_BUILDDIR).
	(all-lib): Ditto.
	(distclean): Remove the $(GNULIB_BUILDDIR) directory.
	(gnulib/import/Makefile): Replace gnulib/import with
	$(GNULIB_BUILDDIR).  Set CONFIG_FILES to just Makefile.
	(ACLOCAL_AMFLAGS): Remove '-I gnulib/import/m4'.
	(aclocal_m4_deps): Remove the gnulib dependencies.  Add
	acx_configure_dir.m4.
	* acinclude.m4: Include acx_configure_dir.m4.
	* acx_configure_dir.m4: New file.
	* aclocal.m4: Regenerate.
        * configure.ac: Remove gl_EARLY, gl_INIT and AM_INIT_AUTOMAKE
        calls.  Configure gnulib using ACX_CONFIGURE_DIR.
        (GNULIB): New variable.
        (GNULIB_STDINT_H): Adjust.
        (AC_OUTPUT): Don't output gnulib/Makefile.
        * gdb/defs.h: Include build-gnulib/config.h.
        * aclocal.m4: Regenerate.
        * config.in: Regenerate.
        * configure: Regenerate.

        * gnulib/Makefile.in: New file.
        * gnulib/configure.ac: New file.
        * gnulib/aclocal.m4: New file.
        * gnulib/config.in: New file.
        * gnulib/configure: New file.
	* gnulib/: Re-run gnulib-tool to adjust.

        gdb/gdbserver/
        * Makefile.in (GNULIB_BUILDDIR): New.
	(LIBGNU, INCGNU, GNULIB_H): Adjust.
        (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
        (all, install-only, uninstall, clean-info, all-lib, clean): No
        longer pass GNULIB_FLAGS_TO_PASS.  Use subdir_do.
        (maintainer-clean realclean distclean): Use subdir_do.
        (subdir_do): New.
        (gnulib/import/Makefile): Adjust.  Replace gnulib/import with
	$(GNULIB_BUILDDIR).  Don't pass argument to config.status.
        * acinclude.m4: Include acx_configure_dir.m4.
        * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
        calls.  Call AC_PROG_RANLIB.  Configure gnulib using
        ACX_CONFIGURE_DIR.
        (GNULIB): New.
        (GNULIB_STDINT_H): Adjust.
        (AC_OUTPUT): Don't output gnulib/Makefile anymore.
        * gdbreplay.c: Include build-gnulib/config.h.
        * server.h: Likewise.
        * aclocal.m4: Regenerate.
        * config.in: Regenerate.
        * configure: Regenerate.
2012-04-19 19:34:52 +00:00
Pedro Alves
9d28a8c73b Revert commit that should not have gone in. 2012-04-19 19:32:15 +00:00
Doug Evans
b10faa68a4 * cleanups.h (struct cleanup): Move to cleanups.c.
(make_cleanup_dtor_ftype): New typedef.
	(make_cleanup_dtor): Use it.
	(ALL_CLEANUPS): Replace with ...
	(all_cleanups): ... this.  Declare.  All uses updated.
	* cleanups.c: #include "gdb_assert.h".
	(sentinel_cleanup): New static global.
	(SENTINEL_CLEANUP): Define.
	(cleanup_chain, final_cleanup_chain): Initialize to SENTINEL_CLEANUP.
	(make_my_cleanup2): Assert result is non-NULL.
	(all_cleanups): New function.
	(save_my_cleanups): Initialize new chain to SENTINEL_CLEANUP instead
	of NULL.
2012-04-19 19:11:02 +00:00
Pedro Alves
ff188ee48b 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (GNULIB_BUILDDIR): New.
	(LIBGNU, INCGNU, GNULIB_H): Adjust.
	(SUBDIRS): Add $(GNULIB_BUILDDIR).
	(CLEANDIRS). Remove gnulib/import.
	(REQUIRED_SUBDIRS): Replace gnulib/import with $(GNULIB_BUILDDIR).
	(all-lib): Ditto.
	(distclean): Remove the $(GNULIB_BUILDDIR) directory.
	(gnulib/import/Makefile): Replace gnulib/import with
	$(GNULIB_BUILDDIR).  Set CONFIG_FILES to just Makefile.
	(ACLOCAL_AMFLAGS): Remove '-I gnulib/import/m4'.
	(aclocal_m4_deps): Remove the gnulib dependencies.  Add
	acx_configure_dir.m4.
	* acinclude.m4: Include acx_configure_dir.m4.
	* acx_configure_dir.m4: New file.
	* aclocal.m4: Regenerate.
        * configure.ac: Remove gl_EARLY, gl_INIT and AM_INIT_AUTOMAKE
        calls.  Configure gnulib using ACX_CONFIGURE_DIR.
        (GNULIB): New variable.
        (GNULIB_STDINT_H): Adjust.
        (AC_OUTPUT): Don't output gnulib/Makefile.
        * gdb/defs.h: Include build-gnulib/config.h.
        * acx_configure_dir.m4: New file.
        * aclocal.m4: Regenerate.
        * config.in: Regenerate.
        * configure: Regenerate.

        * gnulib/Makefile.in: New file.
        * gnulib/configure.ac: New file.
        * gnulib/aclocal.m4: New file.
        * gnulib/config.in: New file.
        * gnulib/configure: New file.
	* gnulib/: Re-run gnulib-tool to adjust.

        gdbserver/
        * Makefile.in (GNULIB_BUILDDIR): New.
	(LIBGNU, INCGNU, GNULIB_H): Adjust.
        (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
        (all, install-only, uninstall, clean-info, all-lib, clean): No
        longer pass GNULIB_FLAGS_TO_PASS.  Use subdir_do.
        (maintainer-clean realclean distclean): Use subdir_do.
        (subdir_do): New.
        (gnulib/import/Makefile): Adjust.  Replace gnulib/import with
	$(GNULIB_BUILDDIR).  Don't pass argument to config.status.
        * acinclude.m4: Include acx_configure_dir.m4.
        * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
        calls.  Call AC_PROG_RANLIB.  Configure gnulib using
        ACX_CONFIGURE_DIR.
        (GNULIB): New.
        (GNULIB_STDINT_H): Adjust.
        (AC_OUTPUT): Don't output gnulib/Makefile anymore.
        * gdbreplay.c: Include build-gnulib/config.h.
        * server.h: Likewise.
        * aclocal.m4: Regenerate.
        * config.in: Regenerate.
        * configure: Regenerate.
2012-04-19 17:18:18 +00:00
Pedro Alves
e22314be6a 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (HFILES_NO_SRCDIR): Remove gnulib/wchar.in.h.
	Adjust paths to gnulib imported files.
C
2012-04-19 17:15:07 +00:00
Pedro Alves
d8c267cc74 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (HFILES_NO_SRCDIR): Remove gnulib/wchar.in.h.
	Adjust paths to gnulib imported files.
2012-04-19 16:55:28 +00:00
Pedro Alves
809277f8ce 2012-04-19 Pedro Alves <palves@redhat.com>
gdb/
	* gnulib/: Move whole directory ...
	* gnulib/import/: ... here, and re-rerun gnulib-tool to adjust.
	* Makefile.in (LIBGNU, INCGNU, GNULIB_H, CLEANDIRS)
	(REQUIRED_SUBDIRS, all-lib, gnulib/Makefile, ACLOCAL_AMFLAGS)
	(aclocal_m4_deps): Adjust.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* configure.ac: Adjust AC_OUTPUT output.

	gdbserver/
	* Makefile.in (LIBGNU, INCGNU): Adjust.
	(GNULIB_FLAGS_TO_PASS, GNULIB_H): Adjust.
	(all, install-only, uninstall, clean-info, all-lib, clean)
	(maintainer-clean, Makefile, gnulib/Makefile): Adjust.
	* configure.ac: Adjust AC_OUTPUT output.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2012-04-19 15:27:52 +00:00
Pedro Alves
fd9bb8b878 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (generated_files): New.
	(server_h): Remove the explicit dependency on config.h, and depend
	on $generated_files.
2012-04-19 13:26:25 +00:00
Pedro Alves
1c298c6671 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (INCGNU): Add -Ignulib.
2012-04-19 12:10:06 +00:00
Pedro Alves
57c4b50b88 2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
	(INCGNU): ... this, and spell out -I here.
	(GNULIB_LIB): Rename to ...
	(LIBGNU): ... this.
	(INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
2012-04-19 12:02:56 +00:00
Pedro Alves
1030e047aa 2012-04-19 Pedro Alves <palves@redhat.com>
* config.in: Regenerate.
2012-04-19 11:58:57 +00:00
Pedro Alves
71622373ce Move entries to right place. Drop config.in entry, as I forgot to
actually do what it says.
2012-04-19 11:57:39 +00:00
Pedro Alves
447d431953 2012-04-19 Pedro Alves <palves@redhat.com>
* configure.ac: Remove AC_CHECK_DECLS check for memmem.
	* server.h (memmem): Remove declaration.
	* config.in: Regenerate.
	* configure: Regenerate.
2012-04-19 10:23:03 +00:00
Yao Qi
aad9eab9f2 gdb:
* Makefile.in (SFILES): Add common/vec.c and remove vec.c.
        (vec.o): New rule.
        * vec.c: Move it ...
        * common/vec.c: ... here.
        * vec.h: Move it ...
        * common/vec.h: ... here.

gdb/gdbserver:

        * Makefile.in (SFILES): Add common/vec.c.
        (OBS): Add vec.o.
        (vec.o): New rule.
2012-04-19 05:58:52 +00:00
Yao Qi
3e10640f3c gdb/gdbserver/
* remote-utils.c (prepare_resume_reply): Replace with macro
	target_core_of_thread.
	* server.c (handle_qxfer_threads_proper): Likewise.
	* target.h (traget_core_of_thread): New macro.
2012-04-19 05:05:11 +00:00
Yao Qi
48fe46695a gdb/
* gdb-code-style.el: New.
2012-04-19 01:58:07 +00:00
gdbadmin
9f910cf7b3 *** empty log message *** 2012-04-19 00:00:33 +00:00
Pedro Alves
770d76d7b2 2012-04-18 Pedro Alves <palves@redhat.com>
Update gnulib from latest git.
	(639ea5ae15e39fe48d43e04864b2997301e4b969)

	* gnulib/Makefile.am: Update.
	* gnulib/dummy.c: Update.
	* gnulib/extra/arg-nonnull.h: Update.
	* gnulib/extra/c++defs.h: Update.
	* gnulib/extra/update-copyright: Update.
	* gnulib/extra/warn-on-use.h: Update.
	* gnulib/inttypes.in.h: Update.
	* gnulib/m4/00gnulib.m4: Update.
	* gnulib/m4/extensions.m4: Update.
	* gnulib/m4/gnulib-cache.m4: Update.
	* gnulib/m4/gnulib-common.m4: Update.
	* gnulib/m4/gnulib-comp.m4: Update.
	* gnulib/m4/gnulib-tool.m4: Update.
	* gnulib/m4/include_next.m4: Update.
	* gnulib/m4/inttypes-pri.m4: Update.
	* gnulib/m4/inttypes.m4: Update.
	* gnulib/m4/longlong.m4: Update.
	* gnulib/m4/memchr.m4: Update.
	* gnulib/m4/memmem.m4: Update.
	* gnulib/m4/mmap-anon.m4: Update.
	* gnulib/m4/multiarch.m4: Update.
	* gnulib/m4/onceonly.m4: Update.
	* gnulib/m4/stddef_h.m4: Update.
	* gnulib/m4/stdint.m4: Update.
	* gnulib/m4/string_h.m4: Update.
	* gnulib/m4/warn-on-use.m4: Update.
	* gnulib/m4/wchar_h.m4: Update.
	* gnulib/m4/wchar_t.m4: Update.
	* gnulib/m4/wint_t.m4: Update.
	* gnulib/memchr.c: Update.
	* gnulib/memmem.c: Update.
	* gnulib/stddef.in.h: Update.
	* gnulib/stdint.in.h: Update.
	* gnulib/str-two-way.h: Update.
	* gnulib/string.in.h: Update.
	* gnulib/wchar.in.h: Update.

	* gnulib/extra/arg-nonnull.h: Delete.
	* gnulib/extra/c++defs.h: Delete.
	* gnulib/extra/warn-on-use.h: Delete.
	* gnulib/m4/wchar_h.m4: Delete.
	* gnulib/m4/wint_t.m4: Delete.
	* gnulib/wchar.in.h: Delete.

	* gnulib/extra/snippets/arg-nonnull.h: New.
	* gnulib/extra/snippets/c++defs.h: New.
	* gnulib/extra/snippets/warn-on-use.h: New.

	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
	* gnulib/Makefile.in: Regenerate.

	* gdbserver/aclocal.m4: Regenerate.
	* gdbserver/config.in: Regenerate.
	* gdbserver/configure: Regenerate.
2012-04-18 20:45:25 +00:00
Pedro Alves
174e088e25 2012-04-18 Pedro Alves <palves@redhat.com>
Reimport the update-copyright module from gnulib
	(250b80067c1e1d8faa0c42fb572f721975b929c5).

	* configure: Regenerate.
	* gnulib/Makefile.am: Update.
	* gnulib/Makefile.in: Regenerate.
	* gnulib/extra/update-copyright: Update.
	* gnulib/m4/gnulib-cache.m4: Update.
	* gnulib/m4/gnulib-comp.m4: Update.
2012-04-18 20:06:39 +00:00
Joel Brobecker
7f53314238 put -lpthread into LIBS instead of CONFIG_LDFLAGS.
The problem showed up on AIX when we switched from the system linker
to GNU ld. What happens is that configure is adding -lpthdebug to
CONFIG_LDFLAGS when AIX thread debugging support is detected.  But
this causes the "-lpthread" switch to be placed at the _before_
GDB's .o files (see Makefile.in):

    INTERNAL_LDFLAGS = [...] $(CONFIG_LDFLAGS)
    [...]
    gdb$(EXEEXT): gdb.o $(LIBGDB_OBS) $(ADD_DEPS) $(CDEPS) $(TDEPLIBS)
            rm -f gdb$(EXEEXT)
            $(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) \
                    -o gdb$(EXEEXT) gdb.o $(LIBGDB_OBS) \
                    $(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)

And as a result of this, the linker reports an error due to some
symbols in aix-thread.o not being satisfied.

This patch adds the "-lpthread" switch to LIBS instead, which should
be the right place to add it.

gdb/ChangeLog (Tristan Gingold):

	* configure.ac (aix): Put -lpthread into libs.
	* configure: Regenerate.
2012-04-18 15:11:59 +00:00
Tom Tromey
001822aa58 * linespec.c (convert_linespec_to_sals): Don't use
SYMBOL_OBJ_SECTION.
	(compare_msymbols): Arguments are minsym_and_objfile, not
	minimal_symbol*.  Don't use SYMBOL_OBJ_SECTION.
2012-04-18 14:56:59 +00:00
Pedro Alves
db026a31e6 2012-04-18 Pedro Alves <palves@redhat.com>
Revert gnulib/ part of:
	2011-01-01  Joel Brobecker  <brobecker@adacore.com>
	Copyright year update in most files (performed by copyright.sh).
2012-04-18 12:09:39 +00:00
Jan Kratochvil
0070f25af7 gdb/doc/
* gdb.texinfo (Auto-loading verbose mode): Fix smallexample typo.
2012-04-18 07:03:58 +00:00
Jan Kratochvil
ac4ea3c206 Fix up comment to match reality. 2012-04-18 07:00:24 +00:00
Jan Kratochvil
12df843f84 gdb/
Fix 64-bit constants on 32-bit hosts.
	* dwarf2read.c (read_unsigned_leb128): Change declaration return type
	from unsigned long to ULONGEST.
	(read_signed_leb128): Change declaration return type from long to
	LONGEST.
	(dwarf2_const_value_attr): Change declaration parameter value from long
	to LONGEST.
	(dwarf2_compute_name): Change variable value from long to LONGEST.
	(read_unsigned_leb128): Change return type, variable result and some
	casts from unsigned long to ULONGEST.
	(read_signed_leb128): Change return type, variable result and some
	casts from long to LONGEST.
	(dwarf2_const_value_data, dwarf2_const_value_attr): Change parameter
	value from long to LONGEST.
	(dwarf2_const_value): Change variable value from long to LONGEST.
	* symmisc.c (print_symbol): Change SYMBOL_VALUE format strings to use
	plongest and hex_string.
	* symtab.h (struct general_symbol_info): Change ivalue from long to
	LONGEST, remove the comment.
	* tracepoint.c (validate_actionline, collect_symbol, scope_info):
	Change SYMBOL_VALUE format strings to use plongest and hex_string.
2012-04-18 06:52:33 +00:00
Jan Kratochvil
efd4ebc341 Forgotten commit for:
gdb/testsuite/
	PR symtab/7259:
	* gdb.base/enumval.c: New test case.
	* gdb.base/enumval.exp: New test case.
2012-04-18 06:51:05 +00:00
Jan Kratochvil
14e75d8ea4 gdb/
PR symtab/7259:
	* ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL.
	* ada-lang.c (ada_discrete_type_high_bound)
	(ada_discrete_type_low_bound): Use TYPE_FIELD_ENUMVAL for
	TYPE_CODE_ENUM.
	(ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL.
	(pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
	* ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST.
	Use TYPE_FIELD_ENUMVAL.
	* ada-valprint.c (print_optional_low_bound, ada_print_scalar)
	(ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
	* c-typeprint.c (c_type_print_base): Move variable lastval to inner
	block, change it to LONGEST.  Use TYPE_FIELD_ENUMVAL for
	TYPE_CODE_ENUM.
	* coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL.
	* dwarf2read.c (process_enumeration_scope): Likewise.
	* gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of
	field.bitpos.
	(class StructMainTypePrettyPrinter): Support also
	FIELD_LOC_KIND_ENUMVAL.
	* gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for
	TYPE_CODE_ENUM.
	(recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
	(copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL.
	* gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL.
	(struct main_type.flds_bnds.fields.loc): Adjust bitpos comment.  New
	field enumval.
	(struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to
	accommodate enumval.
	(struct call_site): Adjust loc_kind to accommodate enumval.
	(FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL)
	(TYPE_FIELD_ENUMVAL): New macros.
	* m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL.
	* mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for
	TYPE_CODE_ENUM.
	* p-typeprint.c (pascal_type_print_base): Likewise.
	* python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use
	enumval.
	* python/lib/gdb/types.py (make_enum_dict): Likewise.
	* python/py-type.c (convert_field): New variable addrstring.  Use
	TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
	(check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL.
	* stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL.
	* typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for
	TYPE_CODE_ENUM.
	* valprint.c (generic_val_print): Likewise.

gdb/testsuite/
	PR symtab/7259:
	* gdb.base/enumval.c: New test case.
	* gdb.base/enumval.exp: New test case.
	* gdb.python/py-type.exp (test_enums): Use field.enumval instead of
	field.bitpos.
2012-04-18 06:46:47 +00:00
Doug Evans
dcc0705263 * dwarf2read.c (lookup_signatured_type): Return NULL instead of 0. 2012-04-18 06:24:48 +00:00
Doug Evans
380bca9753 * dwarf2read.c: Whitespace fixes.
(lookup_signatured_type): Tweak comment.
	(get_die_type_at_offset): Fix comment.
2012-04-18 06:21:09 +00:00
Joel Brobecker
ec92004f95 pspace != NULL failed assertion on ppc-aix
This patch fixes the following problem:

    % gdb foo
    (gdb) b main
    /[...]/progspace.c:216: internal-error: set_current_program_space: Assertion `pspace != NULL' failed.
    A problem internal to GDB has been detected,
    further debugging may prove unreliable.
    Quit this debugging session? (y or n)

The problem happens when we try to get the program space from
a minimal symbol.  For that, we go through the minimal symbol's
obj_section->objfile->pspace.  But the minimal symbol's obj_section
is not set, and thus we somehow get a NULL program space. And
the reason why the obj_section is not set is because the XCOFF
reader did not pass the bfd_section when calling minsyms.c's
prim_record_minimal_symbol_and_info.

gdb/ChangeLog:

        * xcoffread.c (xcoff_secnum_to_sections): New function.
        (secnum_to_section, secnum_to_bfd_section): Reimplement
        using xcoff_secnum_to_sections.  Rename "secnum" parameter
        into "n_scnum".
        (RECORD_MINIMAL_SYMBOL): Delete.
        (record_minimal_symbol): New function.
        (scan_xcoff_symtab): Replace uses of RECORD_MINIMAL_SYMBOL
        by call to record_minimal_symbol and set misc_func_recorded
        to 1.  Set last_csect_sec to the XCOFF section index instead
        of GDB's section_offset index.  Update calls to
        prim_record_minimal_symbol_and_info to pass the BFD section
        as well.
2012-04-18 00:25:09 +00:00
Joel Brobecker
40301fb7ad Unused local variables in xcoffread.c:read_xcoff_symtab
gdb/ChangeLog:

        * xcoffread.c (read_xcoff_symtab): Delete variables
        last_csect_val and last_csect_sec and associated code.
2012-04-18 00:24:57 +00:00
gdbadmin
2c089af076 *** empty log message *** 2012-04-18 00:00:02 +00:00
Doug Evans
58d5e2c3ff * cleanups.c (make_my_cleanup,make_my_cleanup2): Make static.
(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
	* cleanups.h (make_my_cleanup,make_my_cleanup2): Delete
	(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Delete.
2012-04-17 21:24:47 +00:00
Doug Evans
c27f573840 * cleanups.h: New file.
* cleanups.c: New file.
	* Makefile.in (SFILES): Add cleanups.c.
	(HFILES_NO_SRCDIR): Add cleanups.h.
	(COMMON_OBS): Add cleanups.o.
	* defs.h (struct cleanup): Moved to cleanups.h.
	(do_cleanups,do_final_cleanups): Ditto.
	(discard_cleanups,discard_final_cleanups): Ditto
	(make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
	(save_cleanups,save_final_cleanups): Ditto.
	(restore_cleanups,restore_final_cleanups): Ditto.
	(null_cleanup): Ditto.
	(make_my_cleanup,make_my_cleanup2): Ditto.
	(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
	* utils.c (cleanup_chain,final_cleanup_chain): Moved to cleanups.c.
	(do_cleanups,do_final_cleanups): Ditto.
	(discard_cleanups,discard_final_cleanups): Ditto
	(make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
	(save_cleanups,save_final_cleanups): Ditto.
	(restore_cleanups,restore_final_cleanups): Ditto.
	(null_cleanup): Ditto.
	(make_my_cleanup,make_my_cleanup2): Ditto.
	(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
2012-04-17 21:13:20 +00:00