From 32546502f3f43083adbe35b005a71d2c3bd42e55 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Thu, 22 Mar 2018 08:47:16 +0100 Subject: [PATCH] x86: use local variable in check_VecOperands() This is just to make a subsequent change a little easier to read. --- gas/ChangeLog | 5 +++++ gas/config/tc-i386.c | 15 ++++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index ace9839f508..e1488d33ba1 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2018-03-22 Jan Beulich + + * config/tc-i386.c (check_VecOperands): Latch + i.broadcast->operand into op. + 2018-03-22 Jan Beulich * config/tc-i386.c (match_template): Special case base opcode diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 1a05f48e661..2163ac101d7 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -5053,14 +5053,15 @@ check_VecOperands (const insn_template *t) /* Check if specified broadcast is supported in this instruction, and it's applied to memory operand of DWORD or QWORD type, depending on VecESize. */ + op = i.broadcast->operand; if (i.broadcast->type != t->opcode_modifier.broadcast - || !i.types[i.broadcast->operand].bitfield.mem + || !i.types[op].bitfield.mem || (t->opcode_modifier.vecesize == 0 - && !i.types[i.broadcast->operand].bitfield.dword - && !i.types[i.broadcast->operand].bitfield.unspecified) + && !i.types[op].bitfield.dword + && !i.types[op].bitfield.unspecified) || (t->opcode_modifier.vecesize == 1 - && !i.types[i.broadcast->operand].bitfield.qword - && !i.types[i.broadcast->operand].bitfield.unspecified)) + && !i.types[op].bitfield.qword + && !i.types[op].bitfield.unspecified)) goto bad_broadcast; broadcasted_opnd_size = t->opcode_modifier.vecesize ? 64 : 32; @@ -5076,9 +5077,9 @@ check_VecOperands (const insn_template *t) goto bad_broadcast; if ((broadcasted_opnd_size == 256 - && !t->operand_types[i.broadcast->operand].bitfield.ymmword) + && !t->operand_types[op].bitfield.ymmword) || (broadcasted_opnd_size == 512 - && !t->operand_types[i.broadcast->operand].bitfield.zmmword)) + && !t->operand_types[op].bitfield.zmmword)) { bad_broadcast: i.error = unsupported_broadcast; -- 2.30.2