gdb: introduce "set index-cache enabled", deprecate "set index-cache on/off"
authorSimon Marchi <simon.marchi@polymtl.ca>
Thu, 4 Nov 2021 19:31:28 +0000 (15:31 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Thu, 4 Nov 2021 19:48:59 +0000 (15:48 -0400)
commit7bc5c369fae6dda3657467aee14e352a66b4270f
tree892fdb9b3bb2fc0f6d1cab26f7fd64373ca691cd
parentfcef6471ed3c07d6eac2d9e0010552994f0891aa
gdb: introduce "set index-cache enabled", deprecate "set index-cache on/off"

The "set index-cache" command is used at the same time as a prefix
command (prefix for "set index-cache directory", for example), and a
boolean setting for turning the index-cache on and off.  Even though I
did introduce that, I now don't think it's a good idea to do something
non-standard like this.

First, there's no dedicated CLI command to show whether the index-cache
is enabled, so it has to be custom output in the "show index-cache
handler".  Also, it means there's no good way a MI frontend can find out
if the index-cache is enabled.  "-gdb-show index-cache" doesn't show it
in the MI output record:

    (gdb) interpreter-exec mi "-gdb-show index-cache"
    ~"\n"
    ~"The index cache is currently disabled.\n"
    ^done,showlist={option={name="directory",value="/home/simark/.cache/gdb"}}

Fix this by introducing "set/show index-cache enabled on/off", regular
boolean setting commands.  Keep commands "set index-cache on" and "set
index-cache off" as deprecated aliases of "set index-cache enabled",
with respectively the default arguments "on" and "off".

Update tests using "set index-cache on/off" to use the new command.
Update the regexps in gdb.base/maint.exp to figure out whether the
index-cache is enabled or not.  Update the doc to mention the new
commands.

Change-Id: I7d5aaaf7fd22bf47bd03e0023ef4fbb4023b37b3
gdb/doc/gdb.texinfo
gdb/dwarf2/index-cache.c
gdb/testsuite/gdb.base/index-cache.exp
gdb/testsuite/gdb.base/maint.exp
gdb/testsuite/gdb.dwarf2/per-bfd-sharing.exp