[Mono-list] Remaining S/390 JIT issues

Varga Zoltan vargaz@freemail.hu
Wed, 14 Jul 2004 13:28:32 +0200 (CEST)


                                          Hi,

   I know nothing about S390, but maybe this stuff can be
handled
by adding more arch specific macros/functions, like 
MONO_ARCH_IP_IN_CLAUSE(ctx,clause).

                   Zoltan

-----Original Message-----
From: mono-list-admin@lists.ximian.com
[mailto:mono-list-admin@lists.ximian.com]On Behalf Of ext 
Sent: Tuesday, July 13, 2004 7:47 PM
To: mono-list@ximian.com
Subject: RE: [Mono-list] Remaining S/390 JIT issues


There's a couple of idiosycracies with S390. For example, in
the exception8 test:

using System;

public class TryTest {
        public static void ThrowException() {
                throw new Exception();
        }

        public static int Main() {
                int state = 0;

                try {
                        ThrowException();
                        try {
                                Console.WriteLine("In try
block");
                        } catch (Exception e) {
                                state = 1;
                               
Console.WriteLine("------------------------");
                                Console.WriteLine(e);
                               
Console.WriteLine("------------------------");
                        }
                } catch {
                        state = 2;
                }

                if (state != 2)
                        return 1;

                Console.WriteLine("OK");
                return 0;
        }
}

The result of the ThrowException() is that the IP is
pointing at the first instruction of the "try {
Console.WriteLine ("In try Block");" block so that the test
in mono_handle_exception()

if (ei->try_start <= MONO_CONTEXT_GET_IP (ctx) &&

would result in the wrong catch being used to field the
exception.


-----Original Message-----
                     Hi,

  Great work ! You might want to try modifying the S390 port
to use the
arch-independent exception handling