[Ironruby-core] Regression ? "Invalid IL code in (wrapper dynamic-method)"

Ivan Porto Carrero ivan at flanders.co.nz
Fri Feb 27 03:42:33 EST 2009


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 <jb at nurv.fr> wrote:

> Hey Jim,
>
> On 2/27/09, Jim Deville <jdeville at microsoft.com> 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  <jb at nurv.fr>
>  _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20090227/6bc417fc/attachment.html>


More information about the Ironruby-core mailing list