[binutils-gdb] x86/Intel: fold "xmmword" with "oword"

Jan Beulich jbeulich@sourceware.org
Mon Dec 9 12:32:00 GMT 2019


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7456d03d5bfda08f27a32ee05e222967339dd60e

commit 7456d03d5bfda08f27a32ee05e222967339dd60e
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Dec 9 13:32:11 2019 +0100

    x86/Intel: fold "xmmword" with "oword"
    
    These are full aliases of one another, so there's no real need to use
    distinct O_md* values for them.

Diff:
---
 gas/ChangeLog              |  9 +++++++++
 gas/config/tc-i386-intel.c | 20 +++++++++-----------
 2 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index 3f9344e..4d2b738 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,14 @@
 2019-12-09  Jan Beulich  <jbeulich@suse.com>
 
+	* config/tc-i386-intel.c (O_oword_ptr): Move.
+	(O_xmmword_ptr): Alias to O_oword_ptr.
+	(O_fword_ptr, O_tbyte_ptr, O_ymmword_ptr, O_zmmword_ptr): Adjust
+	expansion.
+	(i386_intel_simplify, i386_intel_operand): Fold O_oword_ptr and
+	O_xmmword_ptr cases, leaving comments.
+
+2019-12-09  Jan Beulich  <jbeulich@suse.com>
+
 	* config/tc-i386-intel.c (O_mmword_ptr): Define.
 	(i386_types): Add mmword entry.
 	(i386_intel_simplify, i386_intel_operand): Add comment.
diff --git a/gas/config/tc-i386-intel.c b/gas/config/tc-i386-intel.c
index 2f79d36..bd88592 100644
--- a/gas/config/tc-i386-intel.c
+++ b/gas/config/tc-i386-intel.c
@@ -54,18 +54,18 @@ intel_state;
 #define O_qword_ptr O_md25
 /* mmword ptr X_add_symbol */
 #define O_mmword_ptr O_qword_ptr
-/* oword ptr X_add_symbol */
-#define O_oword_ptr O_md24
 /* fword ptr X_add_symbol */
-#define O_fword_ptr O_md23
+#define O_fword_ptr O_md24
 /* tbyte ptr X_add_symbol */
-#define O_tbyte_ptr O_md22
+#define O_tbyte_ptr O_md23
+/* oword ptr X_add_symbol */
+#define O_oword_ptr O_md22
 /* xmmword ptr X_add_symbol */
-#define O_xmmword_ptr O_md21
+#define O_xmmword_ptr O_oword_ptr
 /* ymmword ptr X_add_symbol */
-#define O_ymmword_ptr O_md20
+#define O_ymmword_ptr O_md21
 /* zmmword ptr X_add_symbol */
-#define O_zmmword_ptr O_md19
+#define O_zmmword_ptr O_md20
 
 static struct
   {
@@ -388,8 +388,7 @@ static int i386_intel_simplify (expressionS *e)
     case O_fword_ptr:
     case O_qword_ptr: /* O_mmword_ptr */
     case O_tbyte_ptr:
-    case O_oword_ptr:
-    case O_xmmword_ptr:
+    case O_oword_ptr: /* O_xmmword_ptr */
     case O_ymmword_ptr:
     case O_zmmword_ptr:
     case O_near_ptr:
@@ -702,8 +701,7 @@ i386_intel_operand (char *operand_string, int got_a_float)
 	    i.types[this_operand].bitfield.byte = 1; /* cause an error */
 	  break;
 
-	case O_oword_ptr:
-	case O_xmmword_ptr:
+	case O_oword_ptr: /* O_xmmword_ptr */
 	  i.types[this_operand].bitfield.xmmword = 1;
 	  break;



More information about the Binutils-cvs mailing list