summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/jit/lsraxarch.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/jit/lsraxarch.cpp b/src/jit/lsraxarch.cpp
index 296d558fba..17b637898c 100644
--- a/src/jit/lsraxarch.cpp
+++ b/src/jit/lsraxarch.cpp
@@ -754,7 +754,9 @@ void LinearScan::BuildCheckByteable(GenTree* tree)
if (tree->OperIsSimple())
{
GenTree* op = tree->gtOp.gtOp1;
- if (op != nullptr)
+ // We need byte registers on the operands of most simple operators that produce a byte result.
+ // However, indirections are simple operators but do not require their address in a byte register.
+ if ((op != nullptr) && !tree->OperIsIndir())
{
// No need to set src candidates on a contained child operand.
if (!op->isContained())