1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html> 3<!-- Copyright (C) 1988-2021 Free Software Foundation, Inc. 4 5Permission is granted to copy, distribute and/or modify this document 6under the terms of the GNU Free Documentation License, Version 1.3 or 7any later version published by the Free Software Foundation; with the 8Invariant Sections being "Free Software" and "Free Software Needs 9Free Documentation", with the Front-Cover Texts being "A GNU Manual," 10and with the Back-Cover Texts as in (a) below. 11 12(a) The FSF's Back-Cover Text is: "You are free to copy and modify 13this GNU Manual. Buying copies from GNU Press supports the FSF in 14developing GNU and promoting software freedom." --> 15<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ --> 16<head> 17<title>Debugging with GDB: tdump</title> 18 19<meta name="description" content="Debugging with GDB: tdump"> 20<meta name="keywords" content="Debugging with GDB: tdump"> 21<meta name="resource-type" content="document"> 22<meta name="distribution" content="global"> 23<meta name="Generator" content="makeinfo"> 24<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 25<link href="index.html#Top" rel="start" title="Top"> 26<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index"> 27<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> 28<link href="Analyze-Collected-Data.html#Analyze-Collected-Data" rel="up" title="Analyze Collected Data"> 29<link href="save-tracepoints.html#save-tracepoints" rel="next" title="save tracepoints"> 30<link href="tfind.html#tfind" rel="previous" title="tfind"> 31<style type="text/css"> 32<!-- 33a.summary-letter {text-decoration: none} 34blockquote.smallquotation {font-size: smaller} 35div.display {margin-left: 3.2em} 36div.example {margin-left: 3.2em} 37div.indentedblock {margin-left: 3.2em} 38div.lisp {margin-left: 3.2em} 39div.smalldisplay {margin-left: 3.2em} 40div.smallexample {margin-left: 3.2em} 41div.smallindentedblock {margin-left: 3.2em; font-size: smaller} 42div.smalllisp {margin-left: 3.2em} 43kbd {font-style:oblique} 44pre.display {font-family: inherit} 45pre.format {font-family: inherit} 46pre.menu-comment {font-family: serif} 47pre.menu-preformatted {font-family: serif} 48pre.smalldisplay {font-family: inherit; font-size: smaller} 49pre.smallexample {font-size: smaller} 50pre.smallformat {font-family: inherit; font-size: smaller} 51pre.smalllisp {font-size: smaller} 52span.nocodebreak {white-space:nowrap} 53span.nolinebreak {white-space:nowrap} 54span.roman {font-family:serif; font-weight:normal} 55span.sansserif {font-family:sans-serif; font-weight:normal} 56ul.no-bullet {list-style: none} 57--> 58</style> 59 60 61</head> 62 63<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> 64<a name="tdump"></a> 65<div class="header"> 66<p> 67Next: <a href="save-tracepoints.html#save-tracepoints" accesskey="n" rel="next">save tracepoints</a>, Previous: <a href="tfind.html#tfind" accesskey="p" rel="previous">tfind</a>, Up: <a href="Analyze-Collected-Data.html#Analyze-Collected-Data" accesskey="u" rel="up">Analyze Collected Data</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> 68</div> 69<hr> 70<a name="tdump-1"></a> 71<h4 class="subsection">13.2.2 <code>tdump</code></h4> 72<a name="index-tdump"></a> 73<a name="index-dump-all-data-collected-at-tracepoint"></a> 74<a name="index-tracepoint-data_002c-display"></a> 75 76<p>This command takes no arguments. It prints all the data collected at 77the current trace snapshot. 78</p> 79<div class="smallexample"> 80<pre class="smallexample">(gdb) <b>trace 444</b> 81(gdb) <b>actions</b> 82Enter actions for tracepoint #2, one per line: 83> collect $regs, $locals, $args, gdb_long_test 84> end 85 86(gdb) <b>tstart</b> 87 88(gdb) <b>tfind line 444</b> 89#0 gdb_test (p1=0x11, p2=0x22, p3=0x33, p4=0x44, p5=0x55, p6=0x66) 90at gdb_test.c:444 91444 printp( "%s: arguments = 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X\n", ) 92 93(gdb) <b>tdump</b> 94Data collected at tracepoint 2, trace frame 1: 95d0 0xc4aa0085 -995491707 96d1 0x18 24 97d2 0x80 128 98d3 0x33 51 99d4 0x71aea3d 119204413 100d5 0x22 34 101d6 0xe0 224 102d7 0x380035 3670069 103a0 0x19e24a 1696330 104a1 0x3000668 50333288 105a2 0x100 256 106a3 0x322000 3284992 107a4 0x3000698 50333336 108a5 0x1ad3cc 1758156 109fp 0x30bf3c 0x30bf3c 110sp 0x30bf34 0x30bf34 111ps 0x0 0 112pc 0x20b2c8 0x20b2c8 113fpcontrol 0x0 0 114fpstatus 0x0 0 115fpiaddr 0x0 0 116p = 0x20e5b4 "gdb-test" 117p1 = (void *) 0x11 118p2 = (void *) 0x22 119p3 = (void *) 0x33 120p4 = (void *) 0x44 121p5 = (void *) 0x55 122p6 = (void *) 0x66 123gdb_long_test = 17 '\021' 124 125(gdb) 126</pre></div> 127 128<p><code>tdump</code> works by scanning the tracepoint’s current collection 129actions and printing the value of each expression listed. So 130<code>tdump</code> can fail, if after a run, you change the tracepoint’s 131actions to mention variables that were not collected during the run. 132</p> 133<p>Also, for tracepoints with <code>while-stepping</code> loops, <code>tdump</code> 134uses the collected value of <code>$pc</code> to distinguish between trace 135frames that were collected at the tracepoint hit, and frames that were 136collected while stepping. This allows it to correctly choose whether 137to display the basic list of collections, or the collections from the 138body of the while-stepping loop. However, if <code>$pc</code> was not collected, 139then <code>tdump</code> will always attempt to dump using the basic collection 140list, and may fail if a while-stepping frame does not include all the 141same data that is collected at the tracepoint hit. 142</p> 143<hr> 144<div class="header"> 145<p> 146Next: <a href="save-tracepoints.html#save-tracepoints" accesskey="n" rel="next">save tracepoints</a>, Previous: <a href="tfind.html#tfind" accesskey="p" rel="previous">tfind</a>, Up: <a href="Analyze-Collected-Data.html#Analyze-Collected-Data" accesskey="u" rel="up">Analyze Collected Data</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> 147</div> 148 149 150 151</body> 152</html> 153