Remove Cell Broadband Engine debugging support
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.base / dump.exp
CommitLineData
42a4f53d 1# Copyright 2002-2019 Free Software Foundation, Inc.
dd7dfd64
MS
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
e22f8b7c 5# the Free Software Foundation; either version 3 of the License, or
dd7dfd64 6# (at your option) any later version.
e22f8b7c 7#
dd7dfd64
MS
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
e22f8b7c 12#
dd7dfd64 13# You should have received a copy of the GNU General Public License
e22f8b7c 14# along with this program. If not, see <http://www.gnu.org/licenses/>.
dd7dfd64 15
dd7dfd64
MS
16# This file was written by Michael Snyder (msnyder@redhat.com)
17# This is a test for the gdb command "dump".
18
dd7dfd64 19
f76495c8 20standard_testfile
dd7dfd64 21
f6347e16 22set options {debug}
dd7dfd64 23
f31dfe3b 24set is64bitonly "no"
1ab80e5b 25set endian "auto"
f31dfe3b 26
f6347e16
RH
27if [istarget "alpha*-*-*"] then {
28 # SREC etc cannot handle 64-bit addresses. Force the test
29 # program into the low 31 bits of the address space.
30 lappend options "additional_flags=-Wl,-taso"
31}
32
968aa7ae
AH
33# Debian9/Ubuntu16.10 onwards default to PIE enabled. Ensure it is disabled as
34# this causes addresses to be out of range for IHEX.
35lappend options {nopie}
36
f6347e16 37if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable ${options}] != "" } {
84c93cd5 38 untested "failed to compile"
b60f0898 39 return -1
dd7dfd64
MS
40}
41
42# Start with a fresh gdb.
43
44gdb_exit
45gdb_start
46gdb_reinitialize_dir $srcdir/$subdir
c0ac0ec7
JK
47
48gdb_test "dump mem /dev/null 0x10 0x20" "Cannot access memory at address 0x10" \
49 "inaccessible memory is reported"
50
dd7dfd64
MS
51gdb_load ${binfile}
52
497a4c48
LM
53# Check the address of a variable. If it is bigger than 32-bit,
54# assume our target has 64-bit addresses that are not supported by SREC,
55# IHEX and TEKHEX. We skip those tests then.
56set max_32bit_address "0xffffffff"
57set data_address [get_hexadecimal_valueof "&intarray" 0x100000000]
58if {${data_address} > ${max_32bit_address}} then {
59 set is64bitonly "yes"
60}
61
dd7dfd64
MS
62# Clean up any stale output files from previous test runs
63
08b3fe69
TT
64set filenames {}
65set all_files {
66 intarr1.bin intarr1b.bin intarr1.ihex
cf75d6c3
AB
67 intarr1.srec intarr1.tekhex intarr1.verilog
68 intarr2.bin intarr2b.bin intarr2.ihex
69 intarr2.srec intarr2.tekhex intarr2.verilog
70 intstr1.bin intstr1b.bin intstr1.ihex
71 intstr1.srec intstr1.tekhex intstr1.verilog
72 intstr2.bin intstr2b.bin intstr2.ihex
73 intstr2.srec intstr2.tekhex intstr2.verilog
74 intarr3.srec
08b3fe69
TT
75}
76
77# This loop sets variables dynamically -- each name listed in
78# $ALL_FILES is both a file name and a variable name.
79foreach file $all_files {
80 if {[is_remote host]} {
81 set this_name $file
82 } else {
83 set this_name [standard_output_file $file]
84 }
85
86 lappend filenames [set ${file} $this_name]
87}
88
89remote_exec host "rm -f $filenames"
dd7dfd64
MS
90
91# Test help (FIXME:)
92
93# Run target program until data structs are initialized.
94
95if { ! [ runto checkpoint1 ] } then {
84c93cd5 96 untested "couldn't run to checkpoint"
b60f0898 97 return -1
dd7dfd64
MS
98}
99
1ab80e5b
MR
100# Get the endianness for the later use with endianless formats.
101
805acca0 102set endian [get_endianness]
1ab80e5b 103
dd7dfd64
MS
104# Now generate some dump files.
105
106proc make_dump_file { command msg } {
107 global gdb_prompt
108
a76e022a 109 gdb_test_multiple "${command}" "$msg" {
dd7dfd64
MS
110 -re ".*\[Ee\]rror.*$gdb_prompt $" { fail $msg }
111 -re ".*\[Ww\]arning.*$gdb_prompt $" { fail $msg }
112 -re ".*\[Uu\]ndefined .*$gdb_prompt $" { fail $msg }
a76e022a 113 -re ".*$gdb_prompt $" { pass $msg }
dd7dfd64
MS
114 }
115}
116
08b3fe69 117make_dump_file "dump val [set intarr1.bin] intarray" \
dd7dfd64
MS
118 "dump array as value, default"
119
08b3fe69 120make_dump_file "dump val [set intstr1.bin] intstruct" \
dd7dfd64
MS
121 "dump struct as value, default"
122
08b3fe69 123make_dump_file "dump bin val [set intarr1b.bin] intarray" \
dd7dfd64
MS
124 "dump array as value, binary"
125
08b3fe69 126make_dump_file "dump bin val [set intstr1b.bin] intstruct" \
dd7dfd64
MS
127 "dump struct as value, binary"
128
08b3fe69 129make_dump_file "dump srec val [set intarr1.srec] intarray" \
dd7dfd64
MS
130 "dump array as value, srec"
131
08b3fe69 132make_dump_file "dump srec val [set intstr1.srec] intstruct" \
dd7dfd64
MS
133 "dump struct as value, srec"
134
08b3fe69 135make_dump_file "dump ihex val [set intarr1.ihex] intarray" \
dd7dfd64
MS
136 "dump array as value, intel hex"
137
08b3fe69 138make_dump_file "dump ihex val [set intstr1.ihex] intstruct" \
dd7dfd64
MS
139 "dump struct as value, intel hex"
140
08b3fe69 141make_dump_file "dump tekhex val [set intarr1.tekhex] intarray" \
dd7dfd64
MS
142 "dump array as value, tekhex"
143
08b3fe69 144make_dump_file "dump tekhex val [set intstr1.tekhex] intstruct" \
dd7dfd64
MS
145 "dump struct as value, tekhex"
146
cf75d6c3 147make_dump_file "dump verilog val [set intarr1.verilog] intarray" \
1f8db343 148 "dump array as value, verilog"
cf75d6c3
AB
149
150make_dump_file "dump verilog val [set intstr1.verilog] intstruct" \
1f8db343 151 "dump struct as value, verilog"
cf75d6c3 152
8d394f98 153proc capture_value { expression args } {
dd7dfd64
MS
154 global gdb_prompt
155 global expect_out
156
157 set output_string ""
8d394f98 158 if {[llength $args] > 0} {
bf6be0f4
TT
159 # Convert $args into a simple string and don't use EXPRESSION
160 # in the test name.
161 set test "[join $args]; capture"
8d394f98
AC
162 } {
163 set test "capture $expression"
164 }
165 gdb_test_multiple "print ${expression}" "$test" {
166 -re "\\$\[0-9\]+ = (\[^\r\n\]+).*$gdb_prompt $" {
167 set output_string "$expect_out(1,string)"
168 pass "$test"
dd7dfd64 169 }
8d394f98
AC
170 -re "(Cannot access memory at address \[^\r\n\]+).*$gdb_prompt $" {
171 # Even a failed value is valid
172 set output_string "$expect_out(1,string)"
173 pass "$test"
dd7dfd64
MS
174 }
175 }
176 return $output_string
177}
178
54aeeb99
YQ
179# POINTER is a pointer and this proc captures the value of POINTER along
180# with POINTER's type. For example, POINTER is "&intarray", this proc will
181# call "p &intarray", capture "(int (*)[32]) 0x804a0e0", and return this
182# string.
183
184proc capture_pointer_with_type { pointer } {
185 global gdb_prompt
186 global expect_out
187
188 set test "capture type of pointer $pointer"
189 set output_string ""
190 gdb_test_multiple "p ${pointer}" $test {
191 -re "\\$\[0-9\]+ = .*$gdb_prompt $" {
192 # Expected output of "p ${pointer}" is like "$7 = (int (*)[32]) 0x804a0e0",
193 # and we want to extract "(int (*)[32]) 0x804a0e0" from it via
194 # following regexp.
195 if [regexp " \\(.*\\).* 0x\[0-9a-fA-F\]+" $expect_out(0,string) output_string] {
196 # OUTPUT_STRING is expected to be like "(int (*)[32]) 0x804a0e0".
197 pass "$test"
198 } else {
199 fail "$test"
200 }
201 }
202 }
203
204 return $output_string
205}
206
dd7dfd64
MS
207set array_start [capture_value "/x &intarray\[0\]"]
208set array_end [capture_value "/x &intarray\[32\]"]
209set struct_start [capture_value "/x &intstruct"]
210set struct_end [capture_value "/x &intstruct + 1"]
211
212set array_val [capture_value "intarray"]
213set struct_val [capture_value "intstruct"]
214
54aeeb99
YQ
215set array_ptr_type [capture_pointer_with_type "&intarray"]
216set struct_ptr_type [capture_pointer_with_type "&intstruct"]
217
08b3fe69 218make_dump_file "dump mem [set intarr2.bin] $array_start $array_end" \
dd7dfd64
MS
219 "dump array as memory, default"
220
08b3fe69 221make_dump_file "dump mem [set intstr2.bin] $struct_start $struct_end" \
dd7dfd64
MS
222 "dump struct as memory, default"
223
08b3fe69 224make_dump_file "dump bin mem [set intarr2b.bin] $array_start $array_end" \
dd7dfd64
MS
225 "dump array as memory, binary"
226
08b3fe69 227make_dump_file "dump bin mem [set intstr2b.bin] $struct_start $struct_end" \
dd7dfd64
MS
228 "dump struct as memory, binary"
229
08b3fe69 230make_dump_file "dump srec mem [set intarr2.srec] $array_start $array_end" \
dd7dfd64
MS
231 "dump array as memory, srec"
232
08b3fe69 233make_dump_file "dump srec mem [set intstr2.srec] $struct_start $struct_end" \
dd7dfd64
MS
234 "dump struct as memory, srec"
235
08b3fe69 236make_dump_file "dump ihex mem [set intarr2.ihex] $array_start $array_end" \
dd7dfd64
MS
237 "dump array as memory, ihex"
238
08b3fe69 239make_dump_file "dump ihex mem [set intstr2.ihex] $struct_start $struct_end" \
dd7dfd64
MS
240 "dump struct as memory, ihex"
241
08b3fe69 242make_dump_file "dump tekhex mem [set intarr2.tekhex] $array_start $array_end" \
dd7dfd64
MS
243 "dump array as memory, tekhex"
244
08b3fe69 245make_dump_file "dump tekhex mem [set intstr2.tekhex] $struct_start $struct_end" \
dd7dfd64
MS
246 "dump struct as memory, tekhex"
247
cf75d6c3
AB
248make_dump_file "dump verilog mem [set intarr2.verilog] $array_start $array_end" \
249 "dump array as memory, verilog"
250
251make_dump_file "dump verilog mem [set intstr2.verilog] $struct_start $struct_end" \
252 "dump struct as memory, verilog"
253
dd7dfd64
MS
254# test complex expressions
255make_dump_file \
08b3fe69 256 "dump srec mem [set intarr3.srec] &intarray \(char *\) &intarray + sizeof intarray" \
dd7dfd64
MS
257 "dump array as mem, srec, expressions"
258
dd7dfd64
MS
259proc test_restore_saved_value { restore_args msg oldval newval } {
260 global gdb_prompt
261
262 gdb_test "restore $restore_args" \
8d394f98
AC
263 "Restoring .*" \
264 "$msg; file restored ok"
265 if { ![string compare $oldval \
266 [capture_value $newval "$msg"]] } then {
267 pass "$msg; value restored ok"
dd7dfd64 268 } else {
8d394f98 269 fail "$msg; value restored ok"
dd7dfd64
MS
270 }
271}
272
f31dfe3b 273if ![string compare $is64bitonly "no"] then {
dd7dfd64 274
54aeeb99 275 gdb_test "print zero_all ()" ".*"
dd7dfd64 276
08b3fe69 277 test_restore_saved_value "[set intarr1.srec]" "array as value, srec" \
dd7dfd64
MS
278 $array_val "intarray"
279
08b3fe69 280 test_restore_saved_value "[set intstr1.srec]" "struct as value, srec" \
dd7dfd64
MS
281 $struct_val "intstruct"
282
f31dfe3b 283 gdb_test "print zero_all ()" "void" "zero all"
dd7dfd64 284
08b3fe69 285 test_restore_saved_value "[set intarr2.srec]" "array as memory, srec" \
dd7dfd64
MS
286 $array_val "intarray"
287
08b3fe69 288 test_restore_saved_value "[set intstr2.srec]" "struct as memory, srec" \
dd7dfd64
MS
289 $struct_val "intstruct"
290
f6978de9 291 gdb_test "print zero_all ()" ".*"
dd7dfd64 292
08b3fe69 293 test_restore_saved_value "[set intarr1.ihex]" "array as value, ihex" \
dd7dfd64
MS
294 $array_val "intarray"
295
08b3fe69 296 test_restore_saved_value "[set intstr1.ihex]" "struct as value, ihex" \
dd7dfd64
MS
297 $struct_val "intstruct"
298
f6978de9 299 gdb_test "print zero_all ()" ".*"
dd7dfd64 300
08b3fe69 301 test_restore_saved_value "[set intarr2.ihex]" "array as memory, ihex" \
dd7dfd64
MS
302 $array_val "intarray"
303
08b3fe69 304 test_restore_saved_value "[set intstr2.ihex]" "struct as memory, ihex" \
dd7dfd64
MS
305 $struct_val "intstruct"
306
f6978de9 307 gdb_test "print zero_all ()" ".*"
dd7dfd64 308
08b3fe69 309 test_restore_saved_value "[set intarr1.tekhex]" "array as value, tekhex" \
dd7dfd64
MS
310 $array_val "intarray"
311
08b3fe69 312 test_restore_saved_value "[set intstr1.tekhex]" "struct as value, tekhex" \
dd7dfd64
MS
313 $struct_val "intstruct"
314
f6978de9 315 gdb_test "print zero_all ()" ".*"
dd7dfd64 316
08b3fe69 317 test_restore_saved_value "[set intarr2.tekhex]" "array as memory, tekhex" \
dd7dfd64
MS
318 $array_val "intarray"
319
08b3fe69 320 test_restore_saved_value "[set intstr2.tekhex]" "struct as memory, tekhex" \
dd7dfd64 321 $struct_val "intstruct"
f31dfe3b 322}
dd7dfd64 323
f6978de9 324gdb_test "print zero_all ()" ".*"
dd7dfd64 325
08b3fe69 326test_restore_saved_value "[set intarr1.bin] binary $array_start" \
dd7dfd64
MS
327 "array as value, binary" \
328 $array_val "intarray"
329
08b3fe69 330test_restore_saved_value "[set intstr1.bin] binary $struct_start" \
dd7dfd64
MS
331 "struct as value, binary" \
332 $struct_val "intstruct"
333
f6978de9 334gdb_test "print zero_all ()" ".*"
dd7dfd64 335
08b3fe69 336test_restore_saved_value "[set intarr2.bin] binary $array_start" \
dd7dfd64
MS
337 "array as memory, binary" \
338 $array_val "intarray"
339
08b3fe69 340test_restore_saved_value "[set intstr2.bin] binary $struct_start" \
dd7dfd64
MS
341 "struct as memory, binary" \
342 $struct_val "intstruct"
343
344# test restore with offset.
345
346set array2_start [capture_value "/x &intarray2\[0\]"]
347set struct2_start [capture_value "/x &intstruct2"]
348set array2_offset \
2db536a1 349 [capture_value "(char *) &intarray2 - (char *) &intarray"]
dd7dfd64 350set struct2_offset \
2db536a1 351 [capture_value "(char *) &intstruct2 - (char *) &intstruct"]
dd7dfd64 352
f6978de9 353gdb_test "print zero_all ()" ".*"
dd7dfd64 354
f31dfe3b
JJ
355
356if ![string compare $is64bitonly "no"] then {
08b3fe69 357 test_restore_saved_value "[set intarr1.srec] $array2_offset" \
dd7dfd64
MS
358 "array copy, srec" \
359 $array_val "intarray2"
360
08b3fe69 361 test_restore_saved_value "[set intstr1.srec] $struct2_offset" \
dd7dfd64
MS
362 "struct copy, srec" \
363 $struct_val "intstruct2"
364
f6978de9 365 gdb_test "print zero_all ()" ".*"
dd7dfd64 366
08b3fe69 367 test_restore_saved_value "[set intarr1.ihex] $array2_offset" \
dd7dfd64
MS
368 "array copy, ihex" \
369 $array_val "intarray2"
370
08b3fe69 371 test_restore_saved_value "[set intstr1.ihex] $struct2_offset" \
dd7dfd64
MS
372 "struct copy, ihex" \
373 $struct_val "intstruct2"
374
f6978de9 375 gdb_test "print zero_all ()" ".*"
dd7dfd64 376
08b3fe69 377 test_restore_saved_value "[set intarr1.tekhex] $array2_offset" \
dd7dfd64
MS
378 "array copy, tekhex" \
379 $array_val "intarray2"
380
08b3fe69 381 test_restore_saved_value "[set intstr1.tekhex] $struct2_offset" \
dd7dfd64
MS
382 "struct copy, tekhex" \
383 $struct_val "intstruct2"
f31dfe3b 384}
dd7dfd64 385
f6978de9 386gdb_test "print zero_all ()" ".*"
dd7dfd64 387
08b3fe69 388test_restore_saved_value "[set intarr1.bin] binary $array2_start" \
dd7dfd64
MS
389 "array copy, binary" \
390 $array_val "intarray2"
391
08b3fe69 392test_restore_saved_value "[set intstr1.bin] binary $struct2_start" \
dd7dfd64
MS
393 "struct copy, binary" \
394 $struct_val "intstruct2"
395
396#
397# test restore with start/stop addresses.
398#
399# For this purpose, we will restore just the third element of the array,
400# and check to see that adjacent elements are not modified.
401#
402# We will need the address and offset of the third and fourth elements.
403#
404
405set element3_start [capture_value "/x &intarray\[3\]"]
406set element4_start [capture_value "/x &intarray\[4\]"]
407set element3_offset \
408 [capture_value "/x (char *) &intarray\[3\] - (char *) &intarray\[0\]"]
409set element4_offset \
410 [capture_value "/x (char *) &intarray\[4\] - (char *) &intarray\[0\]"]
411
f31dfe3b 412if ![string compare $is64bitonly "no"] then {
f6978de9 413 gdb_test "print zero_all ()" ".*"
dd7dfd64 414
08b3fe69 415 test_restore_saved_value "[set intarr1.srec] 0 $element3_start $element4_start" \
8d394f98 416 "array partial, srec" 4 "intarray\[3\]"
dd7dfd64 417
f31dfe3b
JJ
418 gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 1"
419 gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 1"
dd7dfd64 420
f6978de9 421 gdb_test "print zero_all ()" ".*"
dd7dfd64 422
08b3fe69 423 test_restore_saved_value "[set intarr1.ihex] 0 $element3_start $element4_start" \
8d394f98 424 "array partial, ihex" 4 "intarray\[3\]"
dd7dfd64 425
f31dfe3b
JJ
426 gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 2"
427 gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 2"
dd7dfd64 428
f6978de9 429 gdb_test "print zero_all ()" ".*"
dd7dfd64 430
08b3fe69 431 test_restore_saved_value "[set intarr1.tekhex] 0 $element3_start $element4_start" \
8d394f98 432 "array partial, tekhex" 4 "intarray\[3\]"
dd7dfd64 433
f31dfe3b
JJ
434 gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 3"
435 gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 3"
436}
dd7dfd64 437
f6978de9 438gdb_test "print zero_all ()" ".*"
dd7dfd64
MS
439
440test_restore_saved_value \
08b3fe69 441 "[set intarr1.bin] binary $array_start $element3_offset $element4_offset" \
8d394f98 442 "array partial, binary" 4 "intarray\[3\]"
dd7dfd64
MS
443
444gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 4"
445gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 4"
446
f31dfe3b 447if ![string compare $is64bitonly "no"] then {
de7ff789 448 gdb_test "print zero_all ()" ".*" ""
dd7dfd64 449
f31dfe3b
JJ
450 # restore with expressions
451 test_restore_saved_value \
08b3fe69 452 "[set intarr3.srec] (char*)${array2_start}-(char*)${array_start} &intarray\[3\] &intarray\[4\]" \
8d394f98 453 "array partial with expressions" 4 "intarray2\[3\]"
dd7dfd64 454
f31dfe3b
JJ
455 gdb_test "print intarray2\[2\] == 0" " = 1" "element 2 not changed, == 4"
456 gdb_test "print intarray2\[4\] == 0" " = 1" "element 4 not changed, == 4"
457}
dd7dfd64 458
54aeeb99
YQ
459
460# Now start a fresh gdb session, and reload the saved value files.
461
462gdb_exit
463gdb_start
464gdb_file_cmd ${binfile}
465
466# Now fix the endianness at the correct state.
467
468gdb_test_multiple "set endian $endian" "set endianness" {
469 -re ".* (big|little) endian.*$gdb_prompt $" {
470 pass "setting $endian endianness"
471 }
472}
473
474# Reload saved values one by one, and compare.
475
476if { ![string compare $array_val \
bf6be0f4 477 [capture_value "intarray" "file binfile; intarray"]] } then {
54aeeb99
YQ
478 fail "start with intarray un-initialized"
479} else {
480 pass "start with intarray un-initialized"
481}
482
483if { ![string compare $struct_val \
bf6be0f4 484 [capture_value "intstruct" "file binfile; intstruct"]] } then {
54aeeb99
YQ
485 fail "start with intstruct un-initialized"
486} else {
487 pass "start with intstruct un-initialized"
488}
489
490proc test_reload_saved_value { filename msg oldval newval } {
491 global gdb_prompt
492
493 gdb_file_cmd $filename
494 if { ![string compare $oldval \
495 [capture_value $newval "$msg"]] } then {
496 pass "$msg; value restored ok"
497 } else {
498 fail "$msg; value restored ok"
499 }
500}
501
502# srec format can not be loaded for 64-bit-only platforms
503if ![string compare $is64bitonly "no"] then {
08b3fe69 504 test_reload_saved_value "[set intarr1.srec]" "reload array as value, srec" \
54aeeb99 505 $array_val "\*$array_ptr_type"
08b3fe69 506 test_reload_saved_value "[set intstr1.srec]" "reload struct as value, srec" \
54aeeb99 507 $struct_val "\*$struct_ptr_type"
08b3fe69 508 test_reload_saved_value "[set intarr2.srec]" "reload array as memory, srec" \
54aeeb99 509 $array_val "\*$array_ptr_type"
08b3fe69 510 test_reload_saved_value "[set intstr2.srec]" "reload struct as memory, srec" \
54aeeb99
YQ
511 $struct_val "\*$struct_ptr_type"
512}
513
514# ihex format can not be loaded for 64-bit-only platforms
515if ![string compare $is64bitonly "no"] then {
516
08b3fe69
TT
517 test_reload_saved_value "[set intarr1.ihex]" \
518 "reload array as value, intel hex" \
54aeeb99 519 $array_val "\*$array_ptr_type"
08b3fe69
TT
520 test_reload_saved_value "[set intstr1.ihex]" \
521 "reload struct as value, intel hex" \
54aeeb99 522 $struct_val "\*$struct_ptr_type"
08b3fe69
TT
523 test_reload_saved_value "[set intarr2.ihex]" \
524 "reload array as memory, intel hex" \
54aeeb99 525 $array_val "\*$array_ptr_type"
08b3fe69
TT
526 test_reload_saved_value "[set intstr2.ihex]" \
527 "reload struct as memory, intel hex" \
54aeeb99
YQ
528 $struct_val "\*$struct_ptr_type"
529}
530
531# tekhex format can not be loaded for 64-bit-only platforms
532if ![string compare $is64bitonly "no"] then {
08b3fe69
TT
533 test_reload_saved_value "[set intarr1.tekhex]" \
534 "reload array as value, tekhex" \
54aeeb99 535 $array_val "\*$array_ptr_type"
08b3fe69
TT
536 test_reload_saved_value "[set intstr1.tekhex]" \
537 "reload struct as value, tekhex" \
54aeeb99 538 $struct_val "\*$struct_ptr_type"
08b3fe69
TT
539 test_reload_saved_value "[set intarr2.tekhex]" \
540 "reload array as memory, tekhex" \
54aeeb99 541 $array_val "\*$array_ptr_type"
08b3fe69
TT
542 test_reload_saved_value "[set intstr2.tekhex]" \
543 "reload struct as memory, tekhex" \
54aeeb99
YQ
544 $struct_val "\*$struct_ptr_type"
545}
546
dd7dfd64
MS
547# clean up files
548
08b3fe69 549remote_exec host "rm -f $filenames"
This page took 1.883385 seconds and 4 git commands to generate.