Document gdb.in/gdb.cmd files and debugredirect cli command
Commit Message
> On 22 May 2019, at 08:23, Eli Zaretskii <eliz@gnu.org> wrote:
>
>> From: Alan Hayward <Alan.Hayward@arm.com>
>> CC: nd <nd@arm.com>, Alan Hayward <Alan.Hayward@arm.com>
>> Date: Tue, 21 May 2019 09:08:01 +0000
>>
>> Add missing documentation for the debugredirect setting.
>>
>> Add description and uses of gdb.in/gdb.cmd to the testsuite README.
>>
>> Mention this in the NEWS file.
>>
>> [Wasn't sure if testsuite changes belonged in NEWS? If not I can
>> drop that part]
>> ---
>> gdb/NEWS | 11 +++++++++++
>> gdb/doc/gdb.texinfo | 3 +++
>> gdb/testsuite/README | 21 +++++++++++++++++++++
>> 3 files changed, 35 insertions(+)
>
> This is OK, but please also update the 2 ChangeLog files.
Thanks.
Pushed with the changeLogs.
Full patch for reference:
@@ -1,3 +1,7 @@
+2019-05-22 Alan Hayward <alan.hayward@arm.com>
+
+ * NEWS: Add debugredirect and testsuite sections.
+
2019-05-22 Simon Cook <simon.cook@embecosm.com>
* riscv-tdep.c (riscv_gdbarch_init): Support determining flen from
@@ -46,6 +46,10 @@ show print max-depth
The default max-depth is 20, but this can be set to unlimited to get
the old behavior back.
+set logging debugredirect [on|off]
+ By default, GDB debug output will go to both the terminal and the logfile.
+ Set if you want debug output to go only to the log file.
+
* New MI commands
-complete
@@ -53,6 +57,13 @@ show print max-depth
were to be given as a command itself. This is intended for use by MI
frontends in cases when separate CLI and MI channels cannot be used.
+* Testsuite
+
+ The testsuite now creates the files gdb.cmd (containing the arguments
+ used to launch GDB) and gdb.in (containing all the commands sent to
+ GDB) in the output directory for each test script. Multiple invocations
+ are appended with .1, .2, .3 etc.
+
*** Changes in GDB 8.3
* GDB and GDBserver now support access to additional registers on
@@ -1,3 +1,7 @@
+2019-05-22 Alan Hayward <alan.hayward@arm.com>
+
+ * gdb.texinfo (Shell Commands): Add debugredirect.
+
2019-05-22 Jan Vrany <jan.vrany@fit.cvut.cz>
* gdb.texinfo: Minor formatting fixes.
@@ -1477,6 +1477,9 @@ you want @code{set logging on} to overwrite the logfile instead.
@item set logging redirect [on|off]
By default, @value{GDBN} output will go to both the terminal and the logfile.
Set @code{redirect} if you want output to go only to the log file.
+@item set logging debugredirect [on|off]
+By default, @value{GDBN} debug output will go to both the terminal and the logfile.
+Set @code{debugredirect} if you want debug output to go only to the log file.
@kindex show logging
@item show logging
Show the current values of the logging settings.
@@ -1,3 +1,7 @@
+2019-05-22 Alan Hayward <alan.hayward@arm.com>
+
+ * README (Re-running Tests Outside The Testsuite): New section.
+
2019-05-21 Tom de Vries <tdevries@suse.de>
* gdb.arch/amd64-eval.exp: Require c++11.
@@ -95,6 +95,27 @@ example:
The script will output its analysis report to the standard output.
+Re-running Tests Outside The Testsuite
+**************************************
+
+When running a test, the arguments used to run GDB are saved to gdb.cmd and
+all commands sent to GDB are saved to gdb.in. As well as being a reference
+of the commands run, they can be used to manually re-run a test by using
+the gdb.in file as a batch file to a GDB launched with the arguments in the
+gdb.cmd file, for example:
+ $(cat outputs/gdb.base/store/gdb.cmd) -x outputs/gdb.base/store/gdb.in
+
+Tests that run GDB multiple times will append .1, .2, .3 etc to the end
+of each .cmd and .in file.
+
+When gdbserver is launched as part of a test, a gdbserver.cmd will be created.
+To re-run these tests, run the contents of gdbserver.cmd in a separate
+terminal before running gdb, for example:
+ $(cat outputs/gdb.base/store/gdbserver.cmd)
+Alternatively, if the test is run with GDBSERVER_DEBUG="replay", then this
+will create a gdbserver.replay file which can be used with the gdbreplay tool,
+instead of launching gdbserver.
+
Running the Performance Tests
*****************************