Commit Graph

112390 Commits

Author SHA1 Message Date
Tom Tromey
5b92bbd934 Remove obsolete check from skip_compile_feature_tests
skip_compile_feature_tests checks for "Command not supported on this
host", but this error was removed by commit e8d8cce6 ("Import mkdtemp
gnulib module, fix mingw build").  This patch removes the obsolete
test.
2022-12-01 08:28:20 -07:00
Tom Tromey
3b7aed0cc7 Remove one copy of skip_compile_feature_tests
I noticed that there are two identical copies of
skip_compile_feature_tests in the test suite.  This removes one from
gdb.exp, in favor of the one in compile-support.exp.
2022-12-01 08:28:20 -07:00
Clément Chigot
de3b40320c binutils: improve holes detection in .debug_loclists.
The previous warnings about holes in .debug_loclists sections don't
take into account the headers of each CU and could include the locviews
if they precede the loclist.

The following warning can be triggered between two CU.
    ... <previous CU views> ...
    0000001d <End of list>

    0000002a v000000000000000 v000000000000000 location view pair
    0000002c v000000000000000 v000000000000000 location view pair

readelf: Warning: There is a hole [0x1e - 0x2e] in .debug_loclists section.
    0000002e v000000000000000 v000000000000000 views at 0000002a for:
    ...

But [0x1e - 0x2a] corresponds to the CU header and  [0x2a - 0x2e] are
the locviews.  Thus there is no hole here.

binutils/ChangeLog:

	* dwarf.c (display_debug_loc): Adjust holes detections for
	headers and locviews.
2022-12-01 15:49:03 +01:00
Nick Clifton
6ef35c04df Fix verilog output when the width is > 1.
PR 25202
bfd	* bfd.c (VerilogDataEndianness): New variable.
	(verilog_write_record): Use VerilogDataEndianness, if set, to
	choose the endianness of the output.
	(verilog_write_section): Adjust the address by the data width.

binutils* objcopy.c (copy_object): Set VerilogDataEndianness to the
	endianness of the input file.
	(copy_main): Verifiy the value set by the --verilog-data-width
	option.
	* testsuite/binutils-all/objcopy.exp: Add tests of the new behaviour.
	* testsuite/binutils-all/verilog-I4.hex: New file.
2022-12-01 13:09:26 +00:00
Jan Beulich
7505bb034c x86: rework of match_template()'s suffix checking
(Ab)using i386_opcode_modifier for this has been overkill, as the logic
doesn't really require the full structure. With the removal of
LONG_DOUBLE_MNEM_SUFFIX and No_ldSuf there's no good reason at all
anymore to pull out such a loop invariant: We're dealing a check of a
bit in the loop for a simple comparison. Do the original compares inside
the loop, thus also making it easier to understand what is actually
being checked.
2022-12-01 10:00:26 +01:00
Jan Beulich
f207f1c113 x86: drop No_ldSuf
With LONG_DOUBLE_MNEM_SUFFIX gone there'salso no use for No_ldSuf
anymore.
2022-12-01 10:00:07 +01:00
Jan Beulich
a4d3acd215 x86/Intel: drop LONG_DOUBLE_MNEM_SUFFIX
With the removal of its use for FPU insns the suffix is now finally
properly misnamed. Drop its use altogether, replacing it by a separate
boolean instead.
2022-12-01 09:59:39 +01:00
Jan Beulich
f210f0a05e x86/Intel: restrict use of LONG_DOUBLE_MNEM_SUFFIX
As a comment near the top of match_template() already says: We really
only need this pseudo-suffix for far branch handling. Stop "deriving" it
for floating point insns. (Don't bother renaming the now properly
misnamed LONG_DOUBLE_MNEM_SUFFIX, to e.g. FAR_BRANCH_SUFFIX - it's going
to disappear anyway.)
2022-12-01 09:59:11 +01:00
Tom de Vries
f0cb4aa909 [gdb/testsuite] Wait longer for core generation
When I run the gdb testsuite on a powerpc64le-linux system with (slow) nfs
file system, I run into timeouts due to core generation, like for instance:
...
(gdb) gcore $outputs/gdb.ada/task_switch_in_core/crash.gcore^M
FAIL: gdb.ada/task_switch_in_core.exp: save a corefile (timeout)
...

Fix this by using with_timeout_factor 3 in gdb_gcore_cmd.

