]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gdb/testsuite/ gdb-csl-sourcerygxx-4_1-9
authorNathan Sidwell <nathan@codesourcery.com>
Tue, 13 Jun 2006 13:09:18 +0000 (13:09 +0000)
committerNathan Sidwell <nathan@codesourcery.com>
Tue, 13 Jun 2006 13:09:18 +0000 (13:09 +0000)
* lib/gdb.exp (gdb_load_cmd): New.

ChangeLog.csl
gdb/testsuite/lib/gdb.exp

index 304577d2b97fdc26b02de5d4e0d0ba24b7afbfd0..0faebe81d6a0f7a46c4ac61fdea7ffef15b465b2 100644 (file)
@@ -1,3 +1,8 @@
+2006-06-13  Nathan Sidwell  <nathan@codesourcery.com>
+
+       gdb/testsuite/
+       * lib/gdb.exp (gdb_load_cmd): New.
+
 2006-06-12  Nathan Sidwell  <nathan@codesourcery.com>
 
        gdb/
index 4bb4b0577891f853ce1b33ff4addd213c5c8acdb..eca2a50466628ec29b53b3d9bf06b976553601e8 100644 (file)
@@ -1866,6 +1866,50 @@ proc gdb_exit { } {
     catch default_gdb_exit
 }
 
+#
+# gdb_load_cmd -- load a file into the debugger.
+#                ARGS - additional args to load command.
+#                 return a -1 if anything goes wrong.
+#
+proc gdb_load_cmd { args } {
+    global gdb_prompt
+
+    if [target_info exists gdb_load_timeout] {
+       set loadtimeout [target_info gdb_load_timeout]
+    } else {
+       set loadtimeout 1600
+    }
+    send_gdb "load $args\n"
+    verbose "Timeout is now $timeout seconds" 2
+    gdb_expect $loadtimeout {
+       -re "Loading section\[^\r\]*\r\n" {
+           exp_continue
+       }
+       -re "Start address\[\r\]*\r\n" {
+           exp_continue
+       }
+       -re "Transfer rate\[\r\]*\r\n" {
+           exp_continue
+       }
+       -re "Memory access error\[^\r\]*\r\n" {
+           perror "Failed to load program"
+           return -1
+       }
+       -re "$gdb_prompt $" {
+           return 0
+       }
+       -re "(.*)\r\n$gdb_prompt " {
+           perror "Unexpected reponse from 'load' -- $expect_out(1,string)"
+           return -1
+       }
+       timeout {
+           perror "Timed out trying to load $arg."
+           return -1
+       }
+    }
+    return -1
+}
+
 #
 # gdb_load -- load a file into the debugger.
 # Many files in config/*.exp override this procedure.