gdb.trace: Remove unnecessary target check from ftrace.exp.
The check used hardcoded targets and wasn't doing anything useful anyway, since unsupported architectures blow up on link due to missing the IPA library before they ever get to that check. gdb/testsuite/ChangeLog: * gdb.trace/ftrace.exp: Remove unnecessary target check.
This commit is contained in:
parent
7337a6f229
commit
678b48b7cf
2 changed files with 69 additions and 68 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
|
||||||
|
|
||||||
|
* gdb.trace/ftrace.exp: Remove unnecessary target check.
|
||||||
|
|
||||||
2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
|
2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
|
||||||
|
|
||||||
* gdb.trace/entry-values.exp: Surround $call_insn with '\y',
|
* gdb.trace/entry-values.exp: Surround $call_insn with '\y',
|
||||||
|
|
|
@ -84,97 +84,94 @@ proc test_fast_tracepoints {} {
|
||||||
|
|
||||||
gdb_test "print gdb_agent_gdb_trampoline_buffer_error" ".*" ""
|
gdb_test "print gdb_agent_gdb_trampoline_buffer_error" ".*" ""
|
||||||
|
|
||||||
if { [istarget "x86_64-*-*"] || [istarget "i\[34567\]86-*-*"] || [is_aarch64_target] } {
|
gdb_test "ftrace set_point" "Fast tracepoint .*" \
|
||||||
|
"fast tracepoint at a long insn"
|
||||||
|
|
||||||
gdb_test "ftrace set_point" "Fast tracepoint .*" \
|
gdb_trace_setactions "collect at set_point: define actions" \
|
||||||
"fast tracepoint at a long insn"
|
"" \
|
||||||
|
"collect globvar, anarg" "^$"
|
||||||
|
|
||||||
gdb_trace_setactions "collect at set_point: define actions" \
|
# Make a test of shorter fast tracepoints, 32-bit x86 only
|
||||||
"" \
|
|
||||||
"collect globvar, anarg" "^$"
|
|
||||||
|
|
||||||
# Make a test of shorter fast tracepoints, 32-bit x86 only
|
if { [istarget "i?86-*-*"] } {
|
||||||
|
|
||||||
if { [istarget "i?86-*-*"] } {
|
# A Linux target needs to be able to allocate trampolines in the
|
||||||
|
# 16-bit range, check mmap_min_addr so we can warn testers.
|
||||||
|
if { [istarget "i?86-*-linux*"] } {
|
||||||
|
|
||||||
# A Linux target needs to be able to allocate trampolines in the
|
set minaddr [exec sh -c "cat /proc/sys/vm/mmap_min_addr"]
|
||||||
# 16-bit range, check mmap_min_addr so we can warn testers.
|
|
||||||
if { [istarget "i?86-*-linux*"] } {
|
|
||||||
|
|
||||||
set minaddr [exec sh -c "cat /proc/sys/vm/mmap_min_addr"]
|
if { [expr $minaddr > 64512] } {
|
||||||
|
warning "mmap_min_addr > 64512, fast tracepoint will fail"
|
||||||
|
warning "do \"sudo sysctl -w vm.mmap_min_addr=32768\" to adjust"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if { [expr $minaddr > 64512] } {
|
gdb_test_multiple "ftrace four_byter" "set 4-byte fast tracepoint" {
|
||||||
warning "mmap_min_addr > 64512, fast tracepoint will fail"
|
-re "May not have a fast tracepoint at .*\r\n$gdb_prompt $" {
|
||||||
warning "do \"sudo sysctl -w vm.mmap_min_addr=32768\" to adjust"
|
pass "4-byte fast tracepoint could not be set"
|
||||||
}
|
}
|
||||||
}
|
-re "Fast tracepoint .*\r\n$gdb_prompt $" {
|
||||||
|
pass "4-byte fast tracepoint is set"
|
||||||
|
set fourgood 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
gdb_test_multiple "ftrace four_byter" "set 4-byte fast tracepoint" {
|
if { $fourgood } {
|
||||||
-re "May not have a fast tracepoint at .*\r\n$gdb_prompt $" {
|
|
||||||
pass "4-byte fast tracepoint could not be set"
|
|
||||||
}
|
|
||||||
-re "Fast tracepoint .*\r\n$gdb_prompt $" {
|
|
||||||
pass "4-byte fast tracepoint is set"
|
|
||||||
set fourgood 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if { $fourgood } {
|
gdb_trace_setactions "collect at four_byter: define actions" \
|
||||||
|
"" \
|
||||||
|
"collect globvar, anarg" "^$"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
gdb_trace_setactions "collect at four_byter: define actions" \
|
run_trace_experiment
|
||||||
"" \
|
|
||||||
"collect globvar, anarg" "^$"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
run_trace_experiment
|
gdb_test "tfind pc *set_point" "Found trace frame .*" \
|
||||||
|
"tfind set_point frame, first time"
|
||||||
|
|
||||||
gdb_test "tfind pc *set_point" "Found trace frame .*" \
|
setup_kfail "gdb/13808" "x86_64-*-linux*"
|
||||||
"tfind set_point frame, first time"
|
gdb_test "print globvar" " = 1"
|
||||||
|
|
||||||
setup_kfail "gdb/13808" "x86_64-*-linux*"
|
gdb_test "tfind pc *set_point" "Found trace frame .*" \
|
||||||
gdb_test "print globvar" " = 1"
|
"tfind set_point frame, second time"
|
||||||
|
|
||||||
gdb_test "tfind pc *set_point" "Found trace frame .*" \
|
setup_kfail "gdb/13808" "x86_64-*-linux*"
|
||||||
"tfind set_point frame, second time"
|
gdb_test "print anarg" " = 200"
|
||||||
|
|
||||||
setup_kfail "gdb/13808" "x86_64-*-linux*"
|
gdb_test "tfind start" "Found trace frame .*" \
|
||||||
gdb_test "print anarg" " = 200"
|
"reset tfinding"
|
||||||
|
|
||||||
gdb_test "tfind start" "Found trace frame .*" \
|
if { $fourgood } {
|
||||||
"reset tfinding"
|
|
||||||
|
|
||||||
if { $fourgood } {
|
gdb_test "tfind pc *four_byter" "Found trace frame .*" \
|
||||||
|
"tfind four_byter frame, first time"
|
||||||
|
|
||||||
gdb_test "tfind pc *four_byter" "Found trace frame .*" \
|
gdb_test "print anarg" " = 101" \
|
||||||
"tfind four_byter frame, first time"
|
"look at collected local, first time"
|
||||||
|
|
||||||
gdb_test "print anarg" " = 101" \
|
gdb_test "tfind pc *four_byter" "Found trace frame .*" \
|
||||||
"look at collected local, first time"
|
"tfind four_byter frame, second time"
|
||||||
|
|
||||||
gdb_test "tfind pc *four_byter" "Found trace frame .*" \
|
gdb_test "print anarg" " = 201" \
|
||||||
"tfind four_byter frame, second time"
|
"look at collected local, second time"
|
||||||
|
|
||||||
gdb_test "print anarg" " = 201" \
|
}
|
||||||
"look at collected local, second time"
|
|
||||||
|
|
||||||
}
|
# If debugging with the remote target, try force disabling the
|
||||||
|
# fast tracepoints RSP feature, and confirm fast tracepoints
|
||||||
|
# can no longer be downloaded.
|
||||||
|
set test "fast tracepoint could not be downloaded with the feature disabled"
|
||||||
|
if [gdb_is_target_remote] {
|
||||||
|
gdb_test "set remote fast-tracepoints-packet off"
|
||||||
|
|
||||||
# If debugging with the remote target, try force disabling the
|
gdb_test_multiple "tstart" $test {
|
||||||
# fast tracepoints RSP feature, and confirm fast tracepoints
|
-re "warning: Target does not support fast tracepoints, downloading .* as regular tracepoint.*\r\n$gdb_prompt $" {
|
||||||
# can no longer be downloaded.
|
pass $test
|
||||||
set test "fast tracepoint could not be downloaded with the feature disabled"
|
}
|
||||||
if [gdb_is_target_remote] {
|
}
|
||||||
gdb_test "set remote fast-tracepoints-packet off"
|
} else {
|
||||||
|
unsupported $test
|
||||||
gdb_test_multiple "tstart" $test {
|
|
||||||
-re "warning: Target does not support fast tracepoints, downloading .* as regular tracepoint.*\r\n$gdb_prompt $" {
|
|
||||||
pass $test
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
unsupported $test
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue