From: Jan Beulich Date: Mon, 7 Jun 2021 10:00:38 +0000 (+0200) Subject: x86: immediate operands don't allow for vector operations X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4e014f6ac0a2420f615a902af4370b1a45087bb6;p=binutils-gdb.git x86: immediate operands don't allow for vector operations Neither masking nor broadcast are possible here, and RC/SAE get dealt with elsewhere. This also fixes gas crashes (i.e. "Fatal error: unable to continue with assembly"), since the return path being removed failed to restore input_line_pointer from save_input_line_pointer. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index b1d65569ce8..a87815c5d43 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2021-06-07 Jan Beulich + + * config/tc-i386.c (i386_immediate): Don't call check_VecOperations. + 2021-06-07 Jan Beulich * config/tc-i386.c (extend_to_32bit_address): New. diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index a6bc597a354..9e7a97f37fd 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -10689,16 +10689,6 @@ i386_immediate (char *imm_start) exp_seg = expression (exp); SKIP_WHITESPACE (); - - /* Handle vector operations. */ - if (*input_line_pointer == '{') - { - input_line_pointer = check_VecOperations (input_line_pointer, - NULL); - if (input_line_pointer == NULL) - return 0; - } - if (*input_line_pointer) as_bad (_("junk `%s' after expression"), input_line_pointer);