Tested on powerpc64le-linux.
Approved-By: Tom Tromey <tom@tromey.com>
2022-12-01 07:25:04 +01:00
Tom de Vries
32a5aa2625 [gdb/testsuite] Fix gdb.ada/float-bits.exp for powerpc64le
On powerpc64le-linux, I run into:
...
(gdb) print 16llf#4000921fb54442d18469898cc51701b8#^M
$9 = <invalid float value>^M
(gdb) FAIL: gdb.ada/float-bits.exp: print \
  16llf#4000921fb54442d18469898cc51701b8#
...

The problem is that we're using a hex string for the 128-bit IEEE quad long
double format, but the actual long double float format is:
...
gdbarch_dump: long_double_format = floatformat_ibm_long_double_little^M
...

Fix this by using the hex string obtained by compiling test.c:
...
long double a = 5.0e+25L;
...
like so:
...
$ gcc -mlittle test.c -c -g
...
and running gdb:
...
$ gdb -q -batch test.o -ex "p /x a"
$1 = 0xc1e1c000000000004544adf4b7320335
...
and likewise for -mbig:
...
$ gdb -q -batch test.o -ex "p /x a"
$1 = 0x4544adf4b7320335c1e1c00000000000
...

Tested on powerpc64le-linux.

I excercised the case of floatformat_ibm_long_double_big by
using "set endian big" in the test-case.

