[PATCH][gdb/testsuite] Fix index-cache.exp with CC_WITH_TWEAKS_FLAGS=-i

Tom de Vries tdevries@suse.de
Fri May 3 10:44:00 GMT 2019


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

[gdb/testsuite] Fix index-cache.exp with CC_WITH_TWEAKS_FLAGS=-i

gdb/testsuite/ChangeLog:

2019-05-03  Tom de Vries  <tdevries@suse.de>

	* gdb.base/index-cache.exp: Remove .gdb_index section from generated
	executable.

---
 gdb/testsuite/gdb.base/index-cache.exp | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gdb/testsuite/gdb.base/index-cache.exp b/gdb/testsuite/gdb.base/index-cache.exp
index 4e583abf01..a97252cee4 100644
--- a/gdb/testsuite/gdb.base/index-cache.exp
+++ b/gdb/testsuite/gdb.base/index-cache.exp
@@ -22,6 +22,12 @@ if { [prepare_for_testing "failed to prepare" $testfile $srcfile] } {
     return
 }
 
+# If a .gdb_index section was already added during compilation, remove it.
+if {[run_on_host "objcopy" [gdb_find_objcopy] \
+	 "--remove-section .gdb_index $binfile"]} {
+    return
+}
+
 # List the files in DIR on the host (where GDB-under-test runs).
 # Return a list of two elements:
 #   - 0 on success, -1 on failure



More information about the Gdb-patches mailing list