# Test a binary that uses MTE and exercise various MTE-related scenarios.
-global hex
-global decimal
# Return TAG in hex format with no leading zeroes.
proc get_hex_tag { tag } {
return
}
-global gdb_prompt
#
# This tests gdb checkpoint and restart.
"Breakpoint ${::decimal} at ${::hex}: .*" \
"break in get_version functions"
-global expect_out
set test "continue to get_version_1"
gdb_test_multiple "continue" $test {
-re "Breakpoint ($bkptno_num_re), get_version_1 \\(\\).*\r\n.*$gdb_prompt $" {
gdb_test "detach" "Detaching from program: .*$escapedbinfile, .*" "detach, $pass"
}
-global pass
set pass "one"
do_detach_tests
gdb_test "up" " main .*" "up from marker1"
-global hex
gdb_test "print &ibig.i\[0\]" " = \\(int \\*\\) $hex"
# The problem was due to amd64_skip_prologue attempting to access inferior
# memory before the PIE (Position Independent Executable) gets relocated.
-global inferior_spawn_id
-global gdb_spawn_id
require {istarget *-linux*}
require {!target_info exists noargs}
gdb_test "print repeat" "= L\"A\", '$cent' <repeats 21 times>, \"B.*"
-global hex
gdb_test "print repeat_p" \
"= $hex L\"A\", '$cent' <repeats 21 times>, \"B\""
# Test for PR gdb/20948
# Verify that invoking gdb with the --write argument works as expected
-global GDBFLAGS
standard_testfile
if {[build_executable $testfile.exp $testfile \
return -1
}
-global gdb_prompt
proc check_replay_at { insn } {
gdb_test "info record" [multi_line \
"check all parameters for badness"
# Tests for null pointer conversion
-global gdb_prompt
set nl {[\r\n]+}
set t "null pointer conversion"
gdb_test_multiple "p foo3_1 (0, 0)" $t {
# overloaded member functions
#
-global timeout
set timeout 15
#
# test running programs
require {istarget "mn10300*-*-*"}
-global exec_output
set testfile "am33"
set srcfile ${srcdir}/${subdir}/${testfile}.s
require {istarget "mn10300*-*-*"}
-global exec_output
set testfile "mn10300"
set srcfile ${srcdir}/${subdir}/${testfile}.s
gdb_reinitialize_dir $srcdir/$subdir
gdb_load $binfile
-global hex
gdb_test "x /i start" "bra\t.\\+18 \\($hex\\)" \
"bra .+18"
require allow_perf_tests
-global GDB
standard_testfile .c
# Overwrite $binfile
return
}
-global hex decimal
gdb_breakpoint [gdb_get_line_number "Block break here."]
gdb_continue_to_breakpoint "Block break here."
return
}
-global hex decimal
gdb_breakpoint [gdb_get_line_number "Block break here."]
gdb_continue_to_breakpoint "Block break here."
set debug_types [debug_types]
-global hex decimal
# Setup and get the symbol table.
set line_no [gdb_get_line_number "Block break here."]
runto_main
-global hex
-global decimal
# Record all the execution for vmov tests first.
# Activate process record/replay
gdb_test_no_output "record" "turn on process record"
-global hex
-global decimal
gdb_test "break $end_of_main" \
"Breakpoint $decimal at .*$srcfile, line $end_of_main\." \
gdb_test_no_output "record" "turn on process record"
}
-global hex
-global decimal
gdb_test "step" "inc .eax.*" "step to inc eax 1st time"
send_gdb "info reg eax\n"
gdb_test_no_output "record" "turn on process record"
}
-global hex
-global decimal
#sse_test
require allow_gdbserver_tests
-global server_spawn_id
set gdbserver [find_gdbserver]
set gdbserver_command "$gdbserver --selftest"
# occur in a single thread's backtrace, in the given order.
#
-global hex
-global decimal
#
# This is a "backtrace break" ("btb"):
runto_main
# See if scheduler locking is available on this target.
-global gdb_prompt
gdb_test_multiple "set scheduler-locking off" "scheduler locking set to none" {
-re "Target .* cannot support this command" {
unsupported "target does not support scheduler locking"