assemble: use opx and opy in a few more places
authorH. Peter Anvin <hpa@zytor.com>
Sat, 25 Oct 2008 07:41:00 +0000 (00:41 -0700)
committerH. Peter Anvin <hpa@zytor.com>
Sat, 25 Oct 2008 07:41:00 +0000 (00:41 -0700)
Use opx and opy in a few more places where we can do so.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
assemble.c

index fef9523..bf4314d 100644 (file)
@@ -1072,17 +1072,19 @@ static int64_t calcsize(int32_t segment, int64_t offset, int bits,
                 ea ea_data;
                 int rfield;
                int32_t rflags;
+               struct operand *opy = &ins->oprs[op2];
+
                 ea_data.rex = 0;           /* Ensure ea.REX is initially 0 */
 
                if (c <= 0177) {
-                   /* pick rfield from operand b */
-                   rflags = regflag(&ins->oprs[op1]);
-                   rfield = nasm_regvals[ins->oprs[op1].basereg];
+                   /* pick rfield from operand b (opx) */
+                   rflags = regflag(opx);
+                   rfield = nasm_regvals[opx->basereg];
                } else {
                    rflags = 0;
                    rfield = c & 7;
                }
-                if (!process_ea(&ins->oprs[op2], &ea_data, bits,
+                if (!process_ea(opy, &ea_data, bits,
                                ins->addr_size, rfield, rflags)) {
                     errfunc(ERR_NONFATAL, "invalid effective address");
                     return -1;