From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 63491 invoked by alias); 31 Mar 2015 22:36:32 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 63473 invoked by uid 89); 31 Mar 2015 22:36:31 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mail-qc0-f202.google.com Received: from mail-qc0-f202.google.com (HELO mail-qc0-f202.google.com) (209.85.216.202) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Tue, 31 Mar 2015 22:36:30 +0000 Received: by qcrw7 with SMTP id w7so2778553qcr.1 for ; Tue, 31 Mar 2015 15:36:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:mime-version:content-type :content-transfer-encoding:message-id:date:to:cc:subject:in-reply-to :references; bh=3Diaf9mm/mnChcI8AvOdsS+vCc7vQG2EHhWXgcjmaog=; b=N7b9b9rDH+7MhLwMJ2uSS/4ORO6clVyaPsRJnkf8Vb9gGp/n6T2IfJHQxEfbO8rIC3 XWrc5FMrDMNqQJBZdKG7Z5WukY3Ti2whUCXCw+sCG25cBvQko8VtLvI02whYXlKdbz6J a16cz3QsYJ51TJJVudbWVVIRuUF9Xvgm0xZuA+pvf3MmvVxDrkErFjvDCGoyB/8jre2W GqYFOb2T6WAjf6KnTYlMr6ZkFJPgETR0Lxm6LJ25uCClhYpEXMQ+LbxKN9ewOCwAioQC I7qCiWnZKonywZvSOBvjKmTDjujfw+zmT4rcdejQeSIAzFpb3BdDJeSr7BzVJ9EO7/Kk Xflg== X-Gm-Message-State: ALoCoQmF3UgYaou80RfDzs5p9zrxyhfbYooCDDhtmCgqYg6aAyA+GiqnH9Yx/1fN1K2vVqnwVrPVZsRFDTIxM5hnZ/N12nr5F9iqmDVafCzWvECg7dnu14RefFt7TrbSbeSIiwr8A1FHLxhbulCsU4dPu0zaXiyguwnhtM/CEEmicRi2iDV6/aQ= X-Received: by 10.52.29.4 with SMTP id f4mr39130772vdh.3.1427841388041; Tue, 31 Mar 2015 15:36:28 -0700 (PDT) Received: from corpmail-nozzle1-2.hot.corp.google.com ([100.108.1.103]) by gmr-mx.google.com with ESMTPS id 40si622752yho.6.2015.03.31.15.36.27 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 31 Mar 2015 15:36:28 -0700 (PDT) Received: from ruffy2.mtv.corp.google.com ([172.17.128.107]) by corpmail-nozzle1-2.hot.corp.google.com with ESMTP id gGv5bnY4.1; Tue, 31 Mar 2015 15:36:27 -0700 From: Doug Evans MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <21787.8554.744689.766021@ruffy2.mtv.corp.google.com> Date: Tue, 31 Mar 2015 22:36:00 -0000 To: Alexander Smundak Cc: Andy Wingo , gdb-patches Subject: Re: [RFC] [PATCH] Provide the ability to write the frame unwinder in Python In-Reply-To: References: <21714.40641.510825.30998@ruffy2.mtv.corp.google.com> <54E71694.1080304@redhat.com> <87ioei31uj.fsf@igalia.com> <87d24p19tt.fsf@igalia.com> <54FD7DAA.7010603@redhat.com> <87twxrncld.fsf@igalia.com> <87ioe1dvu2.fsf@igalia.com> <87sid4atms.fsf@igalia.com> <87r3smado6.fsf@igalia.com> <21776.28787.615626.171251@ruffy2.mtv.corp.google.com> <21781.55769.949230.79805@ruffy2.mtv.corp.google.com> <21785.35758.416843.730797@ruffy2.mtv.corp.google.com> X-IsSubscribed: yes X-SW-Source: 2015-03/txt/msg01072.txt.bz2 Alexander Smundak writes: > Fixed documentation and added '_gdb.' prefix to 'objfiles()'. > PTAL. > > > On Mon, Mar 30, 2015 at 10:45 AM, Doug Evans wrote: > > Alexander Smundak writes: > > > Addressed eliz@ and dje@ comments. > > > > > > gdb/ChangeLog > > > > > > 2015-03-28 Sasha Smundak > > > > > > * Makefile.in (SUBDIR_PYTHON_OBJS): Add py-unwind.o. > > > (SUBDIR_PYTHON_SRCS): Add py-unwind.c. > > > (py-unwind.o): New recipe. > > > * NEWS: mention Python frame unwinding. > > > * data-directory/Makefile.in (PYTHON_FILE_LIST): Add > > > gdb/unwinder.py and gdb/command/unwinder.py > > > * doc/python.texi (Writing a Frame Unwinder in Python): Add > > > section. > > > * python/lib/gdb/__init__.py (packages): Add frame_unwinders > > > list. > > > (execute_unwinders): New function. > > > * python/lib/gdb/command/unwinders.py: New file. > > > * python/lib/gdb/unwinder.py: New file. > > > * python/py-objfile.c (objfile_object): Add frame_unwinders field. > > > (objfpy_dealloc): Decrement frame_unwinders reference count. > > > (objfpy_initialize): Create frame_unwinders list. > > > (objfpy_get_frame_unwinders): New function. > > > (objfpy_set_frame_unwinders): Ditto. > > > (objfile_getset): Add frame_unwinders attribute to Objfile. > > > * python/py-progspace.c (pspace_object): Add frame_unwinders field. > > > (pspy_dealloc): Decrement frame_unwinders reference count. > > > (pspy_initialize): Create frame_unwinders list. > > > (pspy_get_frame_unwinders): New function. > > > (pspy_set_frame_unwinders): Ditto. > > > (pspy_getset): Add frame_unwinders attribute to gdb.Progspace. > > > * python/py-unwind.c: New file. > > > * python/python-internal.h (pspy_get_name_unwinders): New prototype. > > > (objpy_get_frame_unwinders): New prototype. > > > (gdbpy_initialize_unwind): New prototype. > > > * python/python.c (gdbpy_apply_type_printers): Call > > > gdbpy_initialize_unwind. > > > > > > gdb/testsuite/ChangeLog > > > > > > 2015-03-28 Sasha Smundak > > > > > > * gdb.python/py-unwind-maint.c: New file. > > > * gdb.python/py-unwind-maint.exp: New test. > > > * gdb.python/py-unwind-maint.py: New file. > > > * gdb.python/py-unwind.c: New file. > > > * gdb.python/py-unwind.exp: New test. > > > * gdb.python/py-unwind.py: New test. Thanks. LGTM. And thanks for your patience!