private void RewriteShiftMem(Func <Expression, Expression, Expression> fn) { var mem = RewriteOp(instr.Operands[0]); var tmp = binder.CreateTemporary(PrimitiveType.Byte); m.Assign(tmp, fn(mem, m.Int8(1))); m.Assign(mem, tmp); NZVC(tmp); }