[gdb/testsuite] Fix index-cache.exp with cc-with-{gdb-index,debug-names}

Tom de Vries tdevries@suse.de
Mon May 6 06:43:00 GMT 2019


On 04-05-19 18:28, Simon Marchi wrote:
> On 2019-05-04 4:35 a.m., Tom de Vries wrote:
>> [ was: Re: [PATCH][gdb/testsuite] Fix index-cache.exp with
>> CC_WITH_TWEAKS_FLAGS=-i ]
>>
>> On 03-05-19 23:17, Simon Marchi wrote:
>>> On 2019-05-03 6:43 a.m., Tom de Vries wrote:
>>>> Hi,
>>>>
>>>> When running gdb.base/index-cache.exp with target board cc-with-tweaks with
>>>> CC_WITH_TWEAKS_FLAGS set to "-i", we run into:
>>>> ...
>>>> FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: at least one file \
>>>>       was created
>>>> FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: expected file is there
>>>> FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: check index-cache stats
>>>> FAIL: gdb.base/index-cache.exp: test_cache_enabled_hit: check index-cache stats
>>>> ...
>>>>
>>>> The problem is that the target board makes sure that the generated executable
>>>> contains a .gdb_index section, while the test assumes that the executable
>>>> doesn't contain this section.
>>>>
>>>> Fix this by removing the .gdb_index section from the generated executable.
>>>>
>>>> Tested on x86_64-linux with native and CC_WITH_TWEAKS_FLAGS=-i config.
>>>>
>>>> OK for trunk?
>>>>
>>>> Thanks,
>>>> - Tom
>>>
>>> Hi Tom,
>>>
>>> I would slightly prefer that instead of doing this, we would notice that that file
>>> already has an index (in the form of .gdb_index or .debug_names), and adjust our
>>> expectations in the test.
>>>
>>> In other words, we currently assert that loading the file in GDB will produce some
>>> files in the cache.  However, if we know that the file already has an index, we
>>> should verify that no file was produced, as this is the behavior we expect when
>>> loading a file which already has an index.
>>>
>>> Stripping the index makes the test pass, but it just goes back to testing the same
>>> thing as with the default board file.  Adjusting our expectation to the presence
>>> of an index makes the test cover a different use case.
>>
>> I've implemented this approach, attached below.
>>
>> OK for trunk?
>>
>> Thanks,
>> - Tom
>>
> 
> Thanks Tom, this LGTM.
> 
> Before pushing, could you just adjust the comments above each proc?  They describe
> what the test expects (at a high level), so maybe just add a precision about what is
> expected when the binary already has an index.
> 

Done.

Also replaced use of hardcoded "readelf" with result of gdb_find_readelf.

Thanks,
- Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-gdb-testsuite-Fix-index-cache.exp-with-cc-with-gdb-index-debug-names.patch
Type: text/x-patch
Size: 4408 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20190506/4bd64c51/attachment.bin>


More information about the Gdb-patches mailing list