public inbox for java-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jie Liu <lj8175@gmail.com>
To: java-patches@gcc.gnu.org
Subject: Re: libjava patches for RTEMS
Date: Fri, 08 Jul 2011 11:11:00 -0000	[thread overview]
Message-ID: <CABc96T_UqZxYmMd-SjzCHLYz4fC69F9bf_Fze=PPHTshsRfk8Q@mail.gmail.com> (raw)
In-Reply-To: <4E1378D1.5030705@redhat.com>

Hi,
The libjava.sum[1] and libjava.log[2] generated when running libjava
testsuite can be seen on:
[1] http://rtemsgcj.googlecode.com/svn/trunk/gcjtest/testsuite_out/libjava.sum
[2] http://rtemsgcj.googlecode.com/svn/trunk/gcjtest/testsuite_out/libjava.log

Because of the testsuite is running on qemu, 2 failures are caused by
RTEMS hanging when starting on qemu. These two (PR12915.java and
Thread_Join.java) is PASS when I test it manually.
FAIL												After
FAIL: PR12915 execution - source compiled test				PASS
FAIL: Thread_Join -O3 execution - source compiled test		PASS

Almost every case has [compilation|execution|output] x [
|-findirect-dispatch|-O3|-O3 -findirect-dispatch] = 12 results. 6
failures are just one  FAIL of twelve results. The six are:
FAIL																	After
FAIL: PR12656 -findirect-dispatch execution - source compiled test					PASS
FAIL: PR141 -findirect-dispatch execution - source compiled test						PASS
FAIL: PR35020 execution - source compiled test									PASS
FAIL: PR5057 -O3 -findirect-dispatch execution - source compiled test					PASS
FAIL: PR56 -O3 execution - source compiled test									PASS
FAIL: err14 execution - source compiled test									PASS
These six is PASS when I compile them and run them again. In the
manual test, qemu is hanging once without any output(If it is hanging
when RTEMS is starting, there is some output). So, that may be the
same for why it’s FAIL when test automatically.

Many cases are failed in output or execution with all [
|-findirect-dispatch|-O3|-O3 -findirect-dispatch]. There are 20 cases
of this kind of situation and result in 80 failures. I tested it
manually to find why it is FAIL(The manual test in this section with
neither -O3 nor -findirect-dispatch).
FAIL																				After
FAIL: EvaluationOrder output - source compiled test (x4)										PASS
FAIL: LargeFile execution - source compiled test (x4)											PASS
after Modify
FAIL: PR18699 execution - source compiled test (x4)											FALL
FAIL: PR27908 execution - source compiled test (x4)											PASS after Modify
FAIL: Process_1 execution - source compiled test (x4)											UnSupport
FAIL: Process_2 execution - source compiled test (x4)											UnSupport
FAIL: Process_3 execution - source compiled test (x4)											UnSupport
FAIL: Process_4 execution - source compiled test (x4)											UnSupport
FAIL: Process_5 execution - source compiled test (x4)											UnSupport
FAIL: Process_6 execution - source compiled test (x4)											UnSupport
FAIL: Process_7 output - source compiled test (x4)											UnSupport
FAIL: TLtest execution - source compiled test (x4)											FAIL
FAIL: Thread_Alive execution - source compiled test (x4)										PASS
FAIL: Thread_Interrupt output - source compiled test (x4)										FAIL
FAIL: Thread_Sleep output - source compiled test (x4)											PASS
FAIL: Thread_Sleep_2 output - source compiled test (x4)										FAIL
FAIL: Thread_Wait execution - source compiled test (x4)										PASS
FAIL: Thread_Wait_2 execution - source compiled test (x4)										PASS
FAIL: Throw_2 output - source compiled test (x4)												FAIL
FAIL: pr133 output - source compiled test (x4)												PASS
1 EvaluationOrder output failures is caused by I add one more element
for argv[] in the RTEMS system wrap file. The failures are PASS when I
remove the element.
2 LargeFile.java attempts to write “OK” at a new file’s 2G position
and read it out, RTEMS is using memory file system, so the failures
are in forecast. It is PASS when I use a small position number, e.g.
32.
3 PR18699.java is hanging in PR18699.notifyObservers(…), And I have
not find the reason.
4 Process_1 to Process_7, RTEMS does not support dynamically loading
program and run it, such as “sed -e s/Hello/Goodbye/ Hello World”, so
the Process class is not supported on RTEMS.
5 PR27908.java is related to scheduling policy of RTEMS, now it can be
PASS with modifying source code, I will pay more attention to this
case and try to make it pass without any modifying.
6TList.java is hanging when call ThreadLocal.set() or ThreadLocal.get().
7 Thread_Alive.java, Thread_Sleep.java, Thread_Wait, Thread_Wait_2 can
get through when I reconfigured libjava with HAVE_GETTIMEOFDAY and
RTEMS with CONFIGURE_MICROSECONDS_PER_TICK(1000).
8 Thread_Interrupt.java failure result is “Busy wait was not
interrupted”. This may be the problem in RTEMS.
9 Thread_Sleep_2.java: System.nanoTime() is a little less than required.
10 Throw_2.java: Double.parseDouble(null) does not throw NullPointerException.
11 pr133.java is failure before is caused by I send a second argv to
Java, It is PASS when I removed the argv in system wrap file.

FAIL 										After
libjava.jar/TestClosureGC output					PASS
libjava.jar/simple output						PASS
libjava.loader/TestMultiple						UnSupport
libjava.loader/TestParent						UnSupport
libjava.lang/bclink (x2)							FAIL
1TestClosure.java and simple.java is PASS when I test them manually.
2TestMultiple.java and TestParent.java: RTEMS is not support
dynamically loading while they are called “loadClass ("dummy")”.
3 bclink.java : When compiled this with -findirect-dispatch, it will
throw NoClassDefFoundError Exception.

So the actual failures are 27 caused by 6 source file. I will pay more
attentions to this 6 file and make the patch for libjava.
How to mark those unsupported cases as expected failures on *-*-rtems* ?

Best Regards,
Jie


2011/7/6 Andrew Haley <aph@redhat.com>:
> On 05/07/11 17:35, Bryce McKinlay wrote:
>> On Tue, Jul 5, 2011 at 3:14 PM, Andrew Haley <aph@redhat.com> wrote:
>>
>>>> As the testsuite result is good enough, I think it's time to  get the
>>>> patch reviewed and merged into gcc. The patch is attached. :)
>>>
>>> Ah, 94 failures?
>
> Perhaps, but it would be interesting to know why there are so many
> failures, and what they are.  If this is the first stage of a work
> in progress, that's fine, but I hope that some of these will be fixed.
>
> Andrew.
>
>

      reply	other threads:[~2011-07-08 11:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-05  0:14 Jie Liu
2011-07-05 14:14 ` Andrew Haley
2011-07-05 16:36   ` Bryce McKinlay
2011-07-05 20:49     ` Andrew Haley
2011-07-08 11:11       ` Jie Liu [this message]

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='CABc96T_UqZxYmMd-SjzCHLYz4fC69F9bf_Fze=PPHTshsRfk8Q@mail.gmail.com' \
    --to=lj8175@gmail.com \
    --cc=java-patches@gcc.gnu.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).