Note that for this patch to work correctly, recent commit aaa79cd62b ("[gdb]
Improve printing of float formats") is required.

PR testsuite/29816
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29816
Approved-By: Tom Tromey <tom@tromey.com>
2022-12-01 07:25:04 +01:00
GDB Administrator
8a1c55cdfb Automatic date update in version.in 2022-12-01 00:00:40 +00:00
Tom de Vries
f5c697b137 [gdb/testsuite] Fix DUPLICATEs in s390-multiarch.exp
On s390x-linux, I run into:
...
DUPLICATE: gdb.arch/s390-multiarch.exp: Linux v2
DUPLICATE: gdb.arch/s390-multiarch.exp: Linux v2
DUPLICATE: gdb.arch/s390-multiarch.exp: Linux v2
...

Fix this by using with_test_prefix.

Tested on s390x-linux.
2022-11-30 19:29:52 +01:00
Tom de Vries
a496d4a104 [gdb/testsuite] Enable gdb.arch/s390-disassembler-options.exp for --enable-targets=all
On s390x-linux, I run into:
...
DUPLICATE: gdb.arch/s390-disassembler-options.exp: \
  show disassembler-options esa
...

First, reproduce this on x86_64-linux with --enable-targets=all, by replacing
the test for 'istarget "s390*-*-*"' with a test for 'get_set_option_choices
"set architecture" "s390"'.

Fix the DUPLICATE by using with_test_prefix.

Also modernize the test-case by using clean_restart instead of gdb_exit/gdb_start.

Tested on x86_64-linux.
2022-11-30 18:49:16 +01:00
Michael Matz
885d86436c section-select: Fix exclude-file-3
this testcase wasn't correctly testing everything, it passed, even
though sections from an excluded file were included.  Fixing this
reveals a problem in the new section selector.  This fixes that as
well.
2022-11-30 17:15:08 +01:00
Michael Matz
d779149912 section-select: Remove unused code
walk_wild_file, hence walk_wild_section and walk_wild_section_handler
aren't called with the prefix tree.  Hence initialization of the latter
and all potential special cases for it aren't used anymore.  That also
removes the need to handler_data[] and some associated helper functions.
So, remove all of that.
2022-11-30 17:15:08 +01:00
Michael Matz
b1eecf6f66 section-select: Implement a prefix-tree
Now that we have a list of potentially matching sections per wild
statement we can actually pre-fill that one by going once over all input
sections and match their names against a prefix-tree that points to the
potentially matching wild statements.

So instead of looking at all sections names for each glob for each wild
statement we now look at the sections only once and then only check
against those globs that have a possibility of a match at all (usually
only one or two).

This pushes the whole section selection off the profiles.
2022-11-30 17:15:08 +01:00
Michael Matz
50be5d1128 section-select: Completely rebuild matches
The check_relocs callback (and others) might have created new
section behind our back and some of them (e.g. on powerpc the
"linker stubs" .got) need to come in front of all others, despite
being created late (a symptom would be "TOC opt*" failing on powerpc).

This resets all section matches before updating for newly created
sections (i.e. completely rebuilds the matches).
2022-11-30 17:15:08 +01:00
Michael Matz
43ae96e94a section-select: Lazily resolve section matches
and remember the results.  Before this the order of section matching
is basically:

  foreach script-wild-stmt S
    foreach pattern P of S
      foreach inputfile I
        foreach section S of I
	  match S against P
	    if match: do action for S

And this process is done three or four times: for each top-level call to
walk_wild() or wild(), that is: check_input_sections, lang_gc_sections,
lang_find_relro_sections and of course map_input_to_output_sections.

So we iterate over all sections of all files many many times (for each
glob).  Reality is a bit more complicated (some special glob types don't
need the full iteration over all sections, only over all files), but
that's the gist of it.

For future work this shuffles the whole ordering a bit by lazily doing
the matching process and memoizing results, trading a little memory for
a 75% speedup of the overall section selection process.

This lazy resolution introduces a problem with sections added late
that's corrected in the next patch.
2022-11-30 17:15:07 +01:00
Tom Tromey
f978da6441 Bounds check access to Ada task state names
While looking into Ada tasking a little, I noticed that no bounds
checking is done on accesses to the Ada task state names arrays.  This
isn't a problem currently, but if the runtime ever added numbers -- or
if there was some kind of runtime corruption -- it could cause a gdb
crash.

This patch adds range checking.  It also adds a missing _() call when
printing from the 'task_states' array.
2022-11-30 07:56:07 -07:00
Tom Tromey
016c606c66 Use ui_file_up in mi_interp
This changes mi_interp to use ui_file_up rather than explicit
management.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
2022-11-30 07:12:38 -07:00
Tom Tromey
35254615ab Rename fields of cli_interp_base::saved_output_files
This renames the fields of cli_interp_base::saved_output_files, as
requested by Simon.  I tried to choose names that more obviously
reflect what the field is used for.  I also added a couple of
comments.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
2022-11-30 07:12:32 -07:00
Tom de Vries
aaa79cd62b [gdb] Improve printing of float formats
Currently, on x86_64, a little endian target, I get:
...
$ gdb -q -batch -ex "maint print architecture" | grep " = floatformat"
gdbarch_dump: bfloat16_format = floatformat_bfloat16_big
gdbarch_dump: double_format = floatformat_ieee_double_big
gdbarch_dump: float_format = floatformat_ieee_single_big
gdbarch_dump: half_format = floatformat_ieee_half_big
gdbarch_dump: long_double_format = floatformat_i387_ext
...
which suggests big endian.

This is due to this bit of code in pformat:
...
    /* Just print out one of them - this is only for diagnostics.  */
    return format[0]->name;
...

Fix this by using gdbarch_byte_order to pick the appropriate index, such that
we have the more accurate:
...
gdbarch_dump: bfloat16_format = floatformat_bfloat16_little
gdbarch_dump: half_format = floatformat_ieee_half_little
gdbarch_dump: float_format = floatformat_ieee_single_little
gdbarch_dump: double_format = floatformat_ieee_double_little
gdbarch_dump: long_double_format = floatformat_i387_ext
...

Tested on x86_64-linux.
2022-11-30 11:37:11 +01:00
Alan Modra
6bd454ca03 Correct ordering problem in comm-data.exp
* testsuite/ld-elf/comm-data.exp: Build libcomm-data.so before
	attempting to read it to set ELF64.
2022-11-30 18:41:40 +10:30
Alan Modra
a7cca0b24c regen SRC-POTFILES.in 2022-11-30 18:41:40 +10:30
Jan Beulich
fcaf78fe4d x86/Intel: adjustment to restricted suffix derivation
In "x86/Intel: restrict suffix derivation" I think I screwed up
slightly, bringing a piece of code out of sync with its comment, and
resulting in a suffix potentially being derived when one isn't needed.
2022-11-30 09:10:17 +01:00
Jan Beulich
4943d587f9 x86: clean up after removal of support for gcc <= 2.8.1
At the very least a comment in process_operands() is stale. Beyond that
there are effectively two options:
1) It is possible that FADDP and FMULP were mistakenly not marked as
   being in need of dealing with the compiler anomaly, and hence the
   respective templates weren't removed at the time when they should
   have been.
2) It is also possible that there are indeed uses known beyond compiler
   generated output for these two commutative opcodes, and hence the
   templates need to stay.
To be on the safe side assume 2: Update the comment and fold the
templates into their "normal" ones (utilizing D), adjusting consuming
code accordingly.

For FMULP also add a comment paralleling a similar one FADDP has.
2022-11-30 09:06:59 +01:00
Jan Beulich
ac9226cf8c x86: drop FloatR
There are just 4 templates using it, which can be easily identified by
other means, as D is set only on a very limited number of FPU templates.
Also move the respective conditional out of the code path taken by all
"reverse match" insns (it probably should have been this way already
before, to avoid the one conditional in the common case).

With this the templates which had FloatR dropped no longer differ from
their AT&T syntax + mnemonic counterparts - the only difference is now
which of the two would be recognized. For this, however, we don't need
two templates - we can simply arrange the condition for setting
Opcode_FloatR accordingly.
2022-11-30 09:06:33 +01:00
Jan Beulich
3df781c5a4 x86: extend FPU test coverage for AT&T / Intel mnemonic differences
Before touching the templates, let's ensure we actually cover things:
For one FSUB{,R} and FDIV{,R} would better be tested with operands in
both possible orders. And then -mmnemonic=intel wasn't tested at all.
2022-11-30 09:05:57 +01:00
Joel Brobecker
629e5e1ae8 src-release.sh: Fix gdb source tarball build failure due to libsframe
This script was recently changed as follow:

    | commit e619dddb3a
    | Date:   Tue Nov 15 15:07:13 2022 -0800
    | Subject: src-release.sh: Add libsframe
    |
    | Add libsframe to the list of top level directories that will be included
    | in a release.

Since then, the gdb source tarball has been failing with the error
below during the "make configure-host configure-target" phase:

    | make[3]: *** No rule to make target '../libsframe/libsframe.la',
    |     needed by 'libbfd.la'.  Stop.
    | make[3]: Leaving directory '/tmp/gdb-public/bfd'

This patch fixes the issue by adding libsframe to the list of
GDB_SUPPORT_DIRS, similar to what was done for BINUTILS.

ChangeLog:

        * src-release.sh (GDB_SUPPORT_DIRS): Add libsframe.
2022-11-30 07:32:58 +04:00
GDB Administrator
eb362ca1a6 Automatic date update in version.in 2022-11-30 00:00:42 +00:00
Tom de Vries
f3e033f32a [gdb/testsuite] Fix gdb.base/vla-optimized-out.exp for ppc64le
On powerpc64le-linux, I run into:
...
(gdb) PASS: gdb.base/vla-optimized-out.exp: o1: printed optimized out vla
p sizeof (a)^M
$2 = <optimized out>^M
(gdb) FAIL: gdb.base/vla-optimized-out.exp: o1: \
  printed size of optimized out vla
...

The problem happens as follows.

In order to find the size of the optimized out vla, gdb needs to evaluate:
...
<155> DW_AT_upper_bound : 13 byte block: f3 1 53 23 1 8 20 24 8 20 26 31 1c \
  (DW_OP_GNU_entry_value: (DW_OP_reg3 (r3)); DW_OP_plus_uconst: 1;
   DW_OP_const1u: 32; DW_OP_shl; DW_OP_const1u: 32; DW_OP_shra; DW_OP_lit1;
   DW_OP_minus)
...

When trying to evaluate DW_OP_GNU_entry_value, it looks for a call site
matching the pc, but doesn't find it:
...
$ gdb -q -batch outputs/gdb.base/vla-optimized-out/vla-optimized-out-o1 \
  -ex "break f1" -ex run -ex "set debug entry-values 1" -ex "print sizeof (a)"
Breakpoint 1 at 0x1000067c: file vla-optimized-out.c, line 34.

Breakpoint 1, f1 (i=5) at vla-optimized-out.c:34
34      }
DW_OP_entry_value resolving cannot find DW_TAG_call_site 0x100006b0 in main
$1 = <optimized out>
....

The call site lookup fails because the call site label .LVL4:
...
        bl f1    # 11   *call_value_nonlocal_aixdi      [length = 8]
        nop
.LVL4:
...
is not placed directly after the bl insn.  This is gcc PR target/107909.

