all groups > dotnet clr > july 2007 >
You're in the

dotnet clr

group:

converting MSIL to Native code



converting MSIL to Native code Artralarasu
7/25/2007 6:26:01 AM
dotnet clr: while performing JIT compialtion, The MSIL code will be converted to native
code but how the native code will modify the assembly?

is that exe/dll size will be increased while converting the MSIl code to
native code?

could anyone clarify this.

Re: converting MSIL to Native code Phill W.
7/25/2007 4:49:58 PM
[quoted text, click to view]

Not at all.

[quoted text, click to view]

The assembly is /not/ overwritten.

The methods are loaded and linked to native code and then executed /in
memory/. Nothing is written back to disk, unless you use ngen, which
writes out a /separate/ file containing all the native code.

HTH,
Re: converting MSIL to Native code Artralarasu
7/25/2007 10:36:00 PM


[quoted text, click to view]
Phill Thank you.

Is that mean JIT will perform validation and verification of MSIL.How the
JIT make sure that the particular method is already executed or not ?

because the the JIT compilation is performed only once for a particular
method and it wont be repeated.

Re: converting MSIL to Native code Phill W.
7/26/2007 11:51:48 AM
[quoted text, click to view]

It's all part and parcel of the JIT loader. Assemblies are loaded and
linked method-by-method so, presumably, the framework keeps track of the
ones it's loaded so far.

And yes, the optimisation occurs only once; if conditions on the machine
change radically while the process is running, the method may have been
linked in a non-optimal way.

HTH,
AddThis Social Bookmark Button