From: "Metzger, Markus T" <markus.t.metzger@intel.com>
To: Andrew Burgess <andrew.burgess@embecosm.com>,
gdb-patches <gdb-patches@sourceware.org>
Cc: Simon Marchi <simark@simark.ca>, Tom Tromey <tom@tromey.com>
Subject: RE: [PATCHv3 2/3] gdb: Change a VEC to std::vector in btrace.{c,h}
Date: Thu, 26 Sep 2019 08:47:00 -0000 [thread overview]
Message-ID: <A78C989F6D9628469189715575E55B236B4D90CC@IRSMSX104.ger.corp.intel.com> (raw)
In-Reply-To: <6ceaca2e6d37e8bfd913ab787229cbd2d3a7110d.1569455610.git.andrew.burgess@embecosm.com>
Hello Andrew,
> @@ -2986,8 +2986,10 @@ btrace_maint_decode_pt (struct btrace_maint_info
> *maint,
> if (maint_btrace_pt_skip_pad == 0 || packet.packet.type != ppt_pad)
> {
> packet.errcode = pt_errcode (errcode);
> - VEC_safe_push (btrace_pt_packet_s, maint->variant.pt.packets,
> - &packet);
> + if (maint->variant.pt.packets == NULL)
> + maint->variant.pt.packets
> + = new std::vector <btrace_pt_packet>;
> + maint->variant.pt.packets->push_back (packet);
We shouldn't do that check inside the loop. I used VEC_safe_push for the realloc aspect.
> @@ -3098,11 +3101,13 @@ btrace_maint_update_packets (struct
> btrace_thread_info *btinfo,
>
> #if defined (HAVE_LIBIPT)
> case BTRACE_FORMAT_PT:
> - if (VEC_empty (btrace_pt_packet_s, btinfo->maint.variant.pt.packets))
> + if (btinfo->maint.variant.pt.packets == nullptr
> + || btinfo->maint.variant.pt.packets->empty ())
> btrace_maint_update_pt_packets (btinfo);
Here, I'd check for nullptr in order to allocate the vector and call
btrace_maint_update_pt_packets. Afterwards, I'd check for emptiness and delete
the vector again if there are no packets.
We can also leave an empty vector if you prefer that.
Regards,
Markus.
Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Gary Kershaw
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928
next prev parent reply other threads:[~2019-09-26 8:47 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-25 15:54 [PATCHv2 0/3] Remove some uses of VEC Andrew Burgess
2019-09-23 22:09 ` [PATCH 0/2] Remove 2 uses of VEC from gdb Andrew Burgess
2019-09-23 22:09 ` [PATCH 2/2] gdb: Change a VEC to std::vector in btrace.{c,h} Andrew Burgess
2019-09-24 2:19 ` Simon Marchi
2019-09-23 22:09 ` [PATCH 1/2] gdb: Remove a VEC from gdbsupport/btrace-common.h Andrew Burgess
2019-09-24 2:09 ` Simon Marchi
2019-09-24 19:54 ` [PATCH 0/2] Remove 2 uses of VEC from gdb Tom Tromey
2019-09-25 15:54 ` [PATCHv2 2/3] gdb: Change a VEC to std::vector in btrace.{c,h} Andrew Burgess
2019-09-26 2:35 ` Simon Marchi
2019-09-25 15:54 ` [PATCHv2 3/3] gdb: Remove a use of VEC from dwarf2read.{c,h} Andrew Burgess
2019-09-25 22:08 ` Tom Tromey
2019-09-26 0:00 ` [PATCHv3 1/3] gdb: Remove a VEC from gdbsupport/btrace-common.h Andrew Burgess
2019-09-26 8:47 ` Metzger, Markus T
2019-09-26 11:32 ` Andrew Burgess
2019-09-26 13:07 ` Metzger, Markus T
2019-09-26 0:00 ` [PATCHv3 3/3] gdb: Remove a use of VEC from dwarf2read.{c,h} Andrew Burgess
2019-09-26 0:00 ` [PATCHv3 2/3] gdb: Change a VEC to std::vector in btrace.{c,h} Andrew Burgess
2019-09-26 8:47 ` Metzger, Markus T [this message]
2019-09-26 11:33 ` Andrew Burgess
2019-09-26 0:00 ` [PATCHv3 0/3] Remove some uses of VEC Andrew Burgess
2019-09-26 2:52 ` Simon Marchi
2019-09-26 11:41 ` [PATCHv4 2/3] gdb: Change a VEC to std::vector in btrace.{c,h} Andrew Burgess
2019-09-26 11:41 ` [PATCHv4 0/3] Remove some uses of VEC Andrew Burgess
2019-10-01 11:42 ` [PATCHv5 3/3] gdb: Remove a use of VEC from dwarf2read.{c,h} Andrew Burgess
2019-10-02 15:51 ` Pedro Alves
2019-10-02 22:21 ` Andrew Burgess
2019-10-03 8:06 ` Pedro Alves
2019-10-01 11:42 ` [PATCHv5 1/3] gdb: Remove a VEC from gdbsupport/btrace-common.h Andrew Burgess
2019-10-01 19:59 ` Tom Tromey
2019-10-01 11:42 ` [PATCHv5 2/3] gdb: Change a VEC to std::vector in btrace.{c,h} Andrew Burgess
[not found] ` <cover.1569929785.git.andrew.burgess@embecosm.com>
2019-10-01 12:04 ` [PATCHv5 0/3] Remove some uses of VEC Metzger, Markus T
2019-09-26 11:41 ` [PATCHv4 1/3] gdb: Remove a VEC from gdbsupport/btrace-common.h Andrew Burgess
2019-09-26 13:40 ` Metzger, Markus T
2019-09-26 11:41 ` [PATCHv4 3/3] gdb: Remove a use of VEC from dwarf2read.{c,h} Andrew Burgess
2019-09-25 15:54 ` [PATCHv2 1/3] gdb: Remove a VEC from gdbsupport/btrace-common.h Andrew Burgess
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=A78C989F6D9628469189715575E55B236B4D90CC@IRSMSX104.ger.corp.intel.com \
--to=markus.t.metzger@intel.com \
--cc=andrew.burgess@embecosm.com \
--cc=gdb-patches@sourceware.org \
--cc=simark@simark.ca \
--cc=tom@tromey.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox