OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-7.1/] [gdb/] [testsuite/] [gdb.mi/] [mi2-console.exp] - Blame information for rev 227

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 227 jeremybenn
# Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2008, 2009, 2010
2
# Free Software Foundation, Inc.
3
 
4
# This program is free software; you can redistribute it and/or modify
5
# it under the terms of the GNU General Public License as published by
6
# the Free Software Foundation; either version 3 of the License, or
7
# (at your option) any later version.
8
#
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
# GNU General Public License for more details.
13
#
14
# You should have received a copy of the GNU General Public License
15
# along with this program.  If not, see .
16
 
17
#
18
# Test essential Machine interface (MI) operations
19
#
20
# Verify that, using the MI, we can run a simple program and perform basic
21
# debugging activities like: insert breakpoints, run the program,
22
# step, next, continue until it ends and, last but not least, quit.
23
#
24
# The goal is not to test gdb functionality, which is done by other tests,
25
# but to verify the correct output response to MI operations.
26
#
27
 
28
# This test only works when talking to a target that routes its output
29
# through GDB.  Check that we're either talking to a simulator or a
30
# remote target.
31
 
32
load_lib mi-support.exp
33
set MIFLAGS "-i=mi2"
34
 
35
gdb_exit
36
if [mi_gdb_start] {
37
    continue
38
}
39
 
40
set testfile "mi-console"
41
set srcfile ${testfile}.c
42
set binfile ${objdir}/${subdir}/${testfile}
43
if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-DFAKEARGV}] != "" } {
44
     untested mi2-console.exp
45
     return -1
46
}
47
 
48
mi_run_to_main
49
 
50
# Next over the hello() call which will produce lots of output
51
send_gdb "220-exec-next\n"
52
gdb_expect {
53
    -re "220\\^running\r\n(\\*running,thread-id=\"all\"\r\n)?$mi_gdb_prompt" {
54
        pass "Started step over hello"
55
    }
56
    timeout {
57
        fail "Started step over hello (timeout)"
58
    }
59
}
60
 
61
if { ![target_info exists gdb,noinferiorio] } {
62
    gdb_expect {
63
        -re "@\"H\"\r\n.*@\"e\"\r\n.*@\"l\"\r\n.*@\"l\"\r\n.*@\"o\"\r\n.*@\" \"\r\n.*@\"\\\\\\\\\"\r\n.*@\"\\\\\"\"\r\n.*@\"!\"\r\n.*@\"\\\\r\"\r\n.*@\"\\\\n\"\r\n" {
64
            pass "Hello message"
65
        }
66
        -re "Hello" {
67
 
68
            # Probably a native system where GDB doesn't have direct #
69
            # control over the inferior console.  # For this to work,
70
            # GDB would need to run the inferior process # under a PTY
71
            # and then use the even-loops ability to wait on #
72
            # multiple event sources to channel the output back
73
            # through the # MI.
74
 
75
            kfail "gdb/623" "Hello message"
76
        }
77
        timeout {
78
            fail "Hello message (timeout)"
79
        }
80
    }
81
}
82
 
83
mi_expect_stop "end-stepping-range" "main" "" ".*mi-console.c" "14" "" \
84
    "finished step over hello"
85
 
86
mi_gdb_exit
87
return 0

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.