This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
gdb and binutils branch master updated. 31f628ae8f5aada207d489fbcf5436bdc3b4b3f7
- From: qiyao at sourceware dot org
- To: gdb-cvs at sourceware dot org
- Date: 12 Jun 2014 07:34:50 -0000
- Subject: gdb and binutils branch master updated. 31f628ae8f5aada207d489fbcf5436bdc3b4b3f7
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".
The branch, master has been updated
via 31f628ae8f5aada207d489fbcf5436bdc3b4b3f7 (commit)
via cde5ef40f807cf37ac4fc5adcf621c615049eda9 (commit)
via 576ea0910f0bdb3b4705d6faa24d30c86ccf7a09 (commit)
via 827f100cee10ed58ef9d22de35ba1d61db73e541 (commit)
via e525021603958709381fc4dc296cc2586aaa5dd7 (commit)
via 5a2e0d6e89f69f0c3d013cf43f3bd3d97b5e628b (commit)
from c151b1c645a87136b61d9c16741b40f59694ed02 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=31f628ae8f5aada207d489fbcf5436bdc3b4b3f7
commit 31f628ae8f5aada207d489fbcf5436bdc3b4b3f7
Author: Yao Qi <yao@codesourcery.com>
Date: Sat Nov 23 16:05:58 2013 +0800
Use varobj_is_dynamic_p more widely
Use varobj_is_dynamic_p more widely so that the callers of
varobj_is_dynamic_p are unchanged when we add available-children-only
stuff in varobj_is_dynamic_p.
gdb:
2014-06-12 Yao Qi <yao@codesourcery.com>
* varobj.c (varobj_get_num_children): Call
varobj_is_dynamic_p.
(varobj_list_children): Likewise.
(varobj_update): Likewise. Update comments.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=cde5ef40f807cf37ac4fc5adcf621c615049eda9
commit cde5ef40f807cf37ac4fc5adcf621c615049eda9
Author: Yao Qi <yao@codesourcery.com>
Date: Sat Nov 23 15:58:04 2013 +0800
Rename varobj_pretty_printed_p to varobj_is_dynamic_p
We think varobj with --available-children-only behaves like a dynamic
varobj, so dyanmic varobj is not pretty-printer specific. We rename
varobj_pretty_printed_p to varobj_is_dynamic_p, so that we can handle
available-children-only checking in varobj_is_dynamic_p in the next
patch.
gdb:
2014-06-12 Yao Qi <yao@codesourcery.com>
* varobj.c (varobj_pretty_printed_p): Rename to ...
(varobj_is_dynamic_p): ... this. New function.
* varobj.h (varobj_pretty_printed_p): Remove declaration.
(varobj_is_dynamic_p): Declare.
* mi/mi-cmd-var.c (print_varobj): All callers updated.
(mi_print_value_p, varobj_update_one): Likewise.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=576ea0910f0bdb3b4705d6faa24d30c86ccf7a09
commit 576ea0910f0bdb3b4705d6faa24d30c86ccf7a09
Author: Yao Qi <yao@codesourcery.com>
Date: Fri Aug 30 16:30:32 2013 +0800
Remove #if HAVE_PYTHON
This patch removes some unnecessary "#if HAVE_PYTHON" so that more
code is generalized.
gdb:
2014-06-12 Pedro Alves <pedro@codesourcery.com>
Yao Qi <yao@codesourcery.com>
* varobj.c: Remove "#if HAVE_PYTHON" and "#endif".
(varobj_get_iterator): Wrap up code for pretty-printer by
"#if HAVE_PYTHON" and "#endif".
(update_dynamic_varobj_children): Likewise.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=827f100cee10ed58ef9d22de35ba1d61db73e541
commit 827f100cee10ed58ef9d22de35ba1d61db73e541
Author: Yao Qi <yao@codesourcery.com>
Date: Tue Nov 12 20:49:52 2013 +0800
Iterate over 'struct varobj_item' instead of PyObject
In previous patch, "saved_item" is still a PyOjbect and iteration is
still performed over PyObject. This patch continues to decouple
iteration from python code, so it changes its type to "struct
varobj_item *", so that the iterator itself is independent of python.
V2:
- Call varobj_delete_iter in free_variable.
- Fix changelog entries.
- Use XNEW.
V3:
- Return NULL early in py_varobj_iter_next if gdb_python_initialized
is false.
gdb:
2014-06-12 Pedro Alves <pedro@codesourcery.com>
Yao Qi <yao@codesourcery.com>
* python/py-varobj.c (py_varobj_iter_next): Return NULL if
gdb_python_initialized is false. Move some code from varobj.c.
* varobj-iter.h (struct varobj_item): Moved from varobj.c.
* varobj.c: Move "varobj-iter.h" inclusion earlier.
(struct varobj_item): Moved to varobj-iter.h".
(varobj_clear_saved_item): New function.
(update_dynamic_varobj_children): Move python-related code to
py-varobj.c.
(free_variable): Call varobj_clear_saved_item and
varobj_iter_delete.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e525021603958709381fc4dc296cc2586aaa5dd7
commit e525021603958709381fc4dc296cc2586aaa5dd7
Author: Yao Qi <yao@codesourcery.com>
Date: Fri Aug 30 09:44:46 2013 +0800
Generalize varobj iterator
This patch generalizes varobj iterator, in a python-independent way.
Note varobj_item is still a typedef of PyObject, we can only focus on
API changes, and leave the data type changes to the next patch. As a
result, we include "varobj-iter.h" after the typedef of PyObject in
varobj.c, but it is an intermediate state. Finally, varobj-iter.h is
independent of PyObject.
This change is helpful to move some python-related code out of
varobj.c.
V2:
- Fix a missing cleanup.
- Fix typos.
- Use XNEW.
- Check against NULL explicitly.
- Update copyright year for new added files.
V3:
- Call PyGILState_Ensure before Py_XDECREF.
- Use CPYCHECKER_STEALS_REFERENCE_TO_ARG.
- Code indentation.
V4:
- use varobj_ensure_python_env instead of PyGILState_Ensure.
gdb:
2014-06-12 Pedro Alves <pedro@codesourcery.com>
Yao Qi <yao@codesourcery.com>
* Makefile.in (SUBDIR_PYTHON_OBS): Add "py-varobj.o".
(SUBDIR_PYTHON_SRCS): Add "python/py-varobj.c".
(HFILES_NO_SRCDIR): Add "varobj-iter.h".
(py-varobj.o): New rule.
* python/py-varobj.c: New file.
* python/python-internal.h (py_varobj_get_iterator): Declare.
* varobj-iter.h: New file.
* varobj.c: Include "varobj-iter.h"
(struct varobj) <child_iter>: Change its type from "PyObject *"
to "struct varobj_iter *".
<saved_item>: Likewise.
[HAVE_PYTHON] (varobj_ensure_python_env): Make it extern.
[HAVE_PYTHON] (varobj_get_iterator): New function.
(update_dynamic_varobj_children) [HAVE_PYTHON]: Move
python-specific code to python/py-varobj.c.
(install_visualizer): Call varobj_iter_delete instead of
Py_XDECREF.
* varobj.h (varobj_ensure_python_env): Declare.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5a2e0d6e89f69f0c3d013cf43f3bd3d97b5e628b
commit 5a2e0d6e89f69f0c3d013cf43f3bd3d97b5e628b
Author: Yao Qi <yao@codesourcery.com>
Date: Tue Sep 10 08:58:23 2013 +0800
Use 'struct varobj_item' to represent name and value pair
Hi,
name and value pair is widely used in varobj.c. This patch is to add
a new struct varobj_item to represent them, so that the number of
function arguments can be reduced. Finally, the iteration is done on
'struct varobj_item' instead of PyObject after this patch series.
V2:
- Fix changelog entry.
- Fix one grammatical mistake.
gdb:
2014-06-12 Yao Qi <yao@codesourcery.com>
* varobj.c (struct varobj_item): New structure.
(create_child_with_value): Update declaration.
(varobj_add_child): Replace arguments 'name' and 'value' with
'item'. All callers updated.
(install_dynamic_child): Likewise.
(update_dynamic_varobj_children): Likewise.
(varobj_add_child): Likewise.
(create_child_with_value): Likewise.
-----------------------------------------------------------------------
Summary of changes:
gdb/ChangeLog | 71 +++++++++++++
gdb/Makefile.in | 13 ++-
gdb/mi/mi-cmd-var.c | 6 +-
gdb/python/py-varobj.c | 204 ++++++++++++++++++++++++++++++++++++
gdb/python/python-internal.h | 5 +
gdb/varobj-iter.h | 72 +++++++++++++
gdb/varobj.c | 238 ++++++++++++++++--------------------------
gdb/varobj.h | 4 +-
8 files changed, 457 insertions(+), 156 deletions(-)
create mode 100644 gdb/python/py-varobj.c
create mode 100644 gdb/varobj-iter.h
hooks/post-receive
--
gdb and binutils