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

Jim Deville jdeville at microsoft.com
Fri Feb 27 12:59:32 EST 2009


I have just pushed the latest.

JD

> -----Original Message-----
> From: Tomas Matousek
> Sent: Friday, February 27, 2009 9:40 AM
> To: Jim Deville; ironruby-core at rubyforge.org
> Subject: RE: [Ironruby-core] Regression ? "Invalid IL code in (wrapper
> dynamic-method)"
> 
> Jim, could you push the latest sources to GIT?
> Jb, could you try again using the latest source code (after Jim pushes
> it) and if it fails send me please full stack trace and complete IL of
> the offending method?
> 
> Thanks,
> Tomas
> 
> -----Original Message-----
> From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-
> bounces at rubyforge.org] On Behalf Of Jb Evain
> Sent: Friday, February 27, 2009 12:09 AM
> To: ironruby-core at rubyforge.org
> Subject: Re: [Ironruby-core] Regression ? "Invalid IL code in (wrapper
> dynamic-method)"
> 
> 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



More information about the Ironruby-core mailing list