public inbox for gdb-testers@sourceware.org
help / color / mirror / Atom feed
From: sergiodj+buildbot@sergiodj.net
To: gdb-testers@sourceware.org
Subject: [binutils-gdb] Distinguish sentinel frame from null frame.
Date: Wed, 16 Nov 2016 21:50:00 -0000	[thread overview]
Message-ID: <df433d316277ff5293832d3cd6cbc30b5c38dec0@gdb-build> (raw)

*** TEST RESULTS FOR COMMIT df433d316277ff5293832d3cd6cbc30b5c38dec0 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: df433d316277ff5293832d3cd6cbc30b5c38dec0

Distinguish sentinel frame from null frame.

This patch replaces the `current_frame' static global in frame.c with
`sentinel_frame'.  It also makes the sentinel frame id unique and
different from the null frame.

By itself, there is not much point to this patch, but it makes
the code cleaner for the VALUE_FRAME_ID changes in another patch.
Since we now allow "navigation" to the sentinel frame, it removes
the necessity of adding special cases to other parts of GDB.

Note that a new function, get_next_frame_sentinel_okay, is introduced
in this patch.  It will be used by the VALUE_FRAME_ID changes that
I've made.

Thanks to Pedro Alves for this suggestion.

gdb/ChangeLog:

    	* frame.h (enum frame_id_stack_status): Add FID_STACK_SENTINEL.
    	(struct frame_id): Increase number of bits required for storing
    	stack status to 3 from 2.
    	(sentinel_frame_id): New declaration.
    	(get_next_frame_sentinel_okay): Declare.
    	(frame_find_by_id_sentinel_okay): Declare.
    	* frame.c (current_frame): Rename this static global to...
    	(sentinel_frame): ...this static global, which has also been
    	moved an earlier location in the file.
    	(fprint_frame_id): Add case for sentinel frame id.
    	(get_frame_id): Return early for sentinel frame.
    	(sentinel_frame_id): Define.
    	(frame_find_by_id): Add case for sentinel_frame_id.
    	(create_sentinel_frame): Use sentinel_frame_id for this_id.value
    	instead of null_frame_id.
    	(get_current_frame): Add local declaration for `current_frame'.
    	Remove local declaration for `sentinel_frame.'
    	(get_next_frame_sentinel_okay): New function.
    	(reinit_frame_cache): Use `sentinel_frame' in place of
    	`current_frame'.


             reply	other threads:[~2016-11-16 21:39 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-16 21:50 sergiodj+buildbot [this message]
2016-11-16 21:50 ` Failures on Ubuntu-AArch64-m64, branch master sergiodj+buildbot
2016-11-16 21:53 ` Failures on Debian-s390x-native-gdbserver-m64, " sergiodj+buildbot
2016-11-16 22:07 ` Failures on Fedora-x86_64-m32, " sergiodj+buildbot
2016-11-16 22:14 ` Failures on Debian-i686-native-extended-gdbserver, " sergiodj+buildbot
2016-11-17  0:09 ` Failures on Debian-x86_64-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-11-23  2:41 ` Failures on Fedora-ppc64be-m64, " sergiodj+buildbot
2016-11-28 16:38 ` Failures on Fedora-ppc64le-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-11-28 17:51 ` Failures on Fedora-ppc64le-cc-with-index, " sergiodj+buildbot
2016-11-28 18:54 ` Failures on Fedora-ppc64le-native-gdbserver-m64, " sergiodj+buildbot
2016-11-28 19:10 ` Failures on Fedora-ppc64le-m64, " sergiodj+buildbot

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=df433d316277ff5293832d3cd6cbc30b5c38dec0@gdb-build \
    --to=sergiodj+buildbot@sergiodj.net \
    --cc=gdb-testers@sourceware.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).