It isn't relevant to this problem but is there a reference or a good book
for IL generation?
Or some links?


On Fri, Feb 27, 2009 at 9:08 AM, Jb Evain <[email protected]> wrote:

> Hey Jim,
>
> On 2/27/09, Jim Deville <[email protected]> wrote:
> > Can anyone confirm if this is only a Mono problem? Also, what platform
> x86
> > or x64 (doubt it makes a difference, but I want to be certain)? I can’t
> > repro on .NET.
>
> Let say it's a shared problem :)
>
> The issue comes from our verifier, which, well, verifies the whole
> method body. It's shocking on a dynamic method which looks like:
>
> ldc.i4.1
> brfalse target
> ldarg.3
> call foo
> ret
> pop
>
> target:
>
> ldarg.1
> call bar
> bla bla bla
> ...
>
> The issue is the pop, in between the ret and the jump target. .net's
> JIT will optimize it away, and not even verify it, as it will never be
> executed.
>
> But our verifier, well, verifies the whole method body, hence the
> InvalidProgramException.
>
> We've had this issue already with some obfuscators injecting plain non
> sense, so I guess at some point we'll fix it on our side. It would be
> nice if IronRuby could emit nice and verifiable code though.
>
> --
> Jb Evain  <[email protected]>
>  _______________________________________________
> Ironruby-core mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
_______________________________________________
Ironruby-core mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/ironruby-core

Reply via email to