annotate src/.gdbinit @ 1551:1f7d20c707c0 jimb-sync-Nov-3-1992

Added `mips' command.
author Jim Blandy <jimb@redhat.com>
date Sat, 07 Nov 1992 05:29:26 +0000
parents 0ffcf74fb8ad
children 2c65d1a8af09
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1 # Set up something to print out s-expressions.
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2 define pr
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3 set Fprin1 ($, Qexternal_debugging_output)
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 echo \n
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
6 document pr
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
7 Print the emacs s-expression which is $.
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
8 Works only when an inferior emacs is executing.
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
9 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
11 # Set this to the same thing as the DATA_SEG_BITS macro in your
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
12 # machine-description files.
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
13 set $data_seg_bits = 0
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
14
1551
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
15 define mips
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
16 set $data_seg_bits = 0x10000000
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
17 end
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
18 document mips
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
19 Set up the xfoo macros to deal with the MIPS processor.
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
20 Specifically, this sets $data_seg_bits to the right thing.
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
21 end
1f7d20c707c0 Added `mips' command.
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
22
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
23 define xtype
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
24 output (enum Lisp_Type) (($ >> 24) & 0x7f)
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
25 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
26 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
27 document xtype
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
28 Print the type of $, assuming it is an Elisp value.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
29 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
30
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31 define xint
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
32 print (($ & 0x00ffffff) << 8) >> 8
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
33 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
34 document xint
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
35 Print $, assuming it is an Elisp integer. This gets the sign right.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
36 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
37
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
38 define xptr
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
39 print (void *) (($ & 0x00ffffff) | $data_seg_bits)
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
40 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
41 document xptr
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
42 Print the pointer portion of $, assuming it is an Elisp value.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
43 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
44
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
45 define xwindow
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
46 print (struct window *) (($ & 0x00ffffff) | $data_seg_bits)
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
47 printf "%dx%d+%d+%d\n", $->width, $->height, $->left, $->top
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
49 document xwindow
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
50 Print $ as a window pointer, assuming it is an Elisp window value.
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
51 Print the window's position as "WIDTHxHEIGHT+LEFT+TOP".
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
52 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
53
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
54 define xmarker
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
55 print (struct Lisp_Marker *) (($ & 0x00ffffff) | $data_seg_bits)
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
56 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
57 document xmarker
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
58 Print $ as a marker pointer, assuming it is an Elisp marker value.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
59 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
60
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
61 define xbuffer
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
62 print (struct buffer *) (($ & 0x00ffffff) | $data_seg_bits)
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
63 output &((struct Lisp_String *) ((($->name) & 0x00ffffff) | $data_seg_bits))->data
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
64 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
65 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
66 document xbuffer
727
540b047ece4d *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 648
diff changeset
67 Set $ as a buffer pointer, assuming it is an Elisp buffer value.
540b047ece4d *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 648
diff changeset
68 Print the name of the buffer.
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
69 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
70
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
71 define xsymbol
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
72 print (struct Lisp_Symbol *) (($ & 0x00ffffff) | $data_seg_bits)
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
73 output &$->name->data
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
74 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
75 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
76 document xsymbol
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
77 Print the name and address of the symbol $.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
78 This command assumes that $ is an Elisp symbol value.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
79 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
80
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
81 define xstring
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
82 print (struct Lisp_String *) (($ & 0x00ffffff) | $data_seg_bits)
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
83 output ($->size > 10000) ? "big string" : ($->data[0])@($->size)
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
84 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
85 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
86 document xstring
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
87 Print the contents and address of the string $.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
88 This command assumes that $ is an Elisp string value.
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
89 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
90
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
91 define xvector
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
92 print (struct Lisp_Vector *) (($ & 0x00ffffff) | $data_seg_bits)
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
93 output ($->size > 1000) ? "big vector" : ($->contents[0])@($->size)
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
94 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
95 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
96 document xvector
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
97 Print the contents and address of the vector $.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
98 This command assumes that $ is an Elisp vector value.
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
99 end
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
100
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
101 define xframe
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
102 print (struct frame *) (($ & 0x00ffffff) | $data_seg_bits)
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
103 end
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
104 document xframe
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
105 Print $ as a frame pointer, assuming it is an Elisp frame value.
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
106 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
107
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
108 define xcons
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
109 print (struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits)
1069
ee559fe0f1ab *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 1039
diff changeset
110 output *$
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
111 echo \n
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
112 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
113 document xcons
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
114 Print the contents of $, assuming it is an Elisp cons.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
115 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
116
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
117 define xcar
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
118 print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->car : 0)
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
119 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
120 document xcar
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
121 Print the car of $, assuming it is an Elisp pair.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
122 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
123
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
124 define xcdr
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
125 print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->cdr : 0)
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
126 end
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
127 document xcdr
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
128 Print the cdr of $, assuming it is an Elisp pair.
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
129 end
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
130
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
131 define xsubr
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
132 print (struct Lisp_Subr *) (($ & 0x00ffffff) | $data_seg_bits)
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
133 output *$
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
134 echo \n
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
135 end
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
136 document xsubr
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
137 Print the address of the subr which the Lisp_Object $ points to.
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
138 end
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 1069
diff changeset
139
638
40b255f55df3 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 567
diff changeset
140 set print pretty on
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
141
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 727
diff changeset
142 unset environment TERMCAP
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 727
diff changeset
143 unset environment TERM
999
d8d503897aa5 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 949
diff changeset
144 echo TERMCAP and TERM environment variables unset.\n
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 727
diff changeset
145 show environment DISPLAY
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 727
diff changeset
146 set args -q
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 727
diff changeset
147
567
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
148 # Don't let abort actually run, as it will make
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
149 # stdio stop working and therefore the `pr' command below as well.
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
150 break abort
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
151
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
152 # If we are running in synchronous mode, we want a chance to look around
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
153 # before Emacs exits. Perhaps we should put the break somewhere else
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
154 # instead...
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
155 break _XPrintDefaultError
696d82e36360 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
156