[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]IKVM & PNET
From: |
Gomi Kapoor |
Subject: |
Re: [DotGNU]IKVM & PNET |
Date: |
Thu, 22 Apr 2004 17:32:12 +0100 (BST) |
Hi Mark,
> Having looked at the PNET line causing the
> exception, it appears as
> though during the IL verification process,attempts
> to validate the
> target stack for code offsets that are jump
> targets
> fail. So then, is there any advice about what
> might
> be causing this, or where I could read up on the
> PNET > verification process?
The verification is done is verify_*.c files in the
engine directory. The main file being verify.c
And the method which actually starts (or does) the
verification (with interleaved calls to the coder)
is _ILVerify (line 612).
The verification happens in 3 passes over the CIL
code:
In the first pass, the jump targets are identified.
In the second pass, all the jump targets which are
determined in the first pass are verified, whether
they are the instruction starts.
The third pass looks at each and every instruction
and does the required corresponding verification as
per the ECMA specifications (For example, in
verify_arith.c you could see a type inference table,
which is exactly "similar" to what is given in the
specifications). This is a huge switch case loop,
which is split across the verify_* files. (you might
want to look at mail which I ent sometime back of
how to split a switc-case loop across files).
Rhys:
Please correct me if I have got something wrong
here.
Regards,
Gomi Kapoor
________________________________________________________________________
Yahoo! India Matrimony: Find your partner online.
http://yahoo.shaadi.com/india-matrimony/