Lines Matching full:frame
394 frame IDs, independent frame sniffers, and the sentinel frame. Mark
398 complete rewrite of the architecture's frame code, were carried out by
513 its arguments) is called a stack frame display. It shows a summary of
516 `backtrace' command displays a stack frame for each active subroutine.
879 standard, recognizable fashion each time a stack frame is
885 for the frame.
1919 3. the current stack frame summary for that thread
1956 3. the current stack frame summary for that thread
1985 its current stack frame summary:
2364 "stack frame". (*Note Frames: Frames, for a description of stack
2389 the next instruction to be executed in the selected stack frame
2390 (*note Examining the Stack: Stack.). In any selected frame but the
2392 to that frame. This is similar to the effect of a `finish'
2393 command in the frame inside the selected frame--except that
2395 without an argument in the innermost frame, GDB stops the next
2865 the selected stack frame (*note Selecting a frame: Selection.).
2866 When the innermost frame is selected, this is a good way to delete
3337 frame. This is similar to `step', but function calls that appear
3369 frame returns. Print the returned value (if any).
3377 current stack frame, is reached. This command is used to avoid
3390 current stack frame.
3395 (`frame') command shows that execution is stopped at line `206';
3418 is reached, or the current stack frame returns. LOCATION is any of
3423 is in the current frame. This implies that `until' can be used to
3442 exit from the current stack frame. This command is similar to
3445 frame as the current one.
3688 block of data called a "stack frame". The stack frames are allocated
3695 refer implicitly to the selected frame. In particular, whenever you
3697 in the selected frame. There are special GDB commands to select
3698 whichever frame you are interested in. *Note Selecting a frame:
3702 executing frame and describes it briefly, similar to the `frame'
3703 command (*note Information about a frame: Frame Info.).
3709 * Selection:: Selecting a frame
3710 * Frame Info:: Information on a frame
3719 frames", or "frames" for short; each frame is the data associated with
3720 one call to one function. The frame contains the arguments given to
3724 When your program is started, the stack has only one frame, that of
3725 the function `main'. This is called the "initial" frame or the
3726 "outermost" frame. Each time a function is called, a new frame is
3727 made. Each time a function returns, the frame for that function
3729 many frames for the same function. The frame for the function in which
3730 execution is actually occurring is called the "innermost" frame. This
3734 A stack frame consists of many bytes, each of which has its own
3736 whose address serves as the address of the frame. Usually this address
3737 is kept in a register called the "frame pointer register" (*note $fp:
3738 Registers.) while execution is going on in that frame.
3741 for the innermost frame, one for the frame that called it, and so on
3748 `-fomit-frame-pointer'
3749 generates functions without a frame.) This is occasionally done
3750 with heavily used library functions to save the frame setup time. GDB
3752 the innermost function invocation has no stack frame, GDB nevertheless
3753 regards it as though it had a separate frame, which is numbered zero as
3757 `frame ARGS'
3758 The `frame' command allows you to move from one stack frame to
3759 another, and to print the stack frame you select. ARGS may be
3760 either the address of the frame or the stack frame number.
3761 Without an argument, `frame' prints the current stack frame.
3763 `select-frame'
3764 The `select-frame' command allows you to move from one stack frame
3765 to another without printing the frame. This is the silent version
3766 of `frame'.
3775 one line per frame, for many frames, starting with the currently
3776 executing frame (frame zero), followed by its caller (frame one), and
3781 Print a backtrace of the entire stack: one line per frame for all
3812 Each line in the backtrace shows the frame number and the function
3829 The display for frame zero does not begin with a program counter value,
3837 in the stack frame. GDB has no way of displaying such arguments in
3903 File: gdb.info, Node: Selection, Next: Frame
3905 6.3 Selecting a frame
3909 work on whichever stack frame is selected at the moment. Here are the
3910 commands for selecting a stack frame; all of them finish by printing a
3911 brief description of the stack frame just selected.
3913 `frame N'
3915 Select frame number N. Recall that frame zero is the innermost
3916 (currently executing) frame, frame one is the frame that called the
3917 innermost one, and so on. The highest-numbered frame is the one
3920 `frame ADDR'
3922 Select the frame at address ADDR. This is useful mainly if the
3928 On the SPARC architecture, `frame' needs two addresses to select
3929 an arbitrary frame: a frame pointer and a stack pointer.
3939 toward the outermost frame, to higher frame numbers, to frames
3944 advances toward the innermost frame, to lower frame numbers, to
3949 the frame. The first line shows the frame number, the function name,
3951 frame. The second line shows the text of that source line.
3961 ten lines centered on the point of execution in the frame. You can
3970 display of the new frame. They are intended primarily for use in
3975 File: gdb.info, Node: Frame Info, Prev: Selection, Up: Stack
3977 6.4 Information about a frame
3981 stack frame.
3983 `frame'
3986 frame is selected, but prints a brief description of the currently
3987 selected stack frame. It can be abbreviated `f'. With an
3988 argument, this command is used to select a stack frame. *Note
3989 Selecting a frame: Selection.
3991 `info frame'
3994 frame, including:
3996 * the address of the frame
3998 * the address of the next frame down (called by this frame)
4000 * the address of the next frame up (caller of this frame)
4003 frame is written
4005 * the address of the frame's arguments
4007 * the address of the frame's local variables
4010 the caller frame)
4012 * which registers were saved in the frame
4017 `info frame ADDR'
4019 Print a verbose description of the frame at address ADDR, without
4020 selecting that frame. The selected frame remains unchanged by this
4022 for some architectures) that you specify in the `frame' command.
4023 *Note Selecting a frame: Selection.
4026 Print the arguments of the selected frame, each on a separate line.
4029 Print the local variables of the selected frame, each on a separate
4032 frame.
4036 current stack frame at the current point of execution. To see
4037 other exception handlers, visit the associated frame (using the
4038 `up', `down', or `frame' commands); then type `info catch'. *Note
4051 the line where it stopped. Likewise, when you select a stack frame
4052 (*note Selecting a frame: Selection.), GDB prints the line where
4053 execution in that frame has stopped. You can print other portions of
4091 printed as part of displaying a stack frame (*note Examining the
4462 surrounding the program counter of the selected frame. A single
4617 Variables in expressions are understood in the selected stack frame
4618 (*note Selecting a frame: Selection.); they must be either:
4625 from the point of execution in that frame
4671 one instruction to set up a stack frame (including local variable
4673 may appear to have the wrong values until the stack frame is completely
4675 instruction to destroy a stack frame; after you begin stepping through
5057 is `on'. For example, this is what a stack frame display looks
5067 example, this is the same stack frame displayed with `set print
5536 and vector registers (in the selected stack frame).
5540 floating-point and vector registers (in the selected stack frame).
5545 relative to the selected stack frame. REGNAME may be any register
5554 current stack frame, and `$ps' is used for a register that contains the
5617 Normally, register values are relative to the selected stack frame
5618 (*note Selecting a frame: Selection.). This means that you get the
5622 frame (with `frame 0').
5626 GDB is unable to locate the saved registers, the selected stack frame
5633 assumes that the innermost stack frame is selected; setting `$sp' is
6163 frame, GDB uses the macros in scope at that frame's source code line.
6294 at the source line of the current stack frame:
6754 (PC) as the current frame. The `tfind tracepoint' command with no
6762 registers from each trace frame in the buffer, we can say this:
6766 > printf "Frame %d, PC = %08X, SP = %08X, FP = %08X\n", \
6771 Frame 0, PC = 0020DC64, SP = 0030BF3C, FP = 0030BF44
6772 Frame 1, PC = 0020DC6C, SP = 0030BF38, FP = 0030BF44
6773 Frame 2, PC = 0020DC70, SP = 0030BF34, FP = 0030BF44
6774 Frame 3, PC = 0020DC74, SP = 0030BF30, FP = 0030BF44
6775 Frame 4, PC = 0020DC78, SP = 0030BF2C, FP = 0030BF44
6776 Frame 5, PC = 0020DC7C, SP = 0030BF28, FP = 0030BF44
6777 Frame 6, PC = 0020DC80, SP = 0030BF24, FP = 0030BF44
6778 Frame 7, PC = 0020DC84, SP = 0030BF20, FP = 0030BF44
6779 Frame 8, PC = 0020DC88, SP = 0030BF1C, FP = 0030BF44
6780 Frame 9, PC = 0020DC8E, SP = 0030BF18, FP = 0030BF44
6781 Frame 10, PC = 00203F6C, SP = 0030BE3C, FP = 0030BF14
6788 > printf "Frame %d, X == %d\n", $trace_frame, X
6792 Frame 0, X = 1
6793 Frame 7, X = 2
6794 Frame 13, X = 255
6819 Data collected at tracepoint 2, trace frame 1:
6870 The current trace snapshot (a.k.a. "frame") number, or -1 if no
7290 names are demangled--this way `backtrace' can show each frame
7389 That is, when your program stops in a frame (usually by encountering a
7391 the function in that frame. If the language for a frame is unknown
7392 (that is, if the function or block corresponding to the frame was
7416 `info frame'
7417 Display the source language for this frame. This language becomes
7418 the working language if you use an identifier from this frame.
7419 *Note Information about a frame: Frame Info, to identify the other
7880 2. While a member function is active (in the selected stack frame),
7913 In the parameter list shown when GDB displays a frame, the values
9080 language if the current frame corresponds to an unsupported language.
9129 non-register local variable, this prints the stack-frame offset at
9220 Symbol rl is an argument at stack/frame offset 8, length 4.
9226 Symbol repeat is a local variable at frame offset -8, length 4.
9522 The `jump' command does not change the current stack frame, or the
9590 When you use `return', GDB discards the selected stack frame (and
9592 frame return prematurely. If you wish to specify a value to be
9595 This pops the selected stack frame (*note Selecting a frame:
9597 the innermost remaining frame. That frame becomes selected. The
9605 selected stack frame returns naturally.
9637 default), GDB stops in the frame where the signal was received.
11684 function's frame set-up code. You can work around this by using "*&" to
13131 Alpha- and MIPS-based computers use an unusual stack frame, which
13705 `set debug frame'
13706 Turns on or off display of GDB frame debugging info. The default
13709 `show debug frame'
13710 Displays the current state of displaying GDB frame debugging info.
13917 displays are printed, or the stack frame is printed.
14248 and the frame position. They are updated when the current thread
14249 changes, when the frame changes or when the program counter changes.
14280 Gives the current function name for the selected frame. The name
14286 Indicates the current line number for the selected frame. When
14575 Each time GDB displays a stack frame, Emacs automatically finds the
14576 source file for that frame and puts an arrow (`=>') at the left margin
14623 Execute until exit from the selected stack frame, like the GDB
14642 If you type `M-x speedbar', then Emacs displays a separate frame
14644 to any frame in the stack and type <RET> to make it become the current
14645 frame and display the associated source in the source buffer.
14646 Alternatively, click `Mouse-2' to make the selected frame become the
14651 frame display; when you run under Emacs, this recreates the source
14652 buffer if necessary to show you the context of the current frame.
15134 frame={addr="0x08048564",func="main",
15629 frame={func="main",args=[],file="recursive2.c",
15645 frame={func="callee4",args=[],
15652 frame={func="callee3",args=[{name="strarg",
15685 frame={func="callee4",args=[],
15707 frame={func="callee3",args=[{name="strarg",
15990 current thread, and the topmost frame for that thread.
16014 frame={level="0",func="vprintf",
16052 *stopped,reason="breakpoint-hit",bkptno="2",frame={func="foo",args=[],
16081 *stopped,reason="function-finished",frame={func="main",args=[],
16091 *stopped,reason="function-finished",frame={addr="0x000107b0",func="foo",
16128 frame={addr="0x00010140",func="foo",args=[],file="try.c",
16201 inferior. Displays the new current frame.
16220 frame={func="callee4",args=[],
16228 111^done,frame={level="0",func="callee3",
16264 frame={func="main",args=[],file="recursive2.c",
16322 frame={func="foo",args=[{name="a",value="10"},
16362 frame={func="foo",args=[],file="try.c",
16370 frame={addr="0x000100f4",func="foo",args=[],file="try.c",
16400 *stopped,reason="location-reached",frame={func="main",args=[],
16410 The `-stack-info-frame' Command
16416 -stack-info-frame
16418 Get info on the selected frame.
16423 The corresponding GDB command is `info frame' or `frame' (without
16430 -stack-info-frame
16431 ^done,frame={level="1",addr="0x0001076c",func="callee3",
16455 For a stack with frame levels 0 through 11:
16481 [ LOW-FRAME HIGH-FRAME ]
16483 Display a list of the arguments for the frames between LOW-FRAME and
16484 HIGH-FRAME (inclusive). If LOW-FRAME and HIGH-FRAME are not provided,
16486 equal, show the single frame at the corresponding level. It is an
16487 error if LOW-FRAME is larger than the actual number of frames. On the
16488 other hand, HIGH-FRAME may be larger than the actual number of frames,
16509 frame
16512 frame={level="1",addr="0x0001076c",func="callee3",
16515 frame={level="2",addr="0x0001078c",func="callee2",
16518 frame={level="3",addr="0x000107b4",func="callee1",
16521 frame={level="4",addr="0x000107e0",func="main",
16528 frame={level="0",args=[]},
16529 frame={level="1",args=[name="strarg"]},
16530 frame={level="2",args=[name="intarg",name="strarg"]},
16531 frame={level="3",args=[name="intarg",name="strarg",name="fltarg"]},
16532 frame={level="4",args=[]}]
16537 frame={level="0",args=[]},
16538 frame={level="1",
16540 frame={level="2",args=[
16543 {frame={level="3",args=[
16547 frame={level="4",args=[]}]
16550 ^done,stack-args=[frame={level="2",args=[name="intarg",name="strarg"]}]
16553 ^done,stack-args=[frame={level="2",
16564 -stack-list-frames [ LOW-FRAME HIGH-FRAME ]
16566 List the frames currently on the stack. For each frame it displays
16570 The frame number, 0 being the topmost frame, i.e. the innermost
16574 The `$pc' value for that frame.
16588 are equal, it shows the single frame at the corresponding level. It is
16589 an error if LOW-FRAME is larger than the actual number of frames. On
16590 the other hand, HIGH-FRAME may be larger than the actual number of
16606 [frame={level="0",addr="0x0001076c",func="foo",
16608 frame={level="1",addr="0x000107a4",func="foo",
16610 frame={level="2",addr="0x000107a4",func="foo",
16612 frame={level="3",addr="0x000107a4",func="foo",
16614 frame={level="4",addr="0x000107a4",func="foo",
16616 frame={level="5",addr="0x000107a4",func="foo",
16618 frame={level="6",addr="0x000107a4",func="foo",
16620 frame={level="7",addr="0x000107a4",func="foo",
16622 frame={level="8",addr="0x000107a4",func="foo",
16624 frame={level="9",addr="0x000107a4",func="foo",
16626 frame={level="10",addr="0x000107a4",func="foo",
16628 frame={level="11",addr="0x00010738",func="main",
16637 [frame={level="3",addr="0x000107a4",func="foo",
16639 frame={level="4",addr="0x000107a4",func="foo",
16641 frame={level="5",addr="0x000107a4",func="foo",
16645 Show a single frame:
16650 [frame={level="3",addr="0x000107a4",func="foo",
16662 Display the local variable names for the selected frame. If
16691 The `-stack-select-frame' Command
16697 -stack-select-frame FRAMENUM
16699 Change the selected frame. Select a different frame FRAMENUM on the
16705 The corresponding GDB commands are `frame', `up', `down',
16706 `select-frame', `up-silent', and `down-silent'.
16712 -stack-select-frame 2
16752 * `-stack-select-frame'
16806 {FRAME-ADDR | "*"} EXPRESSION
16818 The frame under which the expression should be evaluated can be
16819 specified by FRAME-ADDR. A `*' indicates that the current frame should
17231 *stopped,reason="breakpoint-hit",bkptno="1",frame={func="main",
20812 Prints the contents of GDB's internal dummy-frame stack.
21897 frame and checksum. There is no trailing NUL byte in a
22177 Select the N'th tracepoint frame from the buffer, and use the
22182 the requested frame. The response is a series of parts,
22183 concatenated without separators, describing the frame we selected.
22187 The selected frame is number N in the trace frame buffer; F
22189 frame matching the criteria in the request packet.
22192 The selected trace frame records a hit of tracepoint number T;
22197 Like `QTFrame:N', but select the first tracepoint frame after the
22198 currently selected frame whose PC is ADDR; ADDR is a hexadecimal
22202 Like `QTFrame:N', but select the first tracepoint frame after the
22203 currently selected frame that is a hit of tracepoint T; T is a
22207 Like `QTFrame:N', but select the first tracepoint frame after the
22208 currently selected frame whose PC is between START (inclusive) and
22212 Like `QTFrame:range:START:END', but select the first frame
22217 tracepoint hits in the trace frame buffer.
22223 Clear the table of tracepoints, and empty the trace frame buffer.
23939 -- Function: DTC_RESPONSE adbg_find_memory_in_frame (FRAME_DEF *FRAME,
23941 Search the trace frame FRAME for memory saved from ADDRESS. If
23945 * If the memory at ADDRESS was saved in FRAME, set `*BUFFER' to
23952 * If FRAME does not record any memory at ADDRESS, set `*SIZE'
23962 saved in a particular frame, and retrieve their contents efficiently.
23967 function searches all data saved in FRAME, whether the data is there at
23975 over the trace frame's stack area, memory ranges, and expression blocks
23980 As an example, suppose the trace frame `f' has saved sixteen bytes
24018 addresses of all memory saved in the trace frame `frame' on the
24021 print_frame_addresses (FRAME_DEF *frame)
24032 if (adbg_find_memory_in_frame (frame, addr, &buffer, &size)
24042 in which the data is saved in the trace frame, and the order in which
24045 address, while the underlying frame structure might store the data in a
25174 * -stack-info-frame: GDB/MI Stack Manipulation.
25182 * -stack-select-frame: GDB/MI Stack Manipulation.
25453 * catch exceptions, list active handlers: Frame Info. (line 60)
25559 * current stack frame: Frames. (line 45)
25738 * exception handlers, how to list: Frame Info. (line 60)
25763 * f (frame): Selection. (line 11)
25816 * frame debugging info: Debugging Output. (line 50)
25817 * frame number: Frames. (line 28)
25818 * frame pointer: Frames. (line 21)
25819 * frame pointer register: Registers. (line 26)
25820 * frame, command: Frames. (line 45)
25821 * frame
25822 * frame, selecting: Selection. (line 11)
25951 * info args: Frame Info. (line 51)
25954 * info catch: Frame Info. (line 60)
25965 * info f (info frame): Frame Info. (line 17)
25972 * info frame: Frame Info. (line 17)
25973 * info frame, show the source language: Show. (line 15)
25980 * info locals: Frame Info. (line 55)
26025 * initial frame: Frames. (line 12)
26027 * innermost frame: Frames. (line 12)
26348 * outermost frame: Frames. (line 12)
26643 * select-frame: Frames. (line 51)
26644 * selected frame: Stack. (line 19)
26645 * selecting frame silently: Frames. (line 51)
26987 * stack frame: Frames. (line 6)
27368 Node: Frame Info166608