Mercurial > emacs
annotate src/.gdbinit @ 56026:bb6720f21c54
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396
Tweak arch tagging to make build/install-in-place less annoying
Previously, autoconf-created Makefiles and the like would contain
duplicate taglines (unfortunately, autoconf doesn't seem to have a
`strip in generated file' comment mechanism) leading to conflicts, and
installing in place would create unknown directories and copies of
source directories (leading to conflicts with the source directories).
This changeset makes all autoconf-processed files use explicit id-tags
and adds .arch-inventory entries to ignore installation directories.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Fri, 11 Jun 2004 02:39:51 +0000 |
parents | c17438f97e46 |
children | aca7edaa93d4 14e5707213a6 4c90ffeb71c5 |
rev | line source |
---|---|
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1 # Copyright (C) 1992, 93, 94, 95, 96, 97, 1998, 2000, 01, 2004 |
36219 | 2 # Free Software Foundation, Inc. |
3 # | |
4 # This file is part of GNU Emacs. | |
5 # | |
6 # GNU Emacs is free software; you can redistribute it and/or modify | |
7 # it under the terms of the GNU General Public License as published by | |
8 # the Free Software Foundation; either version 2, or (at your option) | |
9 # any later version. | |
10 # | |
11 # GNU Emacs is distributed in the hope that it will be useful, | |
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 # GNU General Public License for more details. | |
15 # | |
16 # You should have received a copy of the GNU General Public License | |
17 # along with GNU Emacs; see the file COPYING. If not, write to the | |
18 # Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
19 # Boston, MA 02111-1307, USA. | |
20 | |
13359
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
21 # Force loading of symbols, enough to give us gdb_valbits etc. |
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
22 set main |
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
23 |
15536 | 24 # Find lwlib source files too. |
25 dir ../lwlib | |
34876
8dbc92d11de2
Comment out the line pointing to the Lesstif source
Gerd Moellmann <gerd@gnu.org>
parents:
32812
diff
changeset
|
26 #dir /gd/gnu/lesstif-0.89.9/lib/Xm |
15536 | 27 |
20672 | 28 # Don't enter GDB when user types C-g to quit. |
29 # This has one unfortunate effect: you can't type C-c | |
30 # at the GDB to stop Emacs, when using X. | |
31 # However, C-z works just as well in that case. | |
32 handle 2 noprint pass | |
33 | |
30636 | 34 # Don't pass SIGALRM to Emacs. This makes problems when |
35 # debugging. | |
36 handle SIGALRM ignore | |
37 | |
20672 | 38 # Set up a mask to use. |
12278
6882fe187fa9
Use long, not EMACS_INT.
Richard M. Stallman <rms@gnu.org>
parents:
12248
diff
changeset
|
39 # This should be EMACS_INT, but in some cases that is a macro. |
6882fe187fa9
Use long, not EMACS_INT.
Richard M. Stallman <rms@gnu.org>
parents:
12248
diff
changeset
|
40 # long ought to work in all cases right now. |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
41 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
42 define xgetptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
43 set $ptr = (gdb_use_union ? $arg0.u.val : $arg0 & $valmask) | gdb_data_seg_bits |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
44 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
45 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
46 define xgetint |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
47 set $int = gdb_use_union ? $arg0.s.val : (gdb_use_lsb ? $arg0 : $arg0 << gdb_gctypebits) >> gdb_gctypebits |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
48 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
49 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
50 define xgettype |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
51 set $type = gdb_use_union ? $arg0.s.type : (enum Lisp_Type) (gdb_use_lsb ? $arg0 & $tagmask : $arg0 >> gdb_valbits) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
52 end |
11872
a28bd38b2ff3
gdb_lisp_params to get storage layout info.
Karl Heuer <kwzh@gnu.org>
parents:
11006
diff
changeset
|
53 |
567 | 54 # Set up something to print out s-expressions. |
55 define pr | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
56 set debug_print ($) |
567 | 57 end |
58 document pr | |
59 Print the emacs s-expression which is $. | |
60 Works only when an inferior emacs is executing. | |
61 end | |
62 | |
63 define xtype | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
64 xgettype $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
65 output $type |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
66 echo \n |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
67 if $type == Lisp_Misc |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
68 xmisctype |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
69 else |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
70 if $type == Lisp_Vectorlike |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
71 xvectype |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
72 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
73 end |
567 | 74 end |
638 | 75 document xtype |
7962 | 76 Print the type of $, assuming it is an Emacs Lisp value. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
77 If the first type printed is Lisp_Vector or Lisp_Misc, |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
78 a second line gives the more precise type. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
79 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
80 |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
81 define xvectype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
82 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
83 set $size = ((struct Lisp_Vector *) $ptr)->size |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
84 output ($size & PVEC_FLAG) ? (enum pvec_type) ($size & PVEC_TYPE_MASK) : $size & ~gdb_array_mark_flag |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
85 echo \n |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
86 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
87 document xvectype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
88 Print the size or vector subtype of $, assuming it is a vector or pseudovector. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
89 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
90 |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
91 define xmisctype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
92 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
93 output (enum Lisp_Misc_Type) (((struct Lisp_Free *) $ptr)->type) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
94 echo \n |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
95 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
96 document xmisctype |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
97 Print the specific type of $, assuming it is some misc type. |
638 | 98 end |
567 | 99 |
100 define xint | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
101 xgetint $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
102 print $int |
567 | 103 end |
638 | 104 document xint |
7962 | 105 Print $, assuming it is an Emacs Lisp integer. This gets the sign right. |
638 | 106 end |
567 | 107 |
108 define xptr | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
109 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
110 print (void *) $ptr |
567 | 111 end |
638 | 112 document xptr |
7962 | 113 Print the pointer portion of $, assuming it is an Emacs Lisp value. |
638 | 114 end |
567 | 115 |
116 define xmarker | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
117 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
118 print (struct Lisp_Marker *) $ptr |
567 | 119 end |
638 | 120 document xmarker |
7962 | 121 Print $ as a marker pointer, assuming it is an Emacs Lisp marker value. |
638 | 122 end |
567 | 123 |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
124 define xoverlay |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
125 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
126 print (struct Lisp_Overlay *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
127 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
128 document xoverlay |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
129 Print $ as a overlay pointer, assuming it is an Emacs Lisp overlay value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
130 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
131 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
132 define xmiscfree |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
133 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
134 print (struct Lisp_Free *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
135 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
136 document xmiscfree |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
137 Print $ as a misc free-cell pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
138 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
139 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
140 define xintfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
141 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
142 print (struct Lisp_Intfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
143 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
144 document xintfwd |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
145 Print $ as an integer forwarding pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
146 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
147 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
148 define xboolfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
149 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
150 print (struct Lisp_Boolfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
151 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
152 document xboolfwd |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
153 Print $ as a boolean forwarding pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
154 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
155 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
156 define xobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
157 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
158 print (struct Lisp_Objfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
159 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
160 document xobjfwd |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
161 Print $ as an object forwarding pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
162 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
163 |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
164 define xbufobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
165 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
166 print (struct Lisp_Buffer_Objfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
167 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
168 document xbufobjfwd |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
169 Print $ as a buffer-local object forwarding pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
170 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
171 |
11006
2aa4135eee50
(xkbobjfwd): Renamed from xdispobjfwd.
Karl Heuer <kwzh@gnu.org>
parents:
10582
diff
changeset
|
172 define xkbobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
173 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
174 print (struct Lisp_Kboard_Objfwd *) $ptr |
10582 | 175 end |
11006
2aa4135eee50
(xkbobjfwd): Renamed from xdispobjfwd.
Karl Heuer <kwzh@gnu.org>
parents:
10582
diff
changeset
|
176 document xkbobjfwd |
2aa4135eee50
(xkbobjfwd): Renamed from xdispobjfwd.
Karl Heuer <kwzh@gnu.org>
parents:
10582
diff
changeset
|
177 Print $ as a kboard-local object forwarding pointer, assuming it is an Emacs Lisp Misc value. |
10582 | 178 end |
179 | |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
180 define xbuflocal |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
181 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
182 print (struct Lisp_Buffer_Local_Value *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
183 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
184 document xbuflocal |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
185 Print $ as a buffer-local-value pointer, assuming it is an Emacs Lisp Misc value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
186 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
187 |
567 | 188 define xsymbol |
55686 | 189 set $sym = $ |
190 xgetptr $sym | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
191 print (struct Lisp_Symbol *) $ptr |
55686 | 192 xprintsym $sym |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
193 echo \n |
567 | 194 end |
638 | 195 document xsymbol |
196 Print the name and address of the symbol $. | |
7962 | 197 This command assumes that $ is an Emacs Lisp symbol value. |
638 | 198 end |
567 | 199 |
200 define xstring | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
201 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
202 print (struct Lisp_String *) $ptr |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
203 xprintstr $ |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
204 echo \n |
567 | 205 end |
206 document xstring | |
638 | 207 Print the contents and address of the string $. |
7962 | 208 This command assumes that $ is an Emacs Lisp string value. |
567 | 209 end |
210 | |
211 define xvector | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
212 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
213 print (struct Lisp_Vector *) $ptr |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
214 output ($->size > 50) ? 0 : ($->contents[0])@($->size & ~gdb_array_mark_flag) |
999 | 215 echo \n |
567 | 216 end |
217 document xvector | |
638 | 218 Print the contents and address of the vector $. |
7962 | 219 This command assumes that $ is an Emacs Lisp vector value. |
567 | 220 end |
221 | |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
222 define xprocess |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
223 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
224 print (struct Lisp_Process *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
225 output *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
226 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
227 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
228 document xprocess |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
229 Print the address of the struct Lisp_process which the Lisp_Object $ points to. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
230 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
231 |
1113 | 232 define xframe |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
233 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
234 print (struct frame *) $ptr |
567 | 235 end |
1113 | 236 document xframe |
7962 | 237 Print $ as a frame pointer, assuming it is an Emacs Lisp frame value. |
638 | 238 end |
567 | 239 |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
240 define xcompiled |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
241 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
242 print (struct Lisp_Vector *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
243 output ($->contents[0])@($->size & 0xff) |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
244 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
245 document xcompiled |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
246 Print $ as a compiled function pointer, assuming it is an Emacs Lisp compiled value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
247 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
248 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
249 define xwindow |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
250 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
251 print (struct window *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
252 printf "%dx%d+%d+%d\n", $->width, $->height, $->left, $->top |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
253 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
254 document xwindow |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
255 Print $ as a window pointer, assuming it is an Emacs Lisp window value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
256 Print the window's position as "WIDTHxHEIGHT+LEFT+TOP". |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
257 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
258 |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
259 define xwinconfig |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
260 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
261 print (struct save_window_data *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
262 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
263 document xwinconfig |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
264 Print $ as a window configuration pointer, assuming it is an Emacs Lisp window configuration value. |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
265 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
266 |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
267 define xsubr |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
268 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
269 print (struct Lisp_Subr *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
270 output *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
271 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
272 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
273 document xsubr |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
274 Print the address of the subr which the Lisp_Object $ points to. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
275 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
276 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
277 define xchartable |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
278 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
279 print (struct Lisp_Char_Table *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
280 printf "Purpose: " |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
281 xprintsym $->purpose |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
282 printf " %d extra slots", ($->size & 0x1ff) - 388 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
283 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
284 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
285 document xchartable |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
286 Print the address of the char-table $, and its purpose. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
287 This command assumes that $ is an Emacs Lisp char-table value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
288 end |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
289 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
290 define xboolvector |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
291 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
292 print (struct Lisp_Bool_Vector *) $ptr |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
293 output ($->size > 256) ? 0 : ($->data[0])@((($->size & ~gdb_array_mark_flag) + 7)/ 8) |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
294 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
295 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
296 document xboolvector |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
297 Print the contents and address of the bool-vector $. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
298 This command assumes that $ is an Emacs Lisp bool-vector value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
299 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
300 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
301 define xbuffer |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
302 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
303 print (struct buffer *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
304 xgetptr $->name |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
305 output ((struct Lisp_String *) $ptr)->data |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
306 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
307 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
308 document xbuffer |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
309 Set $ as a buffer pointer, assuming it is an Emacs Lisp buffer value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
310 Print the name of the buffer. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
311 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
312 |
30636 | 313 define xhashtable |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
314 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
315 print (struct Lisp_Hash_Table *) $ptr |
30636 | 316 end |
317 document xhashtable | |
318 Set $ as a hash table pointer, assuming it is an Emacs Lisp hash table value. | |
319 end | |
320 | |
567 | 321 define xcons |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
322 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
323 print (struct Lisp_Cons *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
324 output/x *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
325 echo \n |
567 | 326 end |
638 | 327 document xcons |
7962 | 328 Print the contents of $, assuming it is an Emacs Lisp cons. |
638 | 329 end |
567 | 330 |
18522
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
331 define nextcons |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
332 p $.cdr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
333 xcons |
18522
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
334 end |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
335 document nextcons |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
336 Print the contents of the next cell in a list. |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
337 This assumes that the last thing you printed was a cons cell contents |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
338 (type struct Lisp_Cons) or a pointer to one. |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
339 end |
567 | 340 define xcar |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
341 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
342 xgettype $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
343 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->car : 0) |
567 | 344 end |
638 | 345 document xcar |
7962 | 346 Print the car of $, assuming it is an Emacs Lisp pair. |
638 | 347 end |
567 | 348 |
349 define xcdr | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
350 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
351 xgettype $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
352 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->cdr : 0) |
567 | 353 end |
638 | 354 document xcdr |
7962 | 355 Print the cdr of $, assuming it is an Emacs Lisp pair. |
638 | 356 end |
567 | 357 |
4267 | 358 define xfloat |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
359 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
360 print ((struct Lisp_Float *) $ptr)->data |
4267 | 361 end |
362 document xfloat | |
363 Print $ assuming it is a lisp floating-point number. | |
364 end | |
365 | |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
366 define xscrollbar |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
367 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
368 print (struct scrollbar *) $ptr |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
369 output *$ |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
370 echo \n |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
371 end |
4268
0795ced6013f
(xscrollbar): Fix typo specifying doc string.
Richard M. Stallman <rms@gnu.org>
parents:
4267
diff
changeset
|
372 document xscrollbar |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
373 Print $ as a scrollbar pointer. |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
374 end |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
375 |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
376 define xprintstr |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
377 set $data = $arg0->data |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
378 output ($arg0->size > 1000) ? 0 : ($data[0])@($arg0->size_byte < 0 ? $arg0->size & ~gdb_array_mark_flag : $arg0->size_byte) |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
379 end |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
380 |
27290 | 381 define xprintsym |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
382 xgetptr $arg0 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
383 set $sym = (struct Lisp_Symbol *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
384 xgetptr $sym->xname |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
385 set $sym_name = (struct Lisp_String *) $ptr |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
386 xprintstr $sym_name |
27290 | 387 end |
388 document xprintsym | |
389 Print argument as a symbol. | |
390 end | |
391 | |
392 define xbacktrace | |
393 set $bt = backtrace_list | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45966
diff
changeset
|
394 while $bt |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
395 xgettype (*$bt->function) |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
396 if $type == Lisp_Symbol |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
397 xprintsym (*$bt->function) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
398 echo \n |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
399 else |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
400 printf "0x%x ", *$bt->function |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
401 if $type == Lisp_Vectorlike |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
402 xgetptr (*$bt->function) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
403 set $size = ((struct Lisp_Vector *) $ptr)->size |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
404 output ($size & PVEC_FLAG) ? (enum pvec_type) ($size & PVEC_TYPE_MASK) : $size & ~gdb_array_mark_flag |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
405 else |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
406 printf "Lisp type %d", $type |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
407 end |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
408 echo \n |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
409 end |
27290 | 410 set $bt = $bt->next |
411 end | |
412 end | |
413 document xbacktrace | |
414 Print a backtrace of Lisp function calls from backtrace_list. | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45966
diff
changeset
|
415 Set a breakpoint at Fsignal and call this to see from where |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
416 an error was signaled. |
27290 | 417 end |
418 | |
419 define xreload | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
420 set $tagmask = (((long)1 << gdb_gctypebits) - 1) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
421 set $valmask = gdb_use_lsb ? ~($tagmask) : ((long)1 << gdb_valbits) - 1 |
27290 | 422 end |
423 document xreload | |
424 When starting Emacs a second time in the same gdb session under | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
425 FreeBSD 2.2.5, gdb 4.13, $valmask have lost |
35792
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
426 their values. (The same happens on current (2000) versions of GNU/Linux |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
427 with gdb 5.0.) |
31960
eb2d3d3a8eb5
(xreload): Note its need on GNU/Linux.
Dave Love <fx@gnu.org>
parents:
30636
diff
changeset
|
428 This function reloads them. |
27290 | 429 end |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
430 xreload |
27290 | 431 |
35792
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
432 define hook-run |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
433 xreload |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
434 end |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
435 |
42907
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
436 # Call xreload if a new Emacs executable is loaded. |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
437 define hookpost-run |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
438 xreload |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
439 end |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
440 |
638 | 441 set print pretty on |
4267 | 442 set print sevenbit-strings |
567 | 443 |
732 | 444 show environment DISPLAY |
4487 | 445 show environment TERM |
446 set args -geometry 80x40+0+0 | |
732 | 447 |
567 | 448 # Don't let abort actually run, as it will make |
2162 | 449 # stdio stop working and therefore the `pr' command above as well. |
567 | 450 break abort |
451 | |
452 # If we are running in synchronous mode, we want a chance to look around | |
453 # before Emacs exits. Perhaps we should put the break somewhere else | |
454 # instead... | |
8310
def3ab3a6f01
Set the breakpoint in x_error_quitter instead of _XPrintDefaultError.
Richard M. Stallman <rms@gnu.org>
parents:
7962
diff
changeset
|
455 break x_error_quitter |
52401 | 456 |
457 # arch-tag: 12f34321-7bfa-4240-b77a-3cd3a1696dfe |