[Mono-dev] Ping on nternal call builders

Zoltan Varga vargaz at gmail.com
Wed Jul 30 08:22:13 EDT 2008


Hi,

  This patch replaces a small, fast, simple piece of code
in mono_emit_inst_for_method () with something far more complex. Also,
about replacing
icalls with generated IL code:
- the code to generate the icalls is usually much bigger and more
complex than the icall
  itself.
- it replaces code generated by the gcc optimizing C compiler with
code generated by out JIT,
  which is of much lower quality. So even tough we incur a
managed-to-native transition
overhead by calling native code, we get some (or all) of it back by
having gcc compiled code
  in the icall.
- as rodrigo said, every new type of wrapper function adds some
complexity to our AOT
compiler which has to know about them.

So I'm not against adding the _ability_ to implement icalls in IL, but
I'm against using it in
situations where it just makes things more complex.

                     Zoltan


More information about the Mono-devel-list mailing list