However, after manually fixing the .s file we have instead:
...
Cannot find matching parameter at DW_TAG_call_site 0x10000690 at main
$1 = <optimized out>
...
due to the fact that the call site has no call site parameters.

The call site does have a reference to the corresponding function f1, with
parameter i, for which we find location list entries:
...
  0037 1000067c 10000680 (DW_OP_reg3 (r3))
  004a 10000680 10000690 (DW_OP_GNU_entry_value: (DW_OP_reg3 (r3));
                          DW_OP_stack_value)
...
and we could use the fact that the current pc is in the 1000067c-10000680
range, and that that the range starts at the start of the function, to deduce
that DW_OP_GNU_entry_value: (DW_OP_reg3 (r3)) == DW_OP_reg3 (r3).
But that's a non-trivial enhancement, filed as enhancement PR symtab/29836.

Fix this by allowing <optimized out> for target powerpc and the gcc compiler.

Reviewed-By: Carl Love <cel@us.ibm.com>
Tested-By: Carl Love <cel@us.ibm.com>
PR testsuite/29813
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29813
2022-11-29 22:47:31 +01:00
Simon Marchi
f432d5ef2b gdb/testsuite: make gdb_unload use gdb_test_multiple
In the failure seen by Philippe here:

  https://inbox.sourceware.org/gdb-patches/20221120173024.3647464-1-philippe.waroquiers@skynet.be/

gdb_unload crashed GDB, leaving no trace in the test results.  Change it
to use gdb_test_multiple, so that it leaves an UNRESOLVED result.  I
think it is good practice anyway.

Make it return the result of gdb_test_multiple directly, change
gdb.python/py-objfile.exp accordingly.

Change gdb.base/endian.exp as well to avoid duplicate test names.

Change gdb.base/gnu-debugdata.exp to avoid recording a test result,
since gdb_unload does it already now.

Change-Id: I59a1e4947691330797e6ce23277942547c437a48
Approved-By: Tom de Vries <tdevries@suse.de>
2022-11-29 11:43:54 -05:00
Simon Marchi
d56614a992 gdb/testsuite: make gdb_test_multiple return immediately if send_gdb fails
In the failure seen by Philippe here:

  https://inbox.sourceware.org/gdb-patches/20221120173024.3647464-1-philippe.waroquiers@skynet.be/

... the testsuite only outputs PASSes, and an ERROR, resulting from an
uncaught exception.  This is a bit sneaky, because ERRORs are not
reported in the test summary.  In certain circumstances, it can be easy
to miss.

Normally, gdb_test_multiple outputs an UNRESOLVED when GDB crashes.  But
this is only if it manages to send the command, and it's that command
that crashes GDB.  Here, the ERROR is due to the fact that GDB had
already crashed by the time we entered gdb_test_multiple and tried to
send a command.  GDB was crashed by the previous "file" command, sent by
gdb_unload.  Because gdb_unload uses bare expect, it didn't record a
test failure when crashing GDB (this will be addressed separately).

In this patch, I propose to make gdb_test_multiple call unresolved
directly and return -1 send_gdb fails.  This way, if GDB is already
crashed by the time we enter gdb_test_multiple, it will leave a trace in
the test results in the form of an UNRESOLVED.  It will also spare us
the not-so-useful-in-my-opinion TCL backtrace.

Before, it looks like:

    ERROR: Couldn't send python print(objfile.filename) to GDB.
    ERROR: : spawn id exp9 not open
        while executing
    "expect {
    -i exp9 -timeout 10
            -re ".*A problem internal to GDB has been detected" {
                fail "$message (GDB internal error)"
                gdb_internal_error..."
        ("uplevel" body line 1)
        invoked from within
    "uplevel $body" NONE : spawn id exp9 not open

And after:

    Couldn't send python print(objfile.filename) to GDB.
    UNRESOLVED: gdb.python/py-objfile.exp: objfile.filename after objfile is unloaded

Change-Id: I72af8dc0d687826fc3f76911c27a9e5f91b677ba
Approved-By: Tom de Vries <tdevries@suse.de>
2022-11-29 11:43:51 -05:00
Vladimir Mezentsev
5a4020d4d4 gprofng: remove unused gprofng/src/DbeSession.cc.1 2022-11-28 20:52:10 -08:00
Max Filippov
d0a2cfbd31 xtensa: allow dynamic configuration
Import include/xtensa-dynconfig.h that defines XCHAL_* macros as fields
of a structure returned from the xtensa_get_config_v<x> function call.
Define that structure and fill it with default parameter values
specified in the include/xtensa-config.h.
Define reusable function xtensa_load_config that tries to load
configuration and return an address of an exported object from it.
Define functions xtensa_get_config_v{1,2} that use xtensa_load_config
to get structures xtensa_config_v{1,2}, either dynamically configured
or the default.

bfd/
	* Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Append
	xtensa-dynconfig.c.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* configure.ac (xtensa_elf32_be_vec, xtensa_elf32_le_vec): Add
	xtensa-dynconfig.lo to the tb.
	* elf32-xtensa.c (xtensa-config.h): Replace #include with
	xtensa-dynconfig.h.
	(XSHAL_ABI, XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): Remove
	definitions.
	* xtensa-dynconfig.c: New file.
	* xtensa-isa.c (xtensa-dynconfig.h): New #include.
	(xtensa_get_modules): New function.
	(xtensa_isa_init): Call xtensa_get_modules instead of taking
	address of global xtensa_modules.

gas/
	* config/tc-xtensa.c (xtensa-config.h): Replace #include with
	xtensa-dynconfig.h.
	(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0, XTENSA_MARCH_EARLIEST):
	Remove definitions.
	* config/tc-xtensa.h (xtensa-config.h): Replace #include with
	xtensa-dynconfig.h.
	* config/xtensa-relax.c (xtensa-config.h): Replace #include with
	xtensa-dynconfig.h.
	(XCHAL_HAVE_WIDE_BRANCHES): Remove definition.

include/
	* xtensa-dynconfig.h: New file.

ld/
	* emultempl/xtensaelf.em (xtensa-config.h): Replace #include
	with xtensa-dynconfig.h.
	(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): Remove definitions.
2022-11-28 18:16:12 -08:00
GDB Administrator
cb44f89ce9 Automatic date update in version.in 2022-11-29 00:00:28 +00:00
Andrew Burgess
d4c4542312 gdb/testsuite: remove use of then keyword from library files
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the testsuite
library files (in boards/, config/, and lib/).  Previous commits have
removed all uses of the 'then' keyword from the test script files,
this commit just cleans up the library files.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:10 +00:00
Andrew Burgess
f50c72da4d gdb/testsuite: remove use of then keyword from gdb.*/*.exp scripts
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the remaining
gdb.*/*.exp scripts.  Previous commits have done the bulk of this
removal, this commit just handles the remaining directories that each
contain a low number of instances.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:10 +00:00
Andrew Burgess
0216141ac3 gdb/testsuite: remove use of then keyword from gdb.multi/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.multi/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
49bb47443c gdb/testsuite: remove use of then keyword from gdb.fortran/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.fortran/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
6ca2ea063a gdb/testsuite: remove use of then keyword from gdb.disasm/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.disasm/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
bde43e8dbe gdb/testsuite: remove use of then keyword from gdb.reverse/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.reverse/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
89c6d320b2 gdb/testsuite: remove use of then keyword from gdb.trace/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.trace/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
b8ffa8b327 gdb/testsuite: remove use of then keyword from gdb.threads/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.threads/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
b0e16ca58d gdb/testsuite: remove use of then keyword from gdb.python/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.python/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
95701caead gdb/testsuite: remove use of then keyword from gdb.cp/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.cp/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
75b6f38664 gdb/testsuite: remove use of then keyword from gdb.arch/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.arch/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
65a33d75c2 gdb/testsuite: remove use of then keyword from gdb.base/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.base/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
ed7fbdd033 gdb/testsuite: remove use of then keyword from gdb.ada/*.exp
The canonical form of 'if' in modern TCL is 'if {} {}'.  But there's
still a bunch of places in the testsuite where we make use of the
'then' keyword, and sometimes these get copies into new tests, which
just spreads poor practice.

This commit removes all use of the 'then' keyword from the gdb.ada/
test script directory.

There should be no changes in what is tested after this commit.
2022-11-28 21:04:09 +00:00
Andrew Burgess
e2afece894 gdb/testsuite: remove DOS line endings from a test script
The gdb.fortran/nested-funcs.exp test script has DOS line endings.  I
can see no reason why this script needs DOS line endings.

Convert to UNIX line endings.

There should be no change in what is tested after this commit.
2022-11-28 21:04:09 +00:00