Restrict the pattern in gdb.base/jit.exp
authorYao Qi <yao@codesourcery.com>
Fri, 6 Jun 2014 11:16:47 +0000 (19:16 +0800)
committerYao Qi <yao@codesourcery.com>
Fri, 6 Jun 2014 13:43:26 +0000 (21:43 +0800)
I see the following fail in some thumb multi-lib in arm-none-linux-gnueabi,

info function jit_function^M
All functions matching regular expression "jit_function":^M
^M
Non-debugging symbols:^M
0x00000790  __real_jit_function_XXXX^M
0x0000079c  __jit_function_XXXX_from_arm^M
0x0000079c  jit_function_0000^M
0x00000790  __real_jit_function_XXXX^M
0x0000079c  __jit_function_XXXX_from_arm^M
0x0000079c  jit_function_0001^M
(gdb) FAIL: gdb.base/jit.exp: one_jit_test-2: info function jit_function

the test expects to see only jit_function_0000 and jit_function_0001

one_jit_test 2 "${hex}  jit_function_0000\[\r\n\]+${hex}  jit_function_0001"

Symbols with the prefix "__real_" or suffix "_from_arm" is generated
by gcc/ld for arm/thumb interworking.

This patch is to restrict the pattern from "jit_function" to
"^jit_function", the output becomes expected.

gdb/testsuite:

2014-06-06  Yao Qi  <yao@codesourcery.com>

* gdb.base/jit.exp (one_jit_test): Restrict the pattern
from "jit_function" to "^jit_function".

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/jit.exp

index 5484618aa63866f7c1eea121bf257d9ebc6b357f..c513d0833bede48f53092728b038c2350aecd1ac 100644 (file)
@@ -1,3 +1,8 @@
+2014-06-06  Yao Qi  <yao@codesourcery.com>
+
+       * gdb.base/jit.exp (one_jit_test): Restrict the pattern
+       from "jit_function" to "^jit_function".
+
 2014-06-06  Yao Qi  <yao@codesourcery.com>
 
        * gdb.base/async.c (foo): Add one statement.
index 366c8b387eb348e7cf2fa743d6b8101366ae1075..ca6e6c3430b190d30a53ab0daf56e48707ca134a 100644 (file)
@@ -93,7 +93,7 @@ proc one_jit_test {count match_str} {
        gdb_breakpoint [gdb_get_line_number "break here 1"]
        gdb_continue_to_breakpoint "break here 1"
 
-       gdb_test "info function jit_function" "$match_str"
+       gdb_test "info function ^jit_function" "$match_str"
 
        # This is just to help debugging when things fail
        if {$verbose > 0} {