JIT: refine types when creating arg temps to improve devirtualization (#13530)
authorAndy Ayers <andya@microsoft.com>
Wed, 23 Aug 2017 16:16:07 +0000 (09:16 -0700)
committerGitHub <noreply@github.com>
Wed, 23 Aug 2017 16:16:07 +0000 (09:16 -0700)
commit85c59f9aa92092e72618df51879a9338ca9d4307
treeba79189b19f959683772fb39da9cfe79343289c4
parentf46134f56e408fc3e4cd14cd8ed43be90765f7fe
JIT: refine types when creating arg temps to improve devirtualization (#13530)

The jit will refine the types of temps used to pass arguments to inlinees
when it creates the assignments to these temps.

Unfortunately this is too late to drive devirtualization in the body of
the inlinee, as thes assignments are created after the inlinee body is
imported.

So, add similar refinement logic to the place where the temps are first
created.

Closes #13520.
src/jit/flowgraph.cpp
src/jit/importer.cpp