Hello,

First of all, excuse my poor english. I hope I could write clear enough in
order to anybody could understand me.

I'm a Spanish Rotor researcher and I'm currently studying how the Jitter
generates native code, and particularly how does it behave when some some
things are manually changed into the IL. In all the tests I'm currently
performing, I wasn't able to find how the Jitter detects (if it can)
something like this:

If I have a class A, whith a field called "field2" whose type is int16
(short), then I expect to find the following IL:

ldfld int16 A::field2

But what if I change this instruction to?

ldfld float32 A::field2

I'm not very sure if the Jitter is able to find that a incorrect type was
specified, because I need to be able to obtain the type that was declared
into the code (float32) rather than the one contained into the metadata
(int16). I explored the code that is triggered in this instruction and I
think I found that when the metasig of both types (the coded one and the one
wich resides in the field2 metadata) are compared, the difference between
them appears, because a comparison between 6 (CorInfoType of short) and 12
(CorInfoType of float) is performed just before giving an error.

Any idea of how can I ask the jitter for that part of the changed ldfld
instruction? I wasn't able to follow how the jitter obtain both types...

Any help will be appreciated, thanks in advance,

J. Redondo

===================================
This list is hosted by DevelopMentorŪ  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to