Mark GT_IND nodes that represent VSD targets.
authorPat Gavlin <pagavlin@microsoft.com>
Sat, 17 Sep 2016 01:35:38 +0000 (18:35 -0700)
committerPat Gavlin <pagavlin@microsoft.com>
Mon, 19 Sep 2016 15:34:23 +0000 (08:34 -0700)
commit27edcb6dc3542bb0d3ffa1304add57f99c9a5bf1
treeee160b3e766bb5a9bf1b706fa9cf9a2617fa4795
parentebbe174fae6f0787795cedb3763ac24dc4fab976
Mark GT_IND nodes that represent VSD targets.

The operand to such a node must be materialized into a register on
certain platforms. This change defines a new IND-specific flag,
GTF_IND_VSD_TGT, and uses that flag to indicate that a particular
GT_IND node represents a VSD target. This flag is then observed by
lowering on the necessary platforms in order to short circuit the
logic that attempts to make the GT_IND's operand contained.

Commit migrated from https://github.com/dotnet/coreclr/commit/0188c07e524986bd6f8587e57f37f97e3143bb0e
src/coreclr/src/jit/gentree.h
src/coreclr/src/jit/lower.cpp
src/coreclr/src/jit/lowerxarch.cpp
src/coreclr/src/jit/rationalize.cpp
src/coreclr/src/jit/target.h