This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] config/tc-aarch64.c: Avoid trying to parse a vector mov as immediate.


Hi Will,

Thanks for fixing this.  Can you please add a gas test for it?

Thanks,
Yufeng

On 11/01/13 00:27, Will Newton wrote:

Parsing a vector mov instruction currently leads to a phantom undefined
symbol being added to the symbol table. e.g.:

        .text
        mov     x0, v0.D[0]

Produces an undefined symbol called "v0.D".

2013-10-31  Will Newton<will.newton@linaro.org>

	* config/tc-aarch64.c (parse_operands): Avoid trying to
	parse a vector register as an immediate.
---
  gas/config/tc-aarch64.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 14ffdad..02fe4de 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -4810,7 +4810,8 @@ parse_operands (char *str, const aarch64_opcode *opcode)
  	case AARCH64_OPND_IMM_MOV:
  	  {
  	    char *saved = str;
-	    if (reg_name_p (str, REG_TYPE_R_Z_SP))
+	    if (reg_name_p (str, REG_TYPE_R_Z_SP) ||
+		reg_name_p (str, REG_TYPE_VN))
  	      goto failure;
  	    str = saved;
  	    po_misc_or_fail (my_get_expression (&inst.reloc.exp,&str,



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]