From 1765a4e337ac9e992760783e1e717f7b24cc2d89 Mon Sep 17 00:00:00 2001 From: Carol Eidt Date: Fri, 2 Mar 2018 11:08:42 -0800 Subject: [PATCH] Don't force byte regs for indir address --- src/jit/lsraxarch.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/jit/lsraxarch.cpp b/src/jit/lsraxarch.cpp index fdb875a..ac0062a 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()) -- 2.7.4