Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@mvista.com>
To: gdb-patches@sources.redhat.com, fnasser@redhat.com
Subject: [RFA/testsuite] Tweak gdb.java/jmisc.java to pass on PowerPC
Date: Mon, 01 Apr 2002 13:55:00 -0000	[thread overview]
Message-ID: <20020401165524.A11531@nevyn.them.org> (raw)

At the current time, GCJ emits a call to _Jv_InitClass in the prologue of
jmisc.main.  That's right, a function call in the prologue.  What this means
to us is that if an argument does not have a second home in the function,
and it is passed in a register, we'll never be able to print it inside the
function.  It will be clobbered by the time we stop outside of the prologue. 
The only reason the test passed on i386 was because the incoming argument
was actually located on the stack (and thus survived the function call).

[this is especially nasty because failing to print a Java array makes GDB
very sad.  It loops for hours, walking up the stack (very slowly because of
thread_db).  We then kill gdb, which may or may not kill jmisc, so the
testsuite tends to leave zombies lying around.]

This patch adds a use of the argument after the prologue, so that it will
still be available to print.  OK to commit?

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer

2002-04-01  Daniel Jacobowitz  <drow@mvista.com>

	* gdb.java/jmisc.java: Add ``void foo (int len)''.  Call it.
	* gdb.java/jmisc.exp (ptype jmisc): Update to match.

Index: gdb.java/jmisc.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.java/jmisc.exp,v
retrieving revision 1.2
diff -u -p -r1.2 jmisc.exp
--- jmisc.exp	2001/03/06 08:21:58	1.2
+++ jmisc.exp	2002/04/01 21:45:07
@@ -70,7 +70,7 @@ if ![set_lang_java] then {
 
     send_gdb "ptype jmisc\n"   
     gdb_expect {   
-	-re "type = class jmisc  extends java.lang.Object \{\[\r\n\ \t]+void main\\(java\.lang\.String\\\[]\\);\[\r\n\ \t]+void <init>\\(void\\);\[\r\n\ \t]+\}\[\r\n\ \t]+$gdb_prompt $"               { pass "ptype jmisc" }
+	-re "type = class jmisc  extends java.lang.Object \{\[\r\n\ \t\]+void foo\\(int\\);\[\r\n\ \t\]+void main\\(java\.lang\.String\\\[]\\);\[\r\n\ \t]+jmisc\\(\\);\[\r\n\ \t]+\}\[\r\n\ \t]+$gdb_prompt $"               { pass "ptype jmisc" }
 	-re ".*$gdb_prompt $"             { fail "ptype jmisc" }
 	timeout { fail "ptype jmisc (timeout)" ; return }
     }
Index: gdb.java/jmisc.java
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.java/jmisc.java,v
retrieving revision 1.1
diff -u -p -r1.1 jmisc.java
--- jmisc.java	2000/07/24 04:34:52	1.1
+++ jmisc.java	2002/04/01 21:45:07
@@ -1,7 +1,12 @@
 public class jmisc
 {
+  public static void foo (int len)
+  {
+    return;
+  }
   public static void main (String[] args)
   {
+    foo (args.length);
     return;
   }
 }


             reply	other threads:[~2002-04-01 21:55 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-01 13:55 Daniel Jacobowitz [this message]
2002-04-01 15:19 ` Fernando Nasser
2002-04-01 19:43 Michael Elizabeth Chastain
2002-04-01 19:49 ` Daniel Jacobowitz
2002-04-01 20:01 Michael Elizabeth Chastain
2002-04-01 20:48 ` Daniel Jacobowitz
2002-04-01 23:08   ` Daniel Jacobowitz
2002-04-02  8:24 Michael Elizabeth Chastain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020401165524.A11531@nevyn.them.org \
    --to=drow@mvista.com \
    --cc=fnasser@redhat.com \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox