aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorNick Roberts <[email protected]>2005-05-27 20:56:43 +0000
committerNick Roberts <[email protected]>2005-05-27 20:56:43 +0000
commit9594f9294b16c3e828b593c4cc9159b6328e1aa3 (patch)
tree4e6cc5db94b3bbfa7cae9c2a04a1769a6067aa3b /lisp
parentbe820e8d82e00577e69b07a9a29f207144439a73 (diff)
(gdb-all-registers): New variable.
(gdb-registers-buffer, toggle-gdb-all-registers): Toggle display of floating point registers. (gdb-registers-mode-map): Bind SPC to toggle-gdb-all-registers.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/progmodes/gdb-ui.el26
1 files changed, 24 insertions, 2 deletions
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index 56d52eff6c..ecb8f63f8e 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -1659,13 +1659,20 @@ static char *magick[] = {
;; Registers buffer.
;;
+(defcustom gdb-all-registers nil
+ "Non-nil means include floating-point registers."
+ :type 'boolean
+ :group 'gud
+ :version "22.1")
+
(gdb-set-buffer-rules 'gdb-registers-buffer
'gdb-registers-buffer-name
'gdb-registers-mode)
(def-gdb-auto-updated-buffer gdb-registers-buffer
gdb-invalidate-registers
- (concat gdb-server-prefix "info registers\n")
+ (concat
+ gdb-server-prefix "info " (if gdb-all-registers "all-") "registers\n")
gdb-info-registers-handler
gdb-info-registers-custom)
@@ -1674,6 +1681,7 @@ static char *magick[] = {
(defvar gdb-registers-mode-map
(let ((map (make-sparse-keymap)))
(suppress-keymap map)
+ (define-key map " " 'toggle-gdb-all-registers)
(define-key map "q" 'kill-this-buffer)
map))
@@ -1683,7 +1691,7 @@ static char *magick[] = {
\\{gdb-registers-mode-map}"
(kill-all-local-variables)
(setq major-mode 'gdb-registers-mode)
- (setq mode-name "Registers")
+ (setq mode-name "Registers:")
(setq buffer-read-only t)
(use-local-map gdb-registers-mode-map)
(run-mode-hooks 'gdb-registers-mode-hook)
@@ -1706,6 +1714,20 @@ static char *magick[] = {
(special-display-frame-alist gdb-frame-parameters))
(display-buffer (gdb-get-create-buffer 'gdb-registers-buffer))))
+(defun toggle-gdb-all-registers ()
+ "Toggle the display of floating-point registers."
+ (interactive)
+ (if gdb-all-registers
+ (progn
+ (setq gdb-all-registers nil)
+ (with-current-buffer (gdb-get-buffer 'gdb-registers-buffer)
+ (setq mode-name "Registers:")))
+ (setq gdb-all-registers t)
+ (with-current-buffer (gdb-get-buffer 'gdb-registers-buffer)
+ (setq mode-name "Registers:All")))
+ (gdb-invalidate-registers))
+
+
;; Memory buffer.
;;
(defcustom gdb-memory-repeat-count 32