Merge pull request #4048 from kumpera/iface_casting_cleanup
authorRodrigo Kumpera <kumpera@users.noreply.github.com>
Thu, 1 Dec 2016 19:16:10 +0000 (11:16 -0800)
committerGitHub <noreply@github.com>
Thu, 1 Dec 2016 19:16:10 +0000 (11:16 -0800)
[mini] Reorg casting code + optimize casting of magic array interfaces.

1  2 
mono/mini/aot-compiler.c
mono/mini/aot-runtime.c
mono/mini/method-to-ir.c
mono/mini/mini.c
mono/mini/mini.h

Simple merge
Simple merge
index 87a0974d0d62ea8ecff10fe43232a56e980cf247,cada92ac7bcf6004cf4acac6d2f9f1ec45ff8513..1b82009833f87b089f6dfc10c34c2c84a8579ed4
@@@ -3679,12 -3418,12 +3420,12 @@@ emit_rgctx_fetch (MonoCompile *cfg, Mon
                return mono_emit_abs_call (cfg, MONO_PATCH_INFO_RGCTX_FETCH, entry, helper_sig_rgctx_lazy_fetch_trampoline, &rgctx);
  }
  
static MonoInst*
- emit_get_rgctx_klass (MonoCompile *cfg, int context_used,
+ MonoInst*
mini_emit_get_rgctx_klass (MonoCompile *cfg, int context_used,
                                          MonoClass *klass, MonoRgctxInfoType rgctx_type)
  {
 -      MonoJumpInfoRgctxEntry *entry = mono_patch_info_rgctx_entry_new (cfg->mempool, cfg->current_method, context_used & MONO_GENERIC_CONTEXT_USED_METHOD, MONO_PATCH_INFO_CLASS, klass, rgctx_type);
 -      MonoInst *rgctx = emit_get_rgctx (cfg, cfg->current_method, context_used);
 +      MonoJumpInfoRgctxEntry *entry = mono_patch_info_rgctx_entry_new (cfg->mempool, cfg->method, context_used & MONO_GENERIC_CONTEXT_USED_METHOD, MONO_PATCH_INFO_CLASS, klass, rgctx_type);
 +      MonoInst *rgctx = emit_get_rgctx (cfg, cfg->method, context_used);
  
        return emit_rgctx_fetch (cfg, rgctx, entry);
  }
Simple merge
Simple merge