Call Sites Extracted from emails from Paolo Molaro There are 3 basic different kinds of call sites: 1) normal calls: call relative_displacement 2) virtual calls: call *positive_offset(%register) 3) interface calls: mov constant, %imt_register call *negative_offset(%register) The above is what happens on x86 and amd64, with different values of %imt_register for each arch (this register is a constant, but it could change with different mono builds, it should be likely one of constants the runtime comunicates to the debugger). %register can change depending on the callsite based on the register allocator choices. Note that the constant for the interface calls won't necessarily be a MonoMethod address: this could change in the future to a simple number. In all the 3 cases the JIT trampolines will need to inspect the call site, but only in the first case the call site will be changed.