Re: IKVM & PNET
Gomi Kapoor <gomikapoor-/[email protected]>
| Newsgroups | gmane.comp.gnu.dotgnu.developer |
|---|---|
| Message-ID | <[email protected]> |
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/