1 # Copyright (C) 1988, 1990, 1991, 1992 Free Software Foundation, Inc.
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
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.
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.
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software
15 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
17 # Please email any bugs, comments, and/or additions to this file to:
18 # bug-gdb@prep.ai.mit.edu
20 # This file was written by Rob Savoye. (rob@cygnus.com)
27 # test running programs
34 if ![file exists $objdir/$subdir/$binfile] then {
35 perror "$objdir/$subdir/$binfile does not exist."
41 gdb_reinitialize_dir $srcdir/$subdir
42 gdb_load $objdir/$subdir/$binfile
45 # set it up at a breakpoint so we can play with the variable values
48 if ![runto main] then {
49 perror "couldn't run to breakpoint"
54 # test expressions with "char" types
56 send "set variable v_char=127\n"
58 -re "set.*$prompt $" {
59 send "print v_char == 0\n"
61 -re "print.*.\[0-9\]* = 0.*$prompt $" {
62 send "print v_char == 127\n"
64 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print char ==" }
65 -re "$prompt $" { fail "print char ==" }
66 timeout { fail "(timeout) print char ==" }
69 -re "$prompt $" { fail "print char ==" }
70 timeout { fail "(timeout) print char ==" }
73 -re "$prompt $" { fail "print char ==" }
74 timeout { fail "(timeout) print char ==" }
78 send "set variable v_char=127\n"
80 -re "set.*$prompt $" {
81 send "print v_char != 0\n"
83 -re "print.*.\[0-9\]* = 1.*$prompt $" {
84 send "print v_char != 127\n"
86 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print char !=" }
87 -re "$prompt $" { fail "print char !=" }
88 timeout { fail "(timeout) print char !=" }
91 -re "$prompt $" { fail "print char !=" }
92 timeout { fail "(timeout) print char !=" }
95 -re "$prompt $" { fail "print char !=" }
96 timeout { fail "(timeout) print char !=" }
100 send "set variable v_char=127\n"
102 -re "set.*$prompt $" {
103 send "print v_char < 0\n"
105 -re "print.*.\[0-9\]* = 0.*$prompt $" {
106 send "print v_char < 127\n"
108 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print char <" }
109 -re "$prompt $" { fail "print char <" }
110 timeout { fail "(timeout) print char <" }
113 -re "$prompt $" { fail "print char <" }
114 timeout { fail "(timeout) print char <" }
117 -re "$prompt $" { fail "print char <" }
118 timeout { fail "(timeout) print char <" }
122 send "set variable v_char=127\n"
124 -re "set.*$prompt $" {
125 send "print v_char > 0\n"
127 -re "print.*.\[0-9\]* = 1.*$prompt $" {
128 send "print v_char > 127\n"
130 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print char >" }
131 -re "$prompt $" { fail "print char >" }
132 timeout { fail "(timeout) print char >" }
135 -re "$prompt $" { fail "print char >" }
136 timeout { fail "(timeout) print char >" }
139 -re "$prompt $" { fail "print char >" }
140 timeout { fail "(timeout) print char >" }
145 # test expressions with "signed char" types
147 send "set variable v_signed_char=127\n"
149 -re "set.*$prompt $" {
150 send "print v_signed_char == 0\n"
152 -re "print.*.\[0-9\]* = 0.*$prompt $" {
153 send "print v_signed_char == 127\n"
155 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed char ==" }
156 -re "$prompt $" { fail "print signed char ==" }
157 timeout { fail "(timeout) print signed char ==" }
160 -re "$prompt $" { fail "print signed char ==" }
161 timeout { fail "(timeout) print signed char ==" }
164 -re "$prompt $" { fail "print signed char ==" }
165 timeout { fail "(timeout) print signed char ==" }
169 send "set variable v_signed_char=127\n"
171 -re "set.*$prompt $" {
172 send "print v_signed_char != 0\n"
174 -re "print.*.\[0-9\]* = 1.*$prompt $" {
175 send "print v_signed_char != 127\n"
177 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed char !=" }
178 -re "$prompt $" { fail "print signed char !=" }
179 timeout { fail "(timeout) print signed char !=" }
182 -re "$prompt $" { fail "print signed char !=" }
183 timeout { fail "(timeout) print signed char !=" }
186 -re "$prompt $" { fail "print signed char !=" }
187 timeout { fail "(timeout) print signed char !=" }
191 send "set variable v_signed_char=127\n"
193 -re "set.*$prompt $" {
194 send "print v_signed_char < 0\n"
196 -re "print.*.\[0-9\]* = 0.*$prompt $" {
197 send "print v_signed_char < 127\n"
199 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed char <" }
200 -re "$prompt $" { fail "print signed char <" }
201 timeout { fail "(timeout) print signed char <" }
204 -re "$prompt $" { fail "print signed char <" }
205 timeout { fail "(timeout) print signed char <" }
208 -re "$prompt $" { fail "print signed char <" }
209 timeout { fail "(timeout) print signed char <" }
213 send "set variable v_signed_char=127\n"
215 -re "set.*$prompt $" {
216 send "print v_signed_char > 0\n"
218 -re "print.*.\[0-9\]* = 1.*$prompt $" {
219 send "print v_signed_char > 127\n"
221 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed char >" }
222 -re "$prompt $" { fail "print signed char >" }
223 timeout { fail "(timeout) print signed char >" }
226 -re "$prompt $" { fail "print signed char >" }
227 timeout { fail "(timeout) print signed char >" }
230 -re "$prompt $" { fail "print signed char >" }
231 timeout { fail "(timeout) print signed char >" }
236 send "set variable v_signed_char=-1\n"
238 -re "set.*$prompt $" {
239 send "print v_signed_char == 0\n"
241 -re "print.*.\[0-9\]* = 0.*$prompt $" {
242 send "print v_signed_char == -1\n"
244 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed char == (minus)" }
245 -re "$prompt $" { fail "print signed char == (minus)" }
246 timeout { fail "(timeout) print signed char == (minus)" }
249 -re "$prompt $" { fail "print signed char == (minus)" }
250 timeout { fail "(timeout) print signed char == (minus)" }
253 -re "$prompt $" { fail "print signed char == (minus)" }
254 timeout { fail "(timeout) print signed char == (minus)" }
258 send "set variable v_signed_char=-1\n"
260 -re "set.*$prompt $" {
261 send "print v_signed_char != 0\n"
263 -re "print.*.\[0-9\]* = 1.*$prompt $" {
264 send "print v_signed_char != -1\n"
266 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed char != (minus)" }
267 -re "$prompt $" { fail "print signed char != (minus)" }
268 timeout { fail "(timeout) print signed char != (minus)" }
271 -re "$prompt $" { fail "print signed char != (minus)" }
272 timeout { fail "(timeout) print signed char != (minus)" }
275 -re "$prompt $" { fail "print signed char != (minus)" }
276 timeout { fail "(timeout) print signed char != (minus)" }
280 send "set variable v_signed_char=-1\n"
282 -re "set.*$prompt $" {
283 send "print v_signed_char < 0\n"
285 -re "print.*.\[0-9\]* = 1.*$prompt $" {
286 send "print v_signed_char < 127\n"
288 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed char < (minus)" }
289 -re "$prompt $" { fail "print signed char < (minus)" }
290 timeout { fail "(timeout) print signed char < (minus)" }
293 -re "$prompt $" { fail "print signed char < (minus)" }
294 timeout { fail "(timeout) print signed char < (minus)" }
297 -re "$prompt $" { fail "print signed char < (minus)" }
298 timeout { fail "(timeout) print signed char < (minus)" }
302 send "set variable v_signed_char=-1\n"
304 -re "set.*$prompt $" {
305 send "print v_signed_char > 0\n"
307 -re "print.*.\[0-9\]* = 0.*$prompt $" {
308 send "print v_signed_char > 127\n"
310 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed char > (minus)" }
311 -re "$prompt $" { fail "print signed char > (minus)" }
312 timeout { fail "(timeout) print signed char > (minus)" }
315 -re "$prompt $" { fail "print signed char > (minus)" }
316 timeout { fail "(timeout) print signed char > (minus)" }
319 -re "$prompt $" { fail "print signed char > (minus)" }
320 timeout { fail "(timeout) print signed char > (minus)" }
325 # test expressions with "unsigned char" types
327 send "set variable v_unsigned_char=127\n"
329 -re "set.*$prompt $" {
330 send "print v_unsigned_char == 0\n"
332 -re "print.*.\[0-9\]* = 0.*$prompt $" {
333 send "print v_unsigned_char == 127\n"
335 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned char ==" }
336 -re "$prompt $" { fail "print unsigned char ==" }
337 timeout { fail "(timeout) print unsigned char ==" }
340 -re "$prompt $" { fail "print unsigned char ==" }
341 timeout { fail "(timeout) print unsigned char ==" }
344 -re "$prompt $" { fail "print unsigned char ==" }
345 timeout { fail "(timeout) print unsigned char ==" }
349 send "set variable v_unsigned_char=127\n"
351 -re "set.*$prompt $" {
352 send "print v_unsigned_char != 0\n"
354 -re "print.*.\[0-9\]* = 1.*$prompt $" {
355 send "print v_unsigned_char != 127\n"
357 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned char !=" }
358 -re "$prompt $" { fail "print unsigned char !=" }
359 timeout { fail "(timeout) print unsigned char !=" }
362 -re "$prompt $" { fail "print unsigned char !=" }
363 timeout { fail "(timeout) print unsigned char !=" }
366 -re "$prompt $" { fail "print unsigned char !=" }
367 timeout { fail "(timeout) print unsigned char !=" }
371 send "set variable v_unsigned_char=127\n"
373 -re "set.*$prompt $" {
374 send "print v_unsigned_char < 0\n"
376 -re "print.*.\[0-9\]* = 0.*$prompt $" {
377 send "print v_unsigned_char < 127\n"
379 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned char <" }
380 -re "$prompt $" { fail "print unsigned char <" }
381 timeout { fail "(timeout) print unsigned char <" }
384 -re "$prompt $" { fail "print unsigned char <" }
385 timeout { fail "(timeout) print unsigned char <" }
388 -re "$prompt $" { fail "print unsigned char <" }
389 timeout { fail "(timeout) print unsigned char <" }
393 send "set variable v_unsigned_char=127\n"
395 -re "set.*$prompt $" {
396 send "print v_unsigned_char > 0\n"
398 -re "print.*.\[0-9\]* = 1.*$prompt $" {
399 send "print v_unsigned_char > 127\n"
401 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned char >" }
402 -re "$prompt $" { fail "print unsigned char >" }
403 timeout { fail "(timeout) print unsigned char >" }
406 -re "$prompt $" { fail "print unsigned char >" }
407 timeout { fail "(timeout) print unsigned char >" }
410 -re "$prompt $" { fail "print unsigned char >" }
411 timeout { fail "(timeout) print unsigned char >" }
416 # FIXME: gdb mishandles the cast (unsigned char) on the i960, so I've
417 # set up an expected failure for this case.
418 send "set variable v_unsigned_char=~0\n"
420 -re "set.*$prompt $" {
421 send "print v_unsigned_char == 0\n"
423 -re "print.*.\[0-9\]* = 0.*$prompt $" {
424 send "print v_unsigned_char == ~0\n"
426 -re "print.*.\[0-9\]* = 0.*$prompt $" {
427 setup_xfail "i960-*-*" 1821
428 send "print v_unsigned_char == (unsigned char)~0\n"
430 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned char == (~0)" }
431 -re "$prompt $" { fail "print unsigned char == (~0)" }
432 timeout { fail "(timeout) print unsigned char == (~0)" }
435 -re "$prompt $" { fail "print unsigned char == (~0)" }
436 timeout { fail "(timeout) print unsigned char == (~0)" }
439 -re "$prompt $" { fail "print unsigned char == (~0)" }
440 timeout { fail "(timeout) print unsigned char == (~0)" }
443 -re "$prompt $" { fail "print unsigned char == (~0)" }
444 timeout { fail "(timeout) print unsigned char == (~0)" }
448 # FIXME: gdb mishandles the cast (unsigned char) on the i960, so I've
449 # set up an expected failure for this case.
450 send "set variable v_unsigned_char=~0\n"
452 -re "set.*$prompt $" {
453 send "print v_unsigned_char != 0\n"
455 -re "print.*.\[0-9\]* = 1.*$prompt $" {
456 setup_xfail "i960-*-*" 1821
457 send "print v_unsigned_char != (unsigned char)~0\n"
459 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned char != (~0)" }
460 -re "$prompt $" { fail "print unsigned char != (~0)" }
461 timeout { fail "(timeout) print unsigned char != (~0)" }
464 -re "$prompt $" { fail "print unsigned char != (~0)" }
465 timeout { fail "(timeout) print unsigned char != (~0)" }
468 -re "$prompt $" { fail "print unsigned char != (~0)" }
469 timeout { fail "(timeout) print unsigned char != (~0)" }
473 send "set variable v_unsigned_char=~0\n"
475 -re "set.*$prompt $" {
476 send "print v_unsigned_char < 0\n"
478 -re "print.*.\[0-9\]* = 0.*$prompt $" {
479 send "print v_unsigned_char < 127\n"
481 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned char < (~0)" }
482 -re "$prompt $" { fail "print unsigned char < (~0)" }
483 timeout { fail "(timeout) print unsigned char < (~0)" }
486 -re "$prompt $" { fail "print unsigned char < (~0)" }
487 timeout { fail "(timeout) print unsigned char < (~0)" }
490 -re "$prompt $" { fail "print unsigned char < (~0)" }
491 timeout { fail "(timeout) print unsigned char < (~0)" }
495 send "set variable v_unsigned_char=~0\n"
497 -re "set.*$prompt $" {
498 send "print v_unsigned_char > 0\n"
500 -re "print.*.\[0-9\]* = 1.*$prompt $" {
501 send "print v_unsigned_char > 127\n"
503 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned char > (~0)" }
504 -re "$prompt $" { fail "print unsigned char > (~0)" }
505 timeout { fail "(timeout) print unsigned char > (~0)" }
508 -re "$prompt $" { fail "print unsigned char > (~0)" }
509 timeout { fail "(timeout) print unsigned char > (~0)" }
512 -re "$prompt $" { fail "print unsigned char > (~0)" }
513 timeout { fail "(timeout) print unsigned char > (~0)" }
518 # test expressions with "short" types
520 send "set variable v_short=0x7FFF\n"
522 -re "set.*$prompt $" {
523 send "print v_short == 0\n"
525 -re "print.*.\[0-9\]* = 0.*$prompt $" {
526 send "print v_short == 0x7FFF\n"
528 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed short ==" }
529 -re "$prompt $" { fail "print signed short ==" }
530 timeout { fail "(timeout) print signed short ==" }
533 -re "$prompt $" { fail "print signed short ==" }
534 timeout { fail "(timeout) print signed short ==" }
537 -re "$prompt $" { fail "print signed short ==" }
538 timeout { fail "(timeout) print signed short ==" }
542 send "set variable v_short=0x7FFF\n"
544 -re "set.*$prompt $" {
545 send "print v_short != 0\n"
547 -re "print.*.\[0-9\]* = 1.*$prompt $" {
548 send "print v_short != 0x7FFF\n"
550 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed short !=" }
551 -re "$prompt $" { fail "print signed short !=" }
552 timeout { fail "(timeout) print signed short !=" }
555 -re "$prompt $" { fail "print signed short !=" }
556 timeout { fail "(timeout) print signed short !=" }
559 -re "$prompt $" { fail "print signed short !=" }
560 timeout { fail "(timeout) print signed short !=" }
564 send "set variable v_short=0x7FFF\n"
566 -re "set.*$prompt $" {
567 send "print v_short < 0\n"
569 -re "print.*.\[0-9\]* = 0.*$prompt $" {
570 send "print v_short < 0x7FFF\n"
572 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed short <" }
573 -re "$prompt $" { fail "print signed short <" }
574 timeout { fail "(timeout) print signed short <" }
577 -re "$prompt $" { fail "print signed short <" }
578 timeout { fail "(timeout) print signed short <" }
581 -re "$prompt $" { fail "print signed short <" }
582 timeout { fail "(timeout) print signed short <" }
586 send "set variable v_short=0x7FFF\n"
588 -re "set.*$prompt $" {
589 send "print v_short > 0\n"
591 -re "print.*.\[0-9\]* = 1.*$prompt $" {
592 send "print v_short > 0x7FFF\n"
594 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed short >" }
595 -re "$prompt $" { fail "print signed short >" }
596 timeout { fail "(timeout) print signed short >" }
599 -re "$prompt $" { fail "print signed short >" }
600 timeout { fail "(timeout) print signed short >" }
603 -re "$prompt $" { fail "print signed short >" }
604 timeout { fail "(timeout) print signed short >" }
609 send "set variable v_short=-1\n"
611 -re "set.*$prompt $" {
612 send "print v_short == 0\n"
614 -re "print.*.\[0-9\]* = 0.*$prompt $" {
615 send "print v_short == -1\n"
617 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed short == (minus)" }
618 -re "$prompt $" { fail "print signed short == (minus)" }
619 timeout { fail "(timeout) print signed short == (minus)" }
622 -re "$prompt $" { fail "print signed short == (minus)" }
623 timeout { fail "(timeout) print signed short == (minus)" }
626 -re "$prompt $" { fail "print signed short == (minus)" }
627 timeout { fail "(timeout) print signed short == (minus)" }
631 send "set variable v_short=-1\n"
633 -re "set.*$prompt $" {
634 send "print v_short != 0\n"
636 -re "print.*.\[0-9\]* = 1.*$prompt $" {
637 send "print v_short != -1\n"
639 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed short != (minus)" }
640 -re "$prompt $" { fail "print signed short != (minus)" }
641 timeout { fail "(timeout) print signed short != (minus)" }
644 -re "$prompt $" { fail "print signed short != (minus)" }
645 timeout { fail "(timeout) print signed short != (minus)" }
648 -re "$prompt $" { fail "print signed short != (minus)" }
649 timeout { fail "(timeout) print signed short != (minus)" }
653 send "set variable v_short=-1\n"
655 -re "set.*$prompt $" {
656 send "print v_short < 0\n"
658 -re "print.*.\[0-9\]* = 1.*$prompt $" {
659 send "print v_short < 0x7FFF\n"
661 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed short < (minus)" }
662 -re "$prompt $" { fail "print signed short < (minus)" }
663 timeout { fail "(timeout) print signed short < (minus)" }
666 -re "$prompt $" { fail "print signed short < (minus)" }
667 timeout { fail "(timeout) print signed short < (minus)" }
670 -re "$prompt $" { fail "print signed short < (minus)" }
671 timeout { fail "(timeout) print signed short < (minus)" }
675 send "set variable v_short=-1\n"
677 -re "set.*$prompt $" {
678 send "print v_short > 0\n"
680 -re "print.*.\[0-9\]* = 0.*$prompt $" {
681 send "print v_short > 0x7FFF\n"
683 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed short > (minus)" }
684 -re "$prompt $" { fail "print signed short > (minus)" }
685 timeout { fail "(timeout) print signed short > (minus)" }
688 -re "$prompt $" { fail "print signed short > (minus)" }
689 timeout { fail "(timeout) print signed short > (minus)" }
692 -re "$prompt $" { fail "print signed short > (minus)" }
693 timeout { fail "(timeout) print signed short > (minus)" }
698 # test expressions with "signed short" types
700 send "set variable v_signed_short=0x7FFF\n"
702 -re "set.*$prompt $" {
703 send "print v_signed_short == 0\n"
705 -re "print.*.\[0-9\]* = 0.*$prompt $" {
706 send "print v_signed_short == 0x7FFF\n"
708 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed short ==" }
709 -re "$prompt $" { fail "print signed signed short ==" }
710 timeout { fail "(timeout) print signed signed short ==" }
713 -re "$prompt $" { fail "print signed signed short ==" }
714 timeout { fail "(timeout) print signed signed short ==" }
717 -re "$prompt $" { fail "print signed signed short ==" }
718 timeout { fail "(timeout) print signed signed short ==" }
722 send "set variable v_signed_short=0x7FFF\n"
724 -re "set.*$prompt $" {
725 send "print v_signed_short != 0\n"
727 -re "print.*.\[0-9\]* = 1.*$prompt $" {
728 send "print v_signed_short != 0x7FFF\n"
730 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed short !=" }
731 -re "$prompt $" { fail "print signed signed short !=" }
732 timeout { fail "(timeout) print signed signed short !=" }
735 -re "$prompt $" { fail "print signed signed short !=" }
736 timeout { fail "(timeout) print signed signed short !=" }
739 -re "$prompt $" { fail "print signed signed short !=" }
740 timeout { fail "(timeout) print signed signed short !=" }
744 send "set variable v_signed_short=0x7FFF\n"
746 -re "set.*$prompt $" {
747 send "print v_signed_short < 0\n"
749 -re "print.*.\[0-9\]* = 0.*$prompt $" {
750 send "print v_signed_short < 0x7FFF\n"
752 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed short <" }
753 -re "$prompt $" { fail "print signed signed short <" }
754 timeout { fail "(timeout) print signed signed short <" }
757 -re "$prompt $" { fail "print signed signed short <" }
758 timeout { fail "(timeout) print signed signed short <" }
761 -re "$prompt $" { fail "print signed signed short <" }
762 timeout { fail "(timeout) print signed signed short <" }
766 send "set variable v_signed_short=0x7FFF\n"
768 -re "set.*$prompt $" {
769 send "print v_signed_short > 0\n"
771 -re "print.*.\[0-9\]* = 1.*$prompt $" {
772 send "print v_signed_short > 0x7FFF\n"
774 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed short >" }
775 -re "$prompt $" { fail "print signed signed short >" }
776 timeout { fail "(timeout) print signed signed short >" }
779 -re "$prompt $" { fail "print signed signed short >" }
780 timeout { fail "(timeout) print signed signed short >" }
783 -re "$prompt $" { fail "print signed signed short >" }
784 timeout { fail "(timeout) print signed signed short >" }
789 send "set variable v_signed_short=-1\n"
791 -re "set.*$prompt $" {
792 send "print v_signed_short == 0\n"
794 -re "print.*.\[0-9\]* = 0.*$prompt $" {
795 send "print v_signed_short == -1\n"
797 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed short == (minus)" }
798 -re "$prompt $" { fail "print signed signed short == (minus)" }
799 timeout { fail "(timeout) print signed signed short == (minus)" }
802 -re "$prompt $" { fail "print signed signed short == (minus)" }
803 timeout { fail "(timeout) print signed signed short == (minus)" }
806 -re "$prompt $" { fail "print signed signed short == (minus)" }
807 timeout { fail "(timeout) print signed signed short == (minus)" }
811 send "set variable v_signed_short=-1\n"
813 -re "set.*$prompt $" {
814 send "print v_signed_short != 0\n"
816 -re "print.*.\[0-9\]* = 1.*$prompt $" {
817 send "print v_signed_short != -1\n"
819 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed short != (minus)" }
820 -re "$prompt $" { fail "print signed signed short != (minus)" }
821 timeout { fail "(timeout) print signed signed short != (minus)" }
824 -re "$prompt $" { fail "print signed signed short != (minus)" }
825 timeout { fail "(timeout) print signed signed short != (minus)" }
828 -re "$prompt $" { fail "print signed signed short != (minus)" }
829 timeout { fail "(timeout) print signed signed short != (minus)" }
833 send "set variable v_signed_short=-1\n"
835 -re "set.*$prompt $" {
836 send "print v_signed_short < 0\n"
838 -re "print.*.\[0-9\]* = 1.*$prompt $" {
839 send "print v_signed_short < 0x7FFF\n"
841 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed short < (minus)" }
842 -re "$prompt $" { fail "print signed signed short < (minus)" }
843 timeout { fail "(timeout) print signed signed short < (minus)" }
846 -re "$prompt $" { fail "print signed signed short < (minus)" }
847 timeout { fail "(timeout) print signed signed short < (minus)" }
850 -re "$prompt $" { fail "print signed signed short < (minus)" }
851 timeout { fail "(timeout) print signed signed short < (minus)" }
855 send "set variable v_signed_short=-1\n"
857 -re "set.*$prompt $" {
858 send "print v_signed_short > 0\n"
860 -re "print.*.\[0-9\]* = 0.*$prompt $" {
861 send "print v_signed_short > 0x7FFF\n"
863 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed short > (minus)" }
864 -re "$prompt $" { fail "print signed signed short > (minus)" }
865 timeout { fail "(timeout) print signed signed short > (minus)" }
868 -re "$prompt $" { fail "print signed signed short > (minus)" }
869 timeout { fail "(timeout) print signed signed short > (minus)" }
872 -re "$prompt $" { fail "print signed signed short > (minus)" }
873 timeout { fail "(timeout) print signed signed short > (minus)" }
878 # test expressions with "unsigned short" types
880 send "set variable v_unsigned_short=0x7FFF\n"
882 -re "set.*$prompt $" {
883 send "print v_unsigned_short == 0\n"
885 -re "print.*.\[0-9\]* = 0.*$prompt $" {
886 send "print v_unsigned_short == 0x7FFF\n"
888 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned short ==" }
889 -re "$prompt $" { fail "print unsigned short ==" }
890 timeout { fail "(timeout) print unsigned short ==" }
893 -re "$prompt $" { fail "print unsigned short ==" }
894 timeout { fail "(timeout) print unsigned short ==" }
897 -re "$prompt $" { fail "print unsigned short ==" }
898 timeout { fail "(timeout) print unsigned short ==" }
902 send "set variable v_unsigned_short=0x7FFF\n"
904 -re "set.*$prompt $" {
905 send "print v_unsigned_short != 0\n"
907 -re "print.*.\[0-9\]* = 1.*$prompt $" {
908 send "print v_unsigned_short != 0x7FFF\n"
910 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned short !=" }
911 -re "$prompt $" { fail "print unsigned short !=" }
912 timeout { fail "(timeout) print unsigned short !=" }
915 -re "$prompt $" { fail "print unsigned short !=" }
916 timeout { fail "(timeout) print unsigned short !=" }
919 -re "$prompt $" { fail "print unsigned short !=" }
920 timeout { fail "(timeout) print unsigned short !=" }
924 send "set variable v_unsigned_short=0x7FFF\n"
926 -re "set.*$prompt $" {
927 send "print v_unsigned_short < 0\n"
929 -re "print.*.\[0-9\]* = 0.*$prompt $" {
930 send "print v_unsigned_short < 0x7FFF\n"
932 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned short <" }
933 -re "$prompt $" { fail "print unsigned short <" }
934 timeout { fail "(timeout) print unsigned short <" }
937 -re "$prompt $" { fail "print unsigned short <" }
938 timeout { fail "(timeout) print unsigned short <" }
941 -re "$prompt $" { fail "print unsigned short <" }
942 timeout { fail "(timeout) print unsigned short <" }
946 send "set variable v_unsigned_short=0x7FFF\n"
948 -re "set.*$prompt $" {
949 send "print v_unsigned_short > 0\n"
951 -re "print.*.\[0-9\]* = 1.*$prompt $" {
952 send "print v_unsigned_short > 0x7FFF\n"
954 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned short >" }
955 -re "$prompt $" { fail "print unsigned short >" }
956 timeout { fail "(timeout) print unsigned short >" }
959 -re "$prompt $" { fail "print unsigned short >" }
960 timeout { fail "(timeout) print unsigned short >" }
963 -re "$prompt $" { fail "print unsigned short >" }
964 timeout { fail "(timeout) print unsigned short >" }
969 send "set variable v_unsigned_short=~0\n"
971 -re "set.*$prompt $" {
972 send "print v_unsigned_short == 0\n"
974 -re "print.*.\[0-9\]* = 0.*$prompt $" {
975 send "print v_unsigned_short == ~0\n"
977 -re "print.*.\[0-9\]* = 0.*$prompt $" {
978 send "print v_unsigned_short == (unsigned short)~0\n"
980 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned short == (~0)" }
981 -re "$prompt $" { fail "print unsigned short == (~0)" }
982 timeout { fail "(timeout) print unsigned short == (~0)" }
985 -re "$prompt $" { fail "print unsigned short == (~0)" }
986 timeout { fail "(timeout) print unsigned short == (~0)" }
989 -re "$prompt $" { fail "print unsigned short == (~0)" }
990 timeout { fail "(timeout) print unsigned short == (~0)" }
993 -re "$prompt $" { fail "print unsigned short == (~0)" }
994 timeout { fail "(timeout) print unsigned short == (~0)" }
998 send "set variable v_unsigned_short=~0\n"
1000 -re "set.*$prompt $" {
1001 send "print v_unsigned_short != 0\n"
1003 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1004 send "print v_unsigned_short != (unsigned short)~0\n"
1006 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned short != (~0)" }
1007 -re "$prompt $" { fail "print unsigned short != (~0)" }
1008 timeout { fail "(timeout) print unsigned short != (~0)" }
1011 -re "$prompt $" { fail "print unsigned short != (~0)" }
1012 timeout { fail "(timeout) print unsigned short != (~0)" }
1015 -re "$prompt $" { fail "print unsigned short != (~0)" }
1016 timeout { fail "(timeout) print unsigned short != (~0)" }
1020 send "set variable v_unsigned_short=~0\n"
1022 -re "set.*$prompt $" {
1023 send "print v_unsigned_short < 0\n"
1025 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1026 send "print v_unsigned_short < 0x7FFF\n"
1028 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned short < (~0)" }
1029 -re "$prompt $" { fail "print unsigned short < (~0)" }
1030 timeout { fail "(timeout) print unsigned short < (~0)" }
1033 -re "$prompt $" { fail "print unsigned short < (~0)" }
1034 timeout { fail "(timeout) print unsigned short < (~0)" }
1037 -re "$prompt $" { fail "print unsigned short < (~0)" }
1038 timeout { fail "(timeout) print unsigned short < (~0)" }
1042 send "set variable v_unsigned_short=~0\n"
1044 -re "set.*$prompt $" {
1045 send "print v_unsigned_short > 0\n"
1047 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1048 send "print v_unsigned_short > 0x7FFF\n"
1050 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned short > (~0)" }
1051 -re "$prompt $" { fail "print unsigned short > (~0)" }
1052 timeout { fail "(timeout) print unsigned short > (~0)" }
1055 -re "$prompt $" { fail "print unsigned short > (~0)" }
1056 timeout { fail "(timeout) print unsigned short > (~0)" }
1059 -re "$prompt $" { fail "print unsigned short > (~0)" }
1060 timeout { fail "(timeout) print unsigned short > (~0)" }
1065 # test expressions with "int" types
1067 send "set variable v_int=0x7FFF\n"
1069 -re "set.*$prompt $" {
1070 send "print v_int == 0\n"
1072 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1073 send "print v_int == 0x7FFF\n"
1075 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed int ==" }
1076 -re "$prompt $" { fail "print signed int ==" }
1077 timeout { fail "(timeout) print signed int ==" }
1080 -re "$prompt $" { fail "print signed int ==" }
1081 timeout { fail "(timeout) print signed int ==" }
1084 -re "$prompt $" { fail "print signed int ==" }
1085 timeout { fail "(timeout) print signed int ==" }
1089 send "set variable v_int=0x7FFF\n"
1091 -re "set.*$prompt $" {
1092 send "print v_int != 0\n"
1094 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1095 send "print v_int != 0x7FFF\n"
1097 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed int !=" }
1098 -re "$prompt $" { fail "print signed int !=" }
1099 timeout { fail "(timeout) print signed int !=" }
1102 -re "$prompt $" { fail "print signed int !=" }
1103 timeout { fail "(timeout) print signed int !=" }
1106 -re "$prompt $" { fail "print signed int !=" }
1107 timeout { fail "(timeout) print signed int !=" }
1111 send "set variable v_int=0x7FFF\n"
1113 -re "set.*$prompt $" {
1114 send "print v_int < 0\n"
1116 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1117 send "print v_int < 0x7FFF\n"
1119 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed int <" }
1120 -re "$prompt $" { fail "print signed int <" }
1121 timeout { fail "(timeout) print signed int <" }
1124 -re "$prompt $" { fail "print signed int <" }
1125 timeout { fail "(timeout) print signed int <" }
1128 -re "$prompt $" { fail "print signed int <" }
1129 timeout { fail "(timeout) print signed int <" }
1133 send "set variable v_int=0x7FFF\n"
1135 -re "set.*$prompt $" {
1136 send "print v_int > 0\n"
1138 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1139 send "print v_int > 0x7FFF\n"
1141 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed int >" }
1142 -re "$prompt $" { fail "print signed int >" }
1143 timeout { fail "(timeout) print signed int >" }
1146 -re "$prompt $" { fail "print signed int >" }
1147 timeout { fail "(timeout) print signed int >" }
1150 -re "$prompt $" { fail "print signed int >" }
1151 timeout { fail "(timeout) print signed int >" }
1156 send "set variable v_int=-1\n"
1158 -re "set.*$prompt $" {
1159 send "print v_int == 0\n"
1161 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1162 send "print v_int == -1\n"
1164 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed int == (minus)" }
1165 -re "$prompt $" { fail "print signed int == (minus)" }
1166 timeout { fail "(timeout) print signed int == (minus)" }
1169 -re "$prompt $" { fail "print signed int == (minus)" }
1170 timeout { fail "(timeout) print signed int == (minus)" }
1173 -re "$prompt $" { fail "print signed int == (minus)" }
1174 timeout { fail "(timeout) print signed int == (minus)" }
1178 send "set variable v_int=-1\n"
1180 -re "set.*$prompt $" {
1181 send "print v_int != 0\n"
1183 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1184 send "print v_int != -1\n"
1186 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed int != (minus)" }
1187 -re "$prompt $" { fail "print signed int != (minus)" }
1188 timeout { fail "(timeout) print signed int != (minus)" }
1191 -re "$prompt $" { fail "print signed int != (minus)" }
1192 timeout { fail "(timeout) print signed int != (minus)" }
1195 -re "$prompt $" { fail "print signed int != (minus)" }
1196 timeout { fail "(timeout) print signed int != (minus)" }
1200 send "set variable v_int=-1\n"
1202 -re "set.*$prompt $" {
1203 send "print v_int < 0\n"
1205 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1206 send "print v_int < 0x7FFF\n"
1208 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed int < (minus)" }
1209 -re "$prompt $" { fail "print signed int < (minus)" }
1210 timeout { fail "(timeout) print signed int < (minus)" }
1213 -re "$prompt $" { fail "print signed int < (minus)" }
1214 timeout { fail "(timeout) print signed int < (minus)" }
1217 -re "$prompt $" { fail "print signed int < (minus)" }
1218 timeout { fail "(timeout) print signed int < (minus)" }
1222 send "set variable v_int=-1\n"
1224 -re "set.*$prompt $" {
1225 send "print v_int > 0\n"
1227 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1228 send "print v_int > 0x7FFF\n"
1230 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed int > (minus)" }
1231 -re "$prompt $" { fail "print signed int > (minus)" }
1232 timeout { fail "(timeout) print signed int > (minus)" }
1235 -re "$prompt $" { fail "print signed int > (minus)" }
1236 timeout { fail "(timeout) print signed int > (minus)" }
1239 -re "$prompt $" { fail "print signed int > (minus)" }
1240 timeout { fail "(timeout) print signed int > (minus)" }
1245 # test expressions with "signed int" types
1247 send "set variable v_signed_int=0x7FFF\n"
1249 -re "set.*$prompt $" {
1250 send "print v_signed_int == 0\n"
1252 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1253 send "print v_signed_int == 0x7FFF\n"
1255 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed int ==" }
1256 -re "$prompt $" { fail "print signed signed int ==" }
1257 timeout { fail "(timeout) print signed signed int ==" }
1260 -re "$prompt $" { fail "print signed signed int ==" }
1261 timeout { fail "(timeout) print signed signed int ==" }
1264 -re "$prompt $" { fail "print signed signed int ==" }
1265 timeout { fail "(timeout) print signed signed int ==" }
1269 send "set variable v_signed_int=0x7FFF\n"
1271 -re "set.*$prompt $" {
1272 send "print v_signed_int != 0\n"
1274 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1275 send "print v_signed_int != 0x7FFF\n"
1277 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed int !=" }
1278 -re "$prompt $" { fail "print signed signed int !=" }
1279 timeout { fail "(timeout) print signed signed int !=" }
1282 -re "$prompt $" { fail "print signed signed int !=" }
1283 timeout { fail "(timeout) print signed signed int !=" }
1286 -re "$prompt $" { fail "print signed signed int !=" }
1287 timeout { fail "(timeout) print signed signed int !=" }
1291 send "set variable v_signed_int=0x7FFF\n"
1293 -re "set.*$prompt $" {
1294 send "print v_signed_int < 0\n"
1296 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1297 send "print v_signed_int < 0x7FFF\n"
1299 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed int <" }
1300 -re "$prompt $" { fail "print signed signed int <" }
1301 timeout { fail "(timeout) print signed signed int <" }
1304 -re "$prompt $" { fail "print signed signed int <" }
1305 timeout { fail "(timeout) print signed signed int <" }
1308 -re "$prompt $" { fail "print signed signed int <" }
1309 timeout { fail "(timeout) print signed signed int <" }
1313 send "set variable v_signed_int=0x7FFF\n"
1315 -re "set.*$prompt $" {
1316 send "print v_signed_int > 0\n"
1318 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1319 send "print v_signed_int > 0x7FFF\n"
1321 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed int >" }
1322 -re "$prompt $" { fail "print signed signed int >" }
1323 timeout { fail "(timeout) print signed signed int >" }
1326 -re "$prompt $" { fail "print signed signed int >" }
1327 timeout { fail "(timeout) print signed signed int >" }
1330 -re "$prompt $" { fail "print signed signed int >" }
1331 timeout { fail "(timeout) print signed signed int >" }
1336 send "set variable v_signed_int=-1\n"
1338 -re "set.*$prompt $" {
1339 send "print v_signed_int == 0\n"
1341 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1342 send "print v_signed_int == -1\n"
1344 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed int == (minus)" }
1345 -re "$prompt $" { fail "print signed signed int == (minus)" }
1346 timeout { fail "(timeout) print signed signed int == (minus)" }
1349 -re "$prompt $" { fail "print signed signed int == (minus)" }
1350 timeout { fail "(timeout) print signed signed int == (minus)" }
1353 -re "$prompt $" { fail "print signed signed int == (minus)" }
1354 timeout { fail "(timeout) print signed signed int == (minus)" }
1358 send "set variable v_signed_int=-1\n"
1360 -re "set.*$prompt $" {
1361 send "print v_signed_int != 0\n"
1363 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1364 send "print v_signed_int != -1\n"
1366 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed int != (minus)" }
1367 -re "$prompt $" { fail "print signed signed int != (minus)" }
1368 timeout { fail "(timeout) print signed signed int != (minus)" }
1371 -re "$prompt $" { fail "print signed signed int != (minus)" }
1372 timeout { fail "(timeout) print signed signed int != (minus)" }
1375 -re "$prompt $" { fail "print signed signed int != (minus)" }
1376 timeout { fail "(timeout) print signed signed int != (minus)" }
1380 send "set variable v_signed_int=-1\n"
1382 -re "set.*$prompt $" {
1383 send "print v_signed_int < 0\n"
1385 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1386 send "print v_signed_int < 0x7FFF\n"
1388 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed int < (minus)" }
1389 -re "$prompt $" { fail "print signed signed int < (minus)" }
1390 timeout { fail "(timeout) print signed signed int < (minus)" }
1393 -re "$prompt $" { fail "print signed signed int < (minus)" }
1394 timeout { fail "(timeout) print signed signed int < (minus)" }
1397 -re "$prompt $" { fail "print signed signed int < (minus)" }
1398 timeout { fail "(timeout) print signed signed int < (minus)" }
1402 send "set variable v_signed_int=-1\n"
1404 -re "set.*$prompt $" {
1405 send "print v_signed_int > 0\n"
1407 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1408 send "print v_signed_int > 0x7FFF\n"
1410 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed int > (minus)" }
1411 -re "$prompt $" { fail "print signed signed int > (minus)" }
1412 timeout { fail "(timeout) print signed signed int > (minus)" }
1415 -re "$prompt $" { fail "print signed signed int > (minus)" }
1416 timeout { fail "(timeout) print signed signed int > (minus)" }
1419 -re "$prompt $" { fail "print signed signed int > (minus)" }
1420 timeout { fail "(timeout) print signed signed int > (minus)" }
1425 # test expressions with "unsigned int" types
1427 send "set variable v_unsigned_int=0x7FFF\n"
1429 -re "set.*$prompt $" {
1430 send "print v_unsigned_int == 0\n"
1432 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1433 send "print v_unsigned_int == 0x7FFF\n"
1435 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned int ==" }
1436 -re "$prompt $" { fail "print unsigned int ==" }
1437 timeout { fail "(timeout) print unsigned int ==" }
1440 -re "$prompt $" { fail "print unsigned int ==" }
1441 timeout { fail "(timeout) print unsigned int ==" }
1444 -re "$prompt $" { fail "print unsigned int ==" }
1445 timeout { fail "(timeout) print unsigned int ==" }
1449 send "set variable v_unsigned_int=0x7FFF\n"
1451 -re "set.*$prompt $" {
1452 send "print v_unsigned_int != 0\n"
1454 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1455 send "print v_unsigned_int != 0x7FFF\n"
1457 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned int !=" }
1458 -re "$prompt $" { fail "print unsigned int !=" }
1459 timeout { fail "(timeout) print unsigned int !=" }
1462 -re "$prompt $" { fail "print unsigned int !=" }
1463 timeout { fail "(timeout) print unsigned int !=" }
1466 -re "$prompt $" { fail "print unsigned int !=" }
1467 timeout { fail "(timeout) print unsigned int !=" }
1471 send "set variable v_unsigned_int=0x7FFF\n"
1473 -re "set.*$prompt $" {
1474 send "print v_unsigned_int < 0\n"
1476 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1477 send "print v_unsigned_int < 0x7FFF\n"
1479 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned int <" }
1480 -re "$prompt $" { fail "print unsigned int <" }
1481 timeout { fail "(timeout) print unsigned int <" }
1484 -re "$prompt $" { fail "print unsigned int <" }
1485 timeout { fail "(timeout) print unsigned int <" }
1488 -re "$prompt $" { fail "print unsigned int <" }
1489 timeout { fail "(timeout) print unsigned int <" }
1493 send "set variable v_unsigned_int=0x7FFF\n"
1495 -re "set.*$prompt $" {
1496 send "print v_unsigned_int > 0\n"
1498 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1499 send "print v_unsigned_int > 0x7FFF\n"
1501 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned int >" }
1502 -re "$prompt $" { fail "print unsigned int >" }
1503 timeout { fail "(timeout) print unsigned int >" }
1506 -re "$prompt $" { fail "print unsigned int >" }
1507 timeout { fail "(timeout) print unsigned int >" }
1510 -re "$prompt $" { fail "print unsigned int >" }
1511 timeout { fail "(timeout) print unsigned int >" }
1516 send "set variable v_unsigned_int=~0\n"
1518 -re "set.*$prompt $" {
1519 send "print v_unsigned_int == 0\n"
1521 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1522 send "print v_unsigned_int == ~0\n"
1524 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1525 send "print v_unsigned_int == (unsigned int)~0\n"
1527 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned int == (~0)" }
1528 -re "$prompt $" { fail "print unsigned int == (~0)" }
1529 timeout { fail "(timeout) print unsigned int == (~0)" }
1532 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1533 # gdb currently compares all values as long, so this failure probably
1534 # applies to any configuration where LONGEST is bigger than a target int.
1535 setup_xfail "alpha-*-*"
1536 fail "print unsigned int == (~0)"
1537 send "print v_unsigned_int == (unsigned int)~0\n"
1539 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned int == (~0)" }
1540 -re "$prompt $" { fail "print unsigned int == (~0)" }
1541 timeout { fail "(timeout) print unsigned int == (~0)" }
1544 -re "$prompt $" { fail "print unsigned int == (~0)" }
1545 timeout { fail "(timeout) print unsigned int == (~0)" }
1548 -re "$prompt $" { fail "print unsigned int == (~0)" }
1549 timeout { fail "(timeout) print unsigned int == (~0)" }
1552 -re "$prompt $" { fail "print unsigned int == (~0)" }
1553 timeout { fail "(timeout) print unsigned int == (~0)" }
1557 send "set variable v_unsigned_int=~0\n"
1559 -re "set.*$prompt $" {
1560 send "print v_unsigned_int != 0\n"
1562 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1563 send "print v_unsigned_int != (unsigned int)~0\n"
1565 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned int != (~0)" }
1566 -re "$prompt $" { fail "print unsigned int != (~0)" }
1567 timeout { fail "(timeout) print unsigned int != (~0)" }
1570 -re "$prompt $" { fail "print unsigned int != (~0)" }
1571 timeout { fail "(timeout) print unsigned int != (~0)" }
1574 -re "$prompt $" { fail "print unsigned int != (~0)" }
1575 timeout { fail "(timeout) print unsigned int != (~0)" }
1579 send "set variable v_unsigned_int=~0\n"
1581 -re "set.*$prompt $" {
1582 send "print v_unsigned_int < 0\n"
1584 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1585 send "print v_unsigned_int < 0x7FFF\n"
1587 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned int < (~0)" }
1588 -re "$prompt $" { fail "print unsigned int < (~0)" }
1589 timeout { fail "(timeout) print unsigned int < (~0)" }
1592 -re "$prompt $" { fail "print unsigned int < (~0)" }
1593 timeout { fail "(timeout) print unsigned int < (~0)" }
1596 -re "$prompt $" { fail "print unsigned int < (~0)" }
1597 timeout { fail "(timeout) print unsigned int < (~0)" }
1601 send "set variable v_unsigned_int=~0\n"
1603 -re "set.*$prompt $" {
1604 send "print v_unsigned_int > 0\n"
1606 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1607 send "print v_unsigned_int > 0x7FFF\n"
1609 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned int > (~0)" }
1610 -re "$prompt $" { fail "print unsigned int > (~0)" }
1611 timeout { fail "(timeout) print unsigned int > (~0)" }
1614 -re "$prompt $" { fail "print unsigned int > (~0)" }
1615 timeout { fail "(timeout) print unsigned int > (~0)" }
1618 -re "$prompt $" { fail "print unsigned int > (~0)" }
1619 timeout { fail "(timeout) print unsigned int > (~0)" }
1624 # test expressions with "long" types
1626 send "set variable v_long=0x7FFF\n"
1628 -re "set.*$prompt $" {
1629 send "print v_long == 0\n"
1631 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1632 send "print v_long == 0x7FFF\n"
1634 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed long ==" }
1635 -re "$prompt $" { fail "print signed long ==" }
1636 timeout { fail "(timeout) print signed long ==" }
1639 -re "$prompt $" { fail "print signed long ==" }
1640 timeout { fail "(timeout) print signed long ==" }
1643 -re "$prompt $" { fail "print signed long ==" }
1644 timeout { fail "(timeout) print signed long ==" }
1648 send "set variable v_long=0x7FFF\n"
1650 -re "set.*$prompt $" {
1651 send "print v_long != 0\n"
1653 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1654 send "print v_long != 0x7FFF\n"
1656 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed long !=" }
1657 -re "$prompt $" { fail "print signed long !=" }
1658 timeout { fail "(timeout) print signed long !=" }
1661 -re "$prompt $" { fail "print signed long !=" }
1662 timeout { fail "(timeout) print signed long !=" }
1665 -re "$prompt $" { fail "print signed long !=" }
1666 timeout { fail "(timeout) print signed long !=" }
1670 send "set variable v_long=0x7FFF\n"
1672 -re "set.*$prompt $" {
1673 send "print v_long < 0\n"
1675 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1676 send "print v_long < 0x7FFF\n"
1678 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed long <" }
1679 -re "$prompt $" { fail "print signed long <" }
1680 timeout { fail "(timeout) print signed long <" }
1683 -re "$prompt $" { fail "print signed long <" }
1684 timeout { fail "(timeout) print signed long <" }
1687 -re "$prompt $" { fail "print signed long <" }
1688 timeout { fail "(timeout) print signed long <" }
1692 send "set variable v_long=0x7FFF\n"
1694 -re "set.*$prompt $" {
1695 send "print v_long > 0\n"
1697 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1698 send "print v_long > 0x7FFF\n"
1700 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed long >" }
1701 -re "$prompt $" { fail "print signed long >" }
1702 timeout { fail "(timeout) print signed long >" }
1705 -re "$prompt $" { fail "print signed long >" }
1706 timeout { fail "(timeout) print signed long >" }
1709 -re "$prompt $" { fail "print signed long >" }
1710 timeout { fail "(timeout) print signed long >" }
1715 send "set variable v_long=-1\n"
1717 -re "set.*$prompt $" {
1718 send "print v_long == 0\n"
1720 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1721 send "print v_long == -1\n"
1723 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed long == (minus)" }
1724 -re "$prompt $" { fail "print signed long == (minus)" }
1725 timeout { fail "(timeout) print signed long == (minus)" }
1728 -re "$prompt $" { fail "print signed long == (minus)" }
1729 timeout { fail "(timeout) print signed long == (minus)" }
1732 -re "$prompt $" { fail "print signed long == (minus)" }
1733 timeout { fail "(timeout) print signed long == (minus)" }
1737 send "set variable v_long=-1\n"
1739 -re "set.*$prompt $" {
1740 send "print v_long != 0\n"
1742 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1743 send "print v_long != -1\n"
1745 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed long != (minus)" }
1746 -re "$prompt $" { fail "print signed long != (minus)" }
1747 timeout { fail "(timeout) print signed long != (minus)" }
1750 -re "$prompt $" { fail "print signed long != (minus)" }
1751 timeout { fail "(timeout) print signed long != (minus)" }
1754 -re "$prompt $" { fail "print signed long != (minus)" }
1755 timeout { fail "(timeout) print signed long != (minus)" }
1759 send "set variable v_long=-1\n"
1761 -re "set.*$prompt $" {
1762 send "print v_long < 0\n"
1764 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1765 send "print v_long < 0x7FFF\n"
1767 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed long < (minus)" }
1768 -re "$prompt $" { fail "print signed long < (minus)" }
1769 timeout { fail "(timeout) print signed long < (minus)" }
1772 -re "$prompt $" { fail "print signed long < (minus)" }
1773 timeout { fail "(timeout) print signed long < (minus)" }
1776 -re "$prompt $" { fail "print signed long < (minus)" }
1777 timeout { fail "(timeout) print signed long < (minus)" }
1781 send "set variable v_long=-1\n"
1783 -re "set.*$prompt $" {
1784 send "print v_long > 0\n"
1786 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1787 send "print v_long > 0x7FFF\n"
1789 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed long > (minus)" }
1790 -re "$prompt $" { fail "print signed long > (minus)" }
1791 timeout { fail "(timeout) print signed long > (minus)" }
1794 -re "$prompt $" { fail "print signed long > (minus)" }
1795 timeout { fail "(timeout) print signed long > (minus)" }
1798 -re "$prompt $" { fail "print signed long > (minus)" }
1799 timeout { fail "(timeout) print signed long > (minus)" }
1804 # test expressions with "signed long" types
1806 send "set variable v_signed_long=0x7FFF\n"
1808 -re "set.*$prompt $" {
1809 send "print v_signed_long == 0\n"
1811 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1812 send "print v_signed_long == 0x7FFF\n"
1814 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed long ==" }
1815 -re "$prompt $" { fail "print signed signed long ==" }
1816 timeout { fail "(timeout) print signed signed long ==" }
1819 -re "$prompt $" { fail "print signed signed long ==" }
1820 timeout { fail "(timeout) print signed signed long ==" }
1823 -re "$prompt $" { fail "print signed signed long ==" }
1824 timeout { fail "(timeout) print signed signed long ==" }
1828 send "set variable v_signed_long=0x7FFF\n"
1830 -re "set.*$prompt $" {
1831 send "print v_signed_long != 0\n"
1833 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1834 send "print v_signed_long != 0x7FFF\n"
1836 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed long !=" }
1837 -re "$prompt $" { fail "print signed signed long !=" }
1838 timeout { fail "(timeout) print signed signed long !=" }
1841 -re "$prompt $" { fail "print signed signed long !=" }
1842 timeout { fail "(timeout) print signed signed long !=" }
1845 -re "$prompt $" { fail "print signed signed long !=" }
1846 timeout { fail "(timeout) print signed signed long !=" }
1850 send "set variable v_signed_long=0x7FFF\n"
1852 -re "set.*$prompt $" {
1853 send "print v_signed_long < 0\n"
1855 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1856 send "print v_signed_long < 0x7FFF\n"
1858 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed long <" }
1859 -re "$prompt $" { fail "print signed signed long <" }
1860 timeout { fail "(timeout) print signed signed long <" }
1863 -re "$prompt $" { fail "print signed signed long <" }
1864 timeout { fail "(timeout) print signed signed long <" }
1867 -re "$prompt $" { fail "print signed signed long <" }
1868 timeout { fail "(timeout) print signed signed long <" }
1872 send "set variable v_signed_long=0x7FFF\n"
1874 -re "set.*$prompt $" {
1875 send "print v_signed_long > 0\n"
1877 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1878 send "print v_signed_long > 0x7FFF\n"
1880 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed long >" }
1881 -re "$prompt $" { fail "print signed signed long >" }
1882 timeout { fail "(timeout) print signed signed long >" }
1885 -re "$prompt $" { fail "print signed signed long >" }
1886 timeout { fail "(timeout) print signed signed long >" }
1889 -re "$prompt $" { fail "print signed signed long >" }
1890 timeout { fail "(timeout) print signed signed long >" }
1895 send "set variable v_signed_long=-1\n"
1897 -re "set.*$prompt $" {
1898 send "print v_signed_long == 0\n"
1900 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1901 send "print v_signed_long == -1\n"
1903 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed long == (minus)" }
1904 -re "$prompt $" { fail "print signed signed long == (minus)" }
1905 timeout { fail "(timeout) print signed signed long == (minus)" }
1908 -re "$prompt $" { fail "print signed signed long == (minus)" }
1909 timeout { fail "(timeout) print signed signed long == (minus)" }
1912 -re "$prompt $" { fail "print signed signed long == (minus)" }
1913 timeout { fail "(timeout) print signed signed long == (minus)" }
1917 send "set variable v_signed_long=-1\n"
1919 -re "set.*$prompt $" {
1920 send "print v_signed_long != 0\n"
1922 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1923 send "print v_signed_long != -1\n"
1925 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed long != (minus)" }
1926 -re "$prompt $" { fail "print signed signed long != (minus)" }
1927 timeout { fail "(timeout) print signed signed long != (minus)" }
1930 -re "$prompt $" { fail "print signed signed long != (minus)" }
1931 timeout { fail "(timeout) print signed signed long != (minus)" }
1934 -re "$prompt $" { fail "print signed signed long != (minus)" }
1935 timeout { fail "(timeout) print signed signed long != (minus)" }
1939 send "set variable v_signed_long=-1\n"
1941 -re "set.*$prompt $" {
1942 send "print v_signed_long < 0\n"
1944 -re "print.*.\[0-9\]* = 1.*$prompt $" {
1945 send "print v_signed_long < 0x7FFF\n"
1947 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print signed signed long < (minus)" }
1948 -re "$prompt $" { fail "print signed signed long < (minus)" }
1949 timeout { fail "(timeout) print signed signed long < (minus)" }
1952 -re "$prompt $" { fail "print signed signed long < (minus)" }
1953 timeout { fail "(timeout) print signed signed long < (minus)" }
1956 -re "$prompt $" { fail "print signed signed long < (minus)" }
1957 timeout { fail "(timeout) print signed signed long < (minus)" }
1961 send "set variable v_signed_long=-1\n"
1963 -re "set.*$prompt $" {
1964 send "print v_signed_long > 0\n"
1966 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1967 send "print v_signed_long > 0x7FFF\n"
1969 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print signed signed long > (minus)" }
1970 -re "$prompt $" { fail "print signed signed long > (minus)" }
1971 timeout { fail "(timeout) print signed signed long > (minus)" }
1974 -re "$prompt $" { fail "print signed signed long > (minus)" }
1975 timeout { fail "(timeout) print signed signed long > (minus)" }
1978 -re "$prompt $" { fail "print signed signed long > (minus)" }
1979 timeout { fail "(timeout) print signed signed long > (minus)" }
1984 # test expressions with "unsigned long" types
1986 send "set variable v_unsigned_long=0x7FFF\n"
1988 -re "set.*$prompt $" {
1989 send "print v_unsigned_long == 0\n"
1991 -re "print.*.\[0-9\]* = 0.*$prompt $" {
1992 send "print v_unsigned_long == 0x7FFF\n"
1994 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned long ==" }
1995 -re "$prompt $" { fail "print unsigned long ==" }
1996 timeout { fail "(timeout) print unsigned long ==" }
1999 -re "$prompt $" { fail "print unsigned long ==" }
2000 timeout { fail "(timeout) print unsigned long ==" }
2003 -re "$prompt $" { fail "print unsigned long ==" }
2004 timeout { fail "(timeout) print unsigned long ==" }
2008 send "set variable v_unsigned_long=0x7FFF\n"
2010 -re "set.*$prompt $" {
2011 send "print v_unsigned_long != 0\n"
2013 -re "print.*.\[0-9\]* = 1.*$prompt $" {
2014 send "print v_unsigned_long != 0x7FFF\n"
2016 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned long !=" }
2017 -re "$prompt $" { fail "print unsigned long !=" }
2018 timeout { fail "(timeout) print unsigned long !=" }
2021 -re "$prompt $" { fail "print unsigned long !=" }
2022 timeout { fail "(timeout) print unsigned long !=" }
2025 -re "$prompt $" { fail "print unsigned long !=" }
2026 timeout { fail "(timeout) print unsigned long !=" }
2030 send "set variable v_unsigned_long=0x7FFF\n"
2032 -re "set.*$prompt $" {
2033 send "print v_unsigned_long < 0\n"
2035 -re "print.*.\[0-9\]* = 0.*$prompt $" {
2036 send "print v_unsigned_long < 0x7FFF\n"
2038 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned long <" }
2039 -re "$prompt $" { fail "print unsigned long <" }
2040 timeout { fail "(timeout) print unsigned long <" }
2043 -re "$prompt $" { fail "print unsigned long <" }
2044 timeout { fail "(timeout) print unsigned long <" }
2047 -re "$prompt $" { fail "print unsigned long <" }
2048 timeout { fail "(timeout) print unsigned long <" }
2052 send "set variable v_unsigned_long=0x7FFF\n"
2054 -re "set.*$prompt $" {
2055 send "print v_unsigned_long > 0\n"
2057 -re "print.*.\[0-9\]* = 1.*$prompt $" {
2058 send "print v_unsigned_long > 0x7FFF\n"
2060 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned long >" }
2061 -re "$prompt $" { fail "print unsigned long >" }
2062 timeout { fail "(timeout) print unsigned long >" }
2065 -re "$prompt $" { fail "print unsigned long >" }
2066 timeout { fail "(timeout) print unsigned long >" }
2069 -re "$prompt $" { fail "print unsigned long >" }
2070 timeout { fail "(timeout) print unsigned long >" }
2075 send "set variable v_unsigned_long=~0\n"
2077 -re "set.*$prompt $" {
2078 send "print v_unsigned_long == 0\n"
2080 -re "print.*.\[0-9\]* = 0.*$prompt $" {
2081 send "print v_unsigned_long == ~0\n"
2083 -re "print.*.\[0-9\]* = 1.*$prompt $" {
2084 send "print v_unsigned_long == (unsigned long)~0\n"
2086 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned long == (~0)" }
2087 -re "$prompt $" { fail "print unsigned long == (~0)" }
2088 timeout { fail "(timeout) print unsigned long == (~0)" }
2091 -re "$prompt $" { fail "print unsigned long == (~0)" }
2092 timeout { fail "(timeout) print unsigned long == (~0)" }
2095 -re "$prompt $" { fail "print unsigned long == (~0)" }
2096 timeout { fail "(timeout) print unsigned long == (~0)" }
2099 -re "$prompt $" { fail "print unsigned long == (~0)" }
2100 timeout { fail "(timeout) print unsigned long == (~0)" }
2104 send "set variable v_unsigned_long=~0\n"
2106 -re "set.*$prompt $" {
2107 send "print v_unsigned_long != 0\n"
2109 -re "print.*.\[0-9\]* = 1.*$prompt $" {
2110 send "print v_unsigned_long != (unsigned long)~0\n"
2112 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned long != (~0)" }
2113 -re "$prompt $" { fail "print unsigned long != (~0)" }
2114 timeout { fail "(timeout) print unsigned long != (~0)" }
2117 -re "$prompt $" { fail "print unsigned long != (~0)" }
2118 timeout { fail "(timeout) print unsigned long != (~0)" }
2121 -re "$prompt $" { fail "print unsigned long != (~0)" }
2122 timeout { fail "(timeout) print unsigned long != (~0)" }
2126 send "set variable v_unsigned_long=~0\n"
2128 -re "set.*$prompt $" {
2129 send "print v_unsigned_long < 0\n"
2131 -re "print.*.\[0-9\]* = 0.*$prompt $" {
2132 send "print v_unsigned_long < 0x7FFF\n"
2134 -re "print.*.\[0-9\]* = 0.*$prompt $" { pass "print unsigned long < (~0)" }
2135 -re "$prompt $" { fail "print unsigned long < (~0)" }
2136 timeout { fail "(timeout) print unsigned long < (~0)" }
2139 -re "$prompt $" { fail "print unsigned long < (~0)" }
2140 timeout { fail "(timeout) print unsigned long < (~0)" }
2143 -re "$prompt $" { fail "print unsigned long < (~0)" }
2144 timeout { fail "(timeout) print unsigned long < (~0)" }
2148 send "set variable v_unsigned_long=~0\n"
2150 -re "set.*$prompt $" {
2151 send "print v_unsigned_long > 0\n"
2153 -re "print.*.\[0-9\]* = 1.*$prompt $" {
2154 send "print v_unsigned_long > 0x7FFF\n"
2156 -re "print.*.\[0-9\]* = 1.*$prompt $" { pass "print unsigned long > (~0)" }
2157 -re "$prompt $" { fail "print unsigned long > (~0)" }
2158 timeout { fail "(timeout) print unsigned long > (~0)" }
2161 -re "$prompt $" { fail "print unsigned long > (~0)" }
2162 timeout { fail "(timeout) print unsigned long > (~0)" }
2165 -re "$prompt $" { fail "print unsigned long > (~0)" }
2166 timeout { fail "(timeout) print unsigned long > (~0)" }
2169 if [istarget "a29k-*-udi"] then {
2170 # FIXME: If PR 2415 is fixed, this is not needed.