OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gdb/] [gdb-6.8/] [gdb/] [testsuite/] [gdb.arch/] [gdb1291.exp] - Blame information for rev 25

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 25 jlechner
# Copyright 2003, 2007, 2008 Free Software Foundation, Inc.
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
5
# the Free Software Foundation; either version 3 of the License, or
6
# (at your option) any later version.
7
#
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.
12
#
13
# You should have received a copy of the GNU General Public License
14
# along with this program.  If not, see .
15
 
16
# Please email any bugs, comments, and/or additions to this file to:
17
# bug-gdb@gnu.org
18
 
19
# This file is part of the gdb testsuite.
20
 
21
# Tests for PR:1291.  Ensure that backtrace works properly for stack
22
# frames greater than 256 bytes.
23
 
24
if $tracelevel {
25
    strace $tracelevel
26
}
27
 
28
# Test SH backtraces with >256 byte frame stack. (PR:1291)
29
 
30
set prms_id 0
31
set bug_id 0
32
 
33
if ![istarget "sh-*-*"] then {
34
    verbose "Skipping SH backtrace tests."
35
    return
36
}
37
 
38
set testfile "gdb1291"
39
set srcfile ${testfile}.s
40
set binfile ${objdir}/${subdir}/${testfile}
41
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable ""] != "" } {
42
    untested gdb1291.exp
43
    return -1
44
}
45
 
46
gdb_exit
47
gdb_start
48
gdb_reinitialize_dir $srcdir/$subdir
49
gdb_load ${binfile}
50
 
51
#
52
# Run to `main' where we begin our tests.
53
#
54
 
55
if ![runto_main] then {
56
    gdb_suppress_tests
57
}
58
 
59
gdb_test "b sub1" "Breakpoint 2.*" "set breakpoint"
60
gdb_test "c" "Breakpoint 2.* sub1 .*" "get to sub1"
61
 
62
send_gdb "bt\n"
63
gdb_expect {
64
    -re "#0.* sub1 .*\r\n#1\[ \t\]*$hex in main \\(\\).*\r\n$gdb_prompt $" {
65
        pass "backtrace with local variable less than or equal to 256 bytes"
66
    }
67
    -re ".*$gdb_prompt $" {
68
        fail "backtrace with local variable less than or equal to 256 bytes"
69
    }
70
    timeout {
71
        fail "backtrace with local variable less than or equal to 256 bytes (timeout)"
72
    }
73
}
74
 
75
gdb_test "b sub2" "Breakpoint 3.*" "set breakpoint"
76
gdb_test "c" "Breakpoint 3.* sub2 .*" "get to sub2"
77
 
78
send_gdb "bt\n"
79
gdb_expect {
80
    -re "#0.* sub2 .*\r\n#1\[ \t\]*$hex in main \\(\\).*\r\n$gdb_prompt $" {
81
        pass "backtrace with local variable larger than 256 bytes"
82
    }
83
    -re "#0.* sub2 .*\r\n#1  0x00000000 in \\?\\? \\(\\).*\r\n$gdb_prompt $" {
84
        kfail "gdb/1291" "backtrace with local variable larger than 256 bytes"
85
    }
86
    -re ".*$gdb_prompt $" {
87
        fail "backtrace with local variable larger than 256 bytes"
88
    }
89
    timeout {
90
        fail "backtrace with local variable larger than 256 bytes (timeout)"
91
    }
92
}

powered by: WebSVN 2.1.0

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