ftmemsim-valgrind/gdbserver_tests/mcvabits.stdinB.gdb
Dejan Jevtic 3abde5b717 mips64: Wrong address size.
On MIPS64 address of 'undefined' can be 64-bit width.
When we are trying to access that address we need to use 0x%lx
instead of 0x%x.
Fixes gdbserver_tests/mcvabits for MIPS64.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13457
2013-07-17 09:56:24 +00:00

75 lines
2.6 KiB
Plaintext

# connect gdb to Valgrind gdbserver:
target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-mcvabits
echo vgdb launched process attached\n
monitor v.set vgdb-error 999999
#
#
# insert break:
break breakme
#
# continue till //1break:
continue
#
# up to main:
up
#
# print local string variables:
print main_name
print undefined
# save address of undefined
set $0xundefined = &undefined
#
# Verif A-bits, V-bits, Get V-bits: A,V,G [0..9]
eval "monitor check_memory addressable 0x%lx 10", $0xundefined
eval "monitor check_memory defined 0x%lx 10", $0xundefined
eval "monitor get_vbits 0x%lx 10", $0xundefined
#
# continue till //2break:
continue
#
# A,V,G [0..9] after the undefinition of some bytes by executable:
eval "monitor check_memory addressable 0x%lx 10", $0xundefined
eval "monitor check_memory defined 0x%lx 10", $0xundefined
eval "monitor get_vbits 0x%lx 10", $0xundefined
#
# Redefine [2..4]
set $0xundefined_2 = (char*)$0xundefined + 2
eval "monitor make_memory defined 0x%lx 3", $0xundefined_2
# A,V,G
eval "monitor check_memory addressable 0x%lx 10", $0xundefined
eval "monitor check_memory defined 0x%lx 10", $0xundefined
eval "monitor get_vbits 0x%lx 10", $0xundefined
#
# Undefine [2..5]
eval "monitor make_memory undefined 0x%lx 4", $0xundefined_2
# A,V,G [0..9]
eval "monitor check_memory addressable 0x%lx 10", $0xundefined
eval "monitor check_memory defined 0x%lx 10", $0xundefined
eval "monitor get_vbits 0x%lx 10", $0xundefined
#
# noaccess [2..3]
eval "monitor make_memory noaccess 0x%lx 2", $0xundefined_2
# A,V,G [0..1]
eval "monitor check_memory addressable 0x%lx 2", $0xundefined
eval "monitor check_memory defined 0x%lx 2", $0xundefined
eval "monitor get_vbits 0x%lx 2", $0xundefined
# A,V,G [2..3]
eval "monitor check_memory addressable 0x%lx 2", $0xundefined_2
eval "monitor check_memory defined 0x%lx 2", $0xundefined_2
eval "monitor get_vbits 0x%lx 2", $0xundefined_2
# A,V,G [4..9]
set $0xundefined_4 = (char*) $0xundefined_2 + 2
eval "monitor check_memory addressable 0x%lx 6", $0xundefined_4
eval "monitor check_memory defined 0x%lx 6", $0xundefined_4
eval "monitor get_vbits 0x%lx 6", $0xundefined_4
#
# Definedifaddressable undefined[0..9]
eval "monitor make_memory Definedifaddressable 0x%lx 10", $0xundefined
# A,V,G
eval "monitor check_memory addressable 0x%lx 10", $0xundefined
eval "monitor check_memory defined 0x%lx 10", $0xundefined
eval "monitor get_vbits 0x%lx 10", $0xundefined
#
monitor v.kill
quit