[Mono-dev] Building Mono on Linux/Alpha

Zoltan Varga vargaz at gmail.com
Fri Jun 30 06:10:00 EDT 2006


                                       Hi,

  You need to implement LMF support for handling exceptions thrown from
unmanaged code. As for posting your code, the sooner the better :).

                     Zoltan

On 6/30/06, Sergey Tikhonov <tsv at solvo.ru> wrote:
> Zoltan Varga wrote:
>
> >                                                Hi,
> >
> >  Exception support requires implementing:
> > - the opcodes like throw, start_handler, endfinally
> > - the functions in exceptions-<ARCH>.c
> > - mono_arch_emit_exceptions ().
> >
> > As usual, the best documentation is the code of the other backends,
> > but there
> > is some documentation in mono/docs/exception-handling.txt. I suggest
> > going throu the tests in exceptions.cs in the order they are in the
> > file, and
> > trying to implement the support needed by them. LMF handling can be done
> > at a later stage since it is only needed by some later tests.
>
> Hello Zoltan,
>
> I did some progress on exception implemetation. Now it can throw and
> catch them. I got stuck with finding
> of correct exception handler if an exception is thrown in unmanaged
> code. In my case the exception is thrown
> by mono_fconv_ovf_u8 and my current implementation of
> mono_arch_find_jit_info can't find "ji" info for it
> (mono_jit_info_table_find return NULL for it). AMD64 version of
> mono_arch_find_jit_info expects LMF
> info for such methods. Do I have to implement LMF support or have to try
> to find previous frame by analizing stack?
> Finding of exception handlers for managed code seems to be working.
>
> Thank you,
>
> PS. At what point I should ask to apply my changes to the main
> repository? Of cause it is not complete, but there is
> possibility that someone else would be interested to help and there is a
> base to start with.
>
> --
> Sergey Tikhonov
>
> Solvo Ltd.
> Saint-Petersburg, Russia
> tsv at solvo.ru
>
>



More information about the Mono-devel-list mailing list