OSDN Git Service

Allow spaces in i386 FP reg names, eg. %st ( 1 ).
authorAlan Modra <amodra@bigpond.net.au>
Sun, 29 Aug 1999 23:44:27 +0000 (23:44 +0000)
committerAlan Modra <amodra@bigpond.net.au>
Sun, 29 Aug 1999 23:44:27 +0000 (23:44 +0000)
include/opcode/ChangeLog
include/opcode/i386.h

index d59e716..ef0da73 100644 (file)
@@ -1,3 +1,9 @@
+1999-08-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
+
+       * i386.h (i386_regtab): Move %st to top of table, and split off
+       other fp reg entries.
+       (i386_float_regtab): To here.
+
 Sat Aug 28 00:25:25 1999  Jerry Quinn <jquinn@nortelnetworks.com>
 
        * hppa.h (pa_opcodes): Replace 'f' by 'v'.  Prefix float register args
index 3df27f2..7e3a564 100644 (file)
@@ -1061,6 +1061,8 @@ static const template i386_optab[] = {
 /* 386 register table */
 
 static const reg_entry i386_regtab[] = {
+  /* make %st first as we test for it */
+  {"st", FloatReg|FloatAcc, 0},
   /* 8 bit regs */
   {"al", Reg8|Acc, 0},
   {"cl", Reg8|ShiftCount, 1},
@@ -1130,16 +1132,7 @@ static const reg_entry i386_regtab[] = {
   {"tr5", Test, 5},
   {"tr6", Test, 6},
   {"tr7", Test, 7},
-  /* float registers */
-  {"st(0)", FloatReg|FloatAcc, 0},
-  {"st", FloatReg|FloatAcc, 0},
-  {"st(1)", FloatReg, 1},
-  {"st(2)", FloatReg, 2},
-  {"st(3)", FloatReg, 3},
-  {"st(4)", FloatReg, 4},
-  {"st(5)", FloatReg, 5},
-  {"st(6)", FloatReg, 6},
-  {"st(7)", FloatReg, 7},
+  /* mmx and simd registers */
   {"mm0", RegMMX, 0},
   {"mm1", RegMMX, 1},
   {"mm2", RegMMX, 2},
@@ -1158,6 +1151,17 @@ static const reg_entry i386_regtab[] = {
   {"xmm7", RegXMM, 7}
 };
 
+static const reg_entry i386_float_regtab[] = {
+  {"st(0)", FloatReg|FloatAcc, 0},
+  {"st(1)", FloatReg, 1},
+  {"st(2)", FloatReg, 2},
+  {"st(3)", FloatReg, 3},
+  {"st(4)", FloatReg, 4},
+  {"st(5)", FloatReg, 5},
+  {"st(6)", FloatReg, 6},
+  {"st(7)", FloatReg, 7}
+};
+
 #define MAX_REG_NAME_SIZE 8    /* for parsing register names from input */
 
 /* segment stuff */