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] Arm FPA stfpls


> As we discussed last night, I think we should leave all obsolete insns
> as-is.  So *all* FPA insns should remain infix only.  As should teqp,
> tstp, cmpp & cmnp.
>
> This implies, for example, that cmppls is a legacy cmppl insn with infix
> notation, not cmpp with postfix LS condition.

The attached patch implements this.

Tested with cross to arm-none-eabi.
Ok?

Paul

2005-09-29  Paul Brook  <paul@codeourcery.com>

gas/
	* config/tc-arm.c (opcode_tag): Add OT_cinfix3_legacy.
	(opcode_lookup): Handle OT_cinfix3_legacy.  Revert earlier change for
	normal infix conditions.
	(C3E): Include Thumb-2 definition.
	(CL, cCL): Define.
	(insns): Use them for legacy mnemonics.
gas/testsuite/
	* gas/arm/fpa-mem.s: Remove incorrect comments.
	* gas/arm/fpa-mem.d: Update expected results.
Index: gas/config/tc-arm.c
===================================================================
RCS file: /var/cvsroot/src-cvs/src/gas/config/tc-arm.c,v
retrieving revision 1.228
diff -u -p -r1.228 tc-arm.c
--- gas/config/tc-arm.c	27 Sep 2005 13:23:36 -0000	1.228
+++ gas/config/tc-arm.c	29 Sep 2005 21:04:45 -0000
@@ -7726,9 +7726,12 @@ enum opcode_tag
   OT_cinfix3,		/* Instruction takes a conditional infix,
 			   beginning at character index 3.  (In
 			   unified mode, it becomes a suffix.)  */
+  OT_cinfix3_legacy,	/* Legacy instruction takes a conditional infix at
+			   character index 3, even in unified mode.  Used for
+			   legacy instructions where suffix and infix forms
+			   may be ambiguous.  */
   OT_csuf_or_in3,	/* Instruction takes either a conditional
-			   suffix or an infix at character index 3.
-			   (In unified mode, a suffix only.  */
+			   suffix or an infix at character index 3.  */
   OT_odd_infix_unc,	/* This is the unconditional variant of an
 			   instruction that takes a conditional infix
 			   at an unusual position.  In unified mode,
@@ -7800,6 +7803,7 @@ opcode_lookup (char **str)
   char *affix;
   const struct asm_opcode *opcode;
   const struct asm_cond *cond;
+  char save[2];
 
   /* Scan up to the end of the mnemonic, which must end in white space,
      '.' (in unified mode only), or end of string.  */
@@ -7860,12 +7864,14 @@ opcode_lookup (char **str)
       /* step CE */
       switch (opcode->tag)
 	{
+	case OT_cinfix3_legacy:
+	  /* Ignore conditional suffixes matched on infix only mnemonics.  */
+	  break;
+
 	case OT_cinfix3:
 	case OT_odd_infix_unc:
-	  /* Some mnemonics are ambiguous between infix and suffix
-	     conditions.  Disambiguate based on assembly syntax.  */
 	  if (!unified_syntax)
-	    break;
+	    return 0;
 	  /* else fall through */
 
 	case OT_csuffix:
@@ -7893,19 +7899,20 @@ opcode_lookup (char **str)
   /* Look for infixed mnemonic in the usual position.  */
   affix = base + 3;
   cond = hash_find_n (arm_cond_hsh, affix, 2);
-  if (cond)
-    {
-      char save[2];
-      memcpy (save, affix, 2);
-      memmove (affix, affix + 2, (end - affix) - 2);
-      opcode = hash_find_n (arm_ops_hsh, base, (end - base) - 2);
-      memmove (affix + 2, affix, (end - affix) - 2);
-      memcpy (affix, save, 2);
-    }
-  if (opcode && (opcode->tag == OT_cinfix3 || opcode->tag == OT_csuf_or_in3))
+  if (!cond)
+    return 0;
+
+  memcpy (save, affix, 2);
+  memmove (affix, affix + 2, (end - affix) - 2);
+  opcode = hash_find_n (arm_ops_hsh, base, (end - base) - 2);
+  memmove (affix + 2, affix, (end - affix) - 2);
+  memcpy (affix, save, 2);
+
+  if (opcode && (opcode->tag == OT_cinfix3 || opcode->tag == OT_csuf_or_in3
+		 || opcode->tag == OT_cinfix3_legacy))
     {
       /* step CM */
-      if (unified_syntax)
+      if (unified_syntax && opcode->tag == OT_cinfix3)
 	as_warn (_("conditional infixes are deprecated in unified syntax"));
 
       inst.cond = cond->value;
@@ -8443,12 +8450,28 @@ static const struct asm_cond conds[] =
 #define C3(mnem, op, nops, ops, ae)	\
   { #mnem, OPS##nops ops, OT_cinfix3, 0x##op, 0x0, ARM_VARIANT, 0, do_##ae, NULL }
 
+/* Legacy mnemonics that always have conditional infix after the third
+   character.  */
+#define CL(mnem, op, nops, ops, ae)	\
+  { #mnem, OPS##nops ops, OT_cinfix3_legacy, \
+    0x##op, 0x0, ARM_VARIANT, 0, do_##ae, NULL }
+
 /* Coprocessor instructions.  Isomorphic between Arm and Thumb-2.  */
 #define cCE(mnem,  op, nops, ops, ae)	\
   { #mnem, OPS##nops ops, OT_csuffix, 0x##op, 0xe##op, ARM_VARIANT, ARM_VARIANT, do_##ae, do_##ae }
 
-#define cC3(mnem, op, nops, ops, ae)	\
-  { #mnem, OPS##nops ops, OT_cinfix3, 0x##op, 0xe##op, ARM_VARIANT, ARM_VARIANT, do_##ae, do_##ae }
+/* Legacy coprocessor instructions where conditional infix and conditional
+   suffix are ambiguous.  For consistency this includes all FPA instructions,
+   not just the potentially ambiguous ones.  */
+#define cCL(mnem, op, nops, ops, ae)	\
+  { #mnem, OPS##nops ops, OT_cinfix3_legacy, \
+    0x##op, 0xe##op, ARM_VARIANT, ARM_VARIANT, do_##ae, do_##ae }
+
+/* Coprocessor, takes either a suffix or a position-3 infix
+   (for an FPA corner case). */
+#define C3E(mnem, op, nops, ops, ae) \
+  { #mnem, OPS##nops ops, OT_csuf_or_in3, \
+    0x##op, 0xe##op, ARM_VARIANT, ARM_VARIANT, do_##ae, do_##ae }
 
 #define xCM_(m1, m2, m3, op, nops, ops, ae)	\
   { #m1 #m2 #m3, OPS##nops ops, \
@@ -8487,11 +8510,6 @@ static const struct asm_cond conds[] =
 /* Thumb-only, unconditional.  */
 #define UT(mnem,  op, nops, ops, te) TUE(mnem,  0, op, nops, ops, 0, te)
 
-/* ARM-only, takes either a suffix or a position-3 infix
-   (for an FPA corner case). */
-#define C3E(mnem, op, nops, ops, ae) \
-  { #mnem, OPS##nops ops, OT_csuf_or_in3, 0x##op, 0, ARM_VARIANT, 0, do_##ae, 0 }
-
 static const struct asm_opcode insns[] =
 {
 #define ARM_VARIANT ARM_EXT_V1 /* Core ARM Instructions.  */
@@ -8518,13 +8536,13 @@ static const struct asm_opcode insns[] =
     have Thumb equivalents. */
  tCE(tst,	1100000, tst,	   2, (RR, SH),      cmp,  t_mvn_tst),
  tC3(tsts,	1100000, tst,	   2, (RR, SH),      cmp,  t_mvn_tst),
-  C3(tstp,	110f000,     	   2, (RR, SH),      cmp),
+  CL(tstp,	110f000,     	   2, (RR, SH),      cmp),
  tCE(cmp,	1500000, cmp,	   2, (RR, SH),      cmp,  t_mov_cmp),
  tC3(cmps,	1500000, cmp,	   2, (RR, SH),      cmp,  t_mov_cmp),
-  C3(cmpp,	150f000,     	   2, (RR, SH),      cmp),
+  CL(cmpp,	150f000,     	   2, (RR, SH),      cmp),
  tCE(cmn,	1700000, cmn,	   2, (RR, SH),      cmp,  t_mvn_tst),
  tC3(cmns,	1700000, cmn,	   2, (RR, SH),      cmp,  t_mvn_tst),
-  C3(cmnp,	170f000,     	   2, (RR, SH),      cmp),
+  CL(cmnp,	170f000,     	   2, (RR, SH),      cmp),
 
  tCE(mov,	1a00000, mov,	   2, (RR, SH),      mov,  t_mov_cmp),
  tC3(movs,	1b00000, movs,	   2, (RR, SH),      mov,  t_mov_cmp),
@@ -8575,7 +8593,7 @@ static const struct asm_opcode insns[] =
  TC3(rsbs,	0700000, ebd00000, 3, (RR, oRR, SH), arit, t_rsb),
  TCE(teq,	1300000, ea900f00, 2, (RR, SH),      cmp,  t_mvn_tst),
  TC3(teqs,	1300000, ea900f00, 2, (RR, SH),      cmp,  t_mvn_tst),
-  C3(teqp,	130f000,           2, (RR, SH),      cmp),
+  CL(teqp,	130f000,           2, (RR, SH),      cmp),
 
  TC3(ldrt,	4300000, f8500e00, 2, (RR, ADDR),    ldstt, t_ldstt),
  TC3(ldrbt,	4700000, f8300e00, 2, (RR, ADDR),    ldstt, t_ldstt),
@@ -8904,410 +8922,410 @@ static const struct asm_opcode insns[] =
  cCE(wfc,	e400110, 1, (RR),	     rd),
  cCE(rfc,	e500110, 1, (RR),	     rd),
 
- cC3(ldfs,	c100100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(ldfd,	c108100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(ldfe,	c500100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(ldfp,	c508100, 2, (RF, ADDR),	     rd_cpaddr),
-
- cC3(stfs,	c000100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(stfd,	c008100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(stfe,	c400100, 2, (RF, ADDR),	     rd_cpaddr),
- cC3(stfp,	c408100, 2, (RF, ADDR),	     rd_cpaddr),
-
- cC3(mvfs,	e008100, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfsp,	e008120, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfsm,	e008140, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfsz,	e008160, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfd,	e008180, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfdp,	e0081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfdm,	e0081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfdz,	e0081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfe,	e088100, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfep,	e088120, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfem,	e088140, 2, (RF, RF_IF),     rd_rm),
- cC3(mvfez,	e088160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(mnfs,	e108100, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfsp,	e108120, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfsm,	e108140, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfsz,	e108160, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfd,	e108180, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfdp,	e1081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfdm,	e1081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfdz,	e1081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfe,	e188100, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfep,	e188120, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfem,	e188140, 2, (RF, RF_IF),     rd_rm),
- cC3(mnfez,	e188160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(abss,	e208100, 2, (RF, RF_IF),     rd_rm),
- cC3(abssp,	e208120, 2, (RF, RF_IF),     rd_rm),
- cC3(abssm,	e208140, 2, (RF, RF_IF),     rd_rm),
- cC3(abssz,	e208160, 2, (RF, RF_IF),     rd_rm),
- cC3(absd,	e208180, 2, (RF, RF_IF),     rd_rm),
- cC3(absdp,	e2081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(absdm,	e2081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(absdz,	e2081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(abse,	e288100, 2, (RF, RF_IF),     rd_rm),
- cC3(absep,	e288120, 2, (RF, RF_IF),     rd_rm),
- cC3(absem,	e288140, 2, (RF, RF_IF),     rd_rm),
- cC3(absez,	e288160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(rnds,	e308100, 2, (RF, RF_IF),     rd_rm),
- cC3(rndsp,	e308120, 2, (RF, RF_IF),     rd_rm),
- cC3(rndsm,	e308140, 2, (RF, RF_IF),     rd_rm),
- cC3(rndsz,	e308160, 2, (RF, RF_IF),     rd_rm),
- cC3(rndd,	e308180, 2, (RF, RF_IF),     rd_rm),
- cC3(rnddp,	e3081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(rnddm,	e3081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(rnddz,	e3081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(rnde,	e388100, 2, (RF, RF_IF),     rd_rm),
- cC3(rndep,	e388120, 2, (RF, RF_IF),     rd_rm),
- cC3(rndem,	e388140, 2, (RF, RF_IF),     rd_rm),
- cC3(rndez,	e388160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(sqts,	e408100, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtsp,	e408120, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtsm,	e408140, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtsz,	e408160, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtd,	e408180, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtdp,	e4081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtdm,	e4081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtdz,	e4081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(sqte,	e488100, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtep,	e488120, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtem,	e488140, 2, (RF, RF_IF),     rd_rm),
- cC3(sqtez,	e488160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(logs,	e508100, 2, (RF, RF_IF),     rd_rm),
- cC3(logsp,	e508120, 2, (RF, RF_IF),     rd_rm),
- cC3(logsm,	e508140, 2, (RF, RF_IF),     rd_rm),
- cC3(logsz,	e508160, 2, (RF, RF_IF),     rd_rm),
- cC3(logd,	e508180, 2, (RF, RF_IF),     rd_rm),
- cC3(logdp,	e5081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(logdm,	e5081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(logdz,	e5081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(loge,	e588100, 2, (RF, RF_IF),     rd_rm),
- cC3(logep,	e588120, 2, (RF, RF_IF),     rd_rm),
- cC3(logem,	e588140, 2, (RF, RF_IF),     rd_rm),
- cC3(logez,	e588160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(lgns,	e608100, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnsp,	e608120, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnsm,	e608140, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnsz,	e608160, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnd,	e608180, 2, (RF, RF_IF),     rd_rm),
- cC3(lgndp,	e6081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(lgndm,	e6081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(lgndz,	e6081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(lgne,	e688100, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnep,	e688120, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnem,	e688140, 2, (RF, RF_IF),     rd_rm),
- cC3(lgnez,	e688160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(exps,	e708100, 2, (RF, RF_IF),     rd_rm),
- cC3(expsp,	e708120, 2, (RF, RF_IF),     rd_rm),
- cC3(expsm,	e708140, 2, (RF, RF_IF),     rd_rm),
- cC3(expsz,	e708160, 2, (RF, RF_IF),     rd_rm),
- cC3(expd,	e708180, 2, (RF, RF_IF),     rd_rm),
- cC3(expdp,	e7081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(expdm,	e7081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(expdz,	e7081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(expe,	e788100, 2, (RF, RF_IF),     rd_rm),
- cC3(expep,	e788120, 2, (RF, RF_IF),     rd_rm),
- cC3(expem,	e788140, 2, (RF, RF_IF),     rd_rm),
- cC3(expdz,	e788160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(sins,	e808100, 2, (RF, RF_IF),     rd_rm),
- cC3(sinsp,	e808120, 2, (RF, RF_IF),     rd_rm),
- cC3(sinsm,	e808140, 2, (RF, RF_IF),     rd_rm),
- cC3(sinsz,	e808160, 2, (RF, RF_IF),     rd_rm),
- cC3(sind,	e808180, 2, (RF, RF_IF),     rd_rm),
- cC3(sindp,	e8081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(sindm,	e8081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(sindz,	e8081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(sine,	e888100, 2, (RF, RF_IF),     rd_rm),
- cC3(sinep,	e888120, 2, (RF, RF_IF),     rd_rm),
- cC3(sinem,	e888140, 2, (RF, RF_IF),     rd_rm),
- cC3(sinez,	e888160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(coss,	e908100, 2, (RF, RF_IF),     rd_rm),
- cC3(cossp,	e908120, 2, (RF, RF_IF),     rd_rm),
- cC3(cossm,	e908140, 2, (RF, RF_IF),     rd_rm),
- cC3(cossz,	e908160, 2, (RF, RF_IF),     rd_rm),
- cC3(cosd,	e908180, 2, (RF, RF_IF),     rd_rm),
- cC3(cosdp,	e9081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(cosdm,	e9081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(cosdz,	e9081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(cose,	e988100, 2, (RF, RF_IF),     rd_rm),
- cC3(cosep,	e988120, 2, (RF, RF_IF),     rd_rm),
- cC3(cosem,	e988140, 2, (RF, RF_IF),     rd_rm),
- cC3(cosez,	e988160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(tans,	ea08100, 2, (RF, RF_IF),     rd_rm),
- cC3(tansp,	ea08120, 2, (RF, RF_IF),     rd_rm),
- cC3(tansm,	ea08140, 2, (RF, RF_IF),     rd_rm),
- cC3(tansz,	ea08160, 2, (RF, RF_IF),     rd_rm),
- cC3(tand,	ea08180, 2, (RF, RF_IF),     rd_rm),
- cC3(tandp,	ea081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(tandm,	ea081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(tandz,	ea081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(tane,	ea88100, 2, (RF, RF_IF),     rd_rm),
- cC3(tanep,	ea88120, 2, (RF, RF_IF),     rd_rm),
- cC3(tanem,	ea88140, 2, (RF, RF_IF),     rd_rm),
- cC3(tanez,	ea88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(asns,	eb08100, 2, (RF, RF_IF),     rd_rm),
- cC3(asnsp,	eb08120, 2, (RF, RF_IF),     rd_rm),
- cC3(asnsm,	eb08140, 2, (RF, RF_IF),     rd_rm),
- cC3(asnsz,	eb08160, 2, (RF, RF_IF),     rd_rm),
- cC3(asnd,	eb08180, 2, (RF, RF_IF),     rd_rm),
- cC3(asndp,	eb081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(asndm,	eb081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(asndz,	eb081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(asne,	eb88100, 2, (RF, RF_IF),     rd_rm),
- cC3(asnep,	eb88120, 2, (RF, RF_IF),     rd_rm),
- cC3(asnem,	eb88140, 2, (RF, RF_IF),     rd_rm),
- cC3(asnez,	eb88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(acss,	ec08100, 2, (RF, RF_IF),     rd_rm),
- cC3(acssp,	ec08120, 2, (RF, RF_IF),     rd_rm),
- cC3(acssm,	ec08140, 2, (RF, RF_IF),     rd_rm),
- cC3(acssz,	ec08160, 2, (RF, RF_IF),     rd_rm),
- cC3(acsd,	ec08180, 2, (RF, RF_IF),     rd_rm),
- cC3(acsdp,	ec081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(acsdm,	ec081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(acsdz,	ec081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(acse,	ec88100, 2, (RF, RF_IF),     rd_rm),
- cC3(acsep,	ec88120, 2, (RF, RF_IF),     rd_rm),
- cC3(acsem,	ec88140, 2, (RF, RF_IF),     rd_rm),
- cC3(acsez,	ec88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(atns,	ed08100, 2, (RF, RF_IF),     rd_rm),
- cC3(atnsp,	ed08120, 2, (RF, RF_IF),     rd_rm),
- cC3(atnsm,	ed08140, 2, (RF, RF_IF),     rd_rm),
- cC3(atnsz,	ed08160, 2, (RF, RF_IF),     rd_rm),
- cC3(atnd,	ed08180, 2, (RF, RF_IF),     rd_rm),
- cC3(atndp,	ed081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(atndm,	ed081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(atndz,	ed081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(atne,	ed88100, 2, (RF, RF_IF),     rd_rm),
- cC3(atnep,	ed88120, 2, (RF, RF_IF),     rd_rm),
- cC3(atnem,	ed88140, 2, (RF, RF_IF),     rd_rm),
- cC3(atnez,	ed88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(urds,	ee08100, 2, (RF, RF_IF),     rd_rm),
- cC3(urdsp,	ee08120, 2, (RF, RF_IF),     rd_rm),
- cC3(urdsm,	ee08140, 2, (RF, RF_IF),     rd_rm),
- cC3(urdsz,	ee08160, 2, (RF, RF_IF),     rd_rm),
- cC3(urdd,	ee08180, 2, (RF, RF_IF),     rd_rm),
- cC3(urddp,	ee081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(urddm,	ee081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(urddz,	ee081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(urde,	ee88100, 2, (RF, RF_IF),     rd_rm),
- cC3(urdep,	ee88120, 2, (RF, RF_IF),     rd_rm),
- cC3(urdem,	ee88140, 2, (RF, RF_IF),     rd_rm),
- cC3(urdez,	ee88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(nrms,	ef08100, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmsp,	ef08120, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmsm,	ef08140, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmsz,	ef08160, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmd,	ef08180, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmdp,	ef081a0, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmdm,	ef081c0, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmdz,	ef081e0, 2, (RF, RF_IF),     rd_rm),
- cC3(nrme,	ef88100, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmep,	ef88120, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmem,	ef88140, 2, (RF, RF_IF),     rd_rm),
- cC3(nrmez,	ef88160, 2, (RF, RF_IF),     rd_rm),
-
- cC3(adfs,	e000100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfsp,	e000120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfsm,	e000140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfsz,	e000160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfd,	e000180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfdp,	e0001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfdm,	e0001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfdz,	e0001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfe,	e080100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfep,	e080120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfem,	e080140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(adfez,	e080160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(sufs,	e200100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufsp,	e200120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufsm,	e200140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufsz,	e200160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufd,	e200180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufdp,	e2001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufdm,	e2001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufdz,	e2001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufe,	e280100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufep,	e280120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufem,	e280140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(sufez,	e280160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(rsfs,	e300100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfsp,	e300120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfsm,	e300140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfsz,	e300160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfd,	e300180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfdp,	e3001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfdm,	e3001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfdz,	e3001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfe,	e380100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfep,	e380120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfem,	e380140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rsfez,	e380160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(mufs,	e100100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufsp,	e100120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufsm,	e100140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufsz,	e100160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufd,	e100180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufdp,	e1001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufdm,	e1001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufdz,	e1001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufe,	e180100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufep,	e180120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufem,	e180140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(mufez,	e180160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(dvfs,	e400100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfsp,	e400120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfsm,	e400140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfsz,	e400160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfd,	e400180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfdp,	e4001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfdm,	e4001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfdz,	e4001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfe,	e480100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfep,	e480120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfem,	e480140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(dvfez,	e480160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(rdfs,	e500100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfsp,	e500120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfsm,	e500140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfsz,	e500160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfd,	e500180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfdp,	e5001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfdm,	e5001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfdz,	e5001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfe,	e580100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfep,	e580120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfem,	e580140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rdfez,	e580160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(pows,	e600100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powsp,	e600120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powsm,	e600140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powsz,	e600160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powd,	e600180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powdp,	e6001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powdm,	e6001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powdz,	e6001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powe,	e680100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powep,	e680120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powem,	e680140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(powez,	e680160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(rpws,	e700100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwsp,	e700120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwsm,	e700140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwsz,	e700160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwd,	e700180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwdp,	e7001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwdm,	e7001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwdz,	e7001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwe,	e780100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwep,	e780120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwem,	e780140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rpwez,	e780160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(rmfs,	e800100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfsp,	e800120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfsm,	e800140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfsz,	e800160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfd,	e800180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfdp,	e8001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfdm,	e8001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfdz,	e8001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfe,	e880100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfep,	e880120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfem,	e880140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(rmfez,	e880160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(fmls,	e900100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlsp,	e900120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlsm,	e900140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlsz,	e900160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmld,	e900180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmldp,	e9001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmldm,	e9001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmldz,	e9001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmle,	e980100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlep,	e980120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlem,	e980140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fmlez,	e980160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(fdvs,	ea00100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvsp,	ea00120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvsm,	ea00140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvsz,	ea00160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvd,	ea00180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvdp,	ea001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvdm,	ea001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvdz,	ea001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdve,	ea80100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvep,	ea80120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvem,	ea80140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(fdvez,	ea80160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(frds,	eb00100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdsp,	eb00120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdsm,	eb00140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdsz,	eb00160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdd,	eb00180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frddp,	eb001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frddm,	eb001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frddz,	eb001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frde,	eb80100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdep,	eb80120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdem,	eb80140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(frdez,	eb80160, 3, (RF, RF, RF_IF), rd_rn_rm),
-
- cC3(pols,	ec00100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polsp,	ec00120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polsm,	ec00140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polsz,	ec00160, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(pold,	ec00180, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(poldp,	ec001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(poldm,	ec001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(poldz,	ec001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(pole,	ec80100, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polep,	ec80120, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polem,	ec80140, 3, (RF, RF, RF_IF), rd_rn_rm),
- cC3(polez,	ec80160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(ldfs,	c100100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(ldfd,	c108100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(ldfe,	c500100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(ldfp,	c508100, 2, (RF, ADDR),	     rd_cpaddr),
+
+ cCL(stfs,	c000100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(stfd,	c008100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(stfe,	c400100, 2, (RF, ADDR),	     rd_cpaddr),
+ cCL(stfp,	c408100, 2, (RF, ADDR),	     rd_cpaddr),
+
+ cCL(mvfs,	e008100, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfsp,	e008120, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfsm,	e008140, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfsz,	e008160, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfd,	e008180, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfdp,	e0081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfdm,	e0081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfdz,	e0081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfe,	e088100, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfep,	e088120, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfem,	e088140, 2, (RF, RF_IF),     rd_rm),
+ cCL(mvfez,	e088160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(mnfs,	e108100, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfsp,	e108120, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfsm,	e108140, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfsz,	e108160, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfd,	e108180, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfdp,	e1081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfdm,	e1081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfdz,	e1081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfe,	e188100, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfep,	e188120, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfem,	e188140, 2, (RF, RF_IF),     rd_rm),
+ cCL(mnfez,	e188160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(abss,	e208100, 2, (RF, RF_IF),     rd_rm),
+ cCL(abssp,	e208120, 2, (RF, RF_IF),     rd_rm),
+ cCL(abssm,	e208140, 2, (RF, RF_IF),     rd_rm),
+ cCL(abssz,	e208160, 2, (RF, RF_IF),     rd_rm),
+ cCL(absd,	e208180, 2, (RF, RF_IF),     rd_rm),
+ cCL(absdp,	e2081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(absdm,	e2081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(absdz,	e2081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(abse,	e288100, 2, (RF, RF_IF),     rd_rm),
+ cCL(absep,	e288120, 2, (RF, RF_IF),     rd_rm),
+ cCL(absem,	e288140, 2, (RF, RF_IF),     rd_rm),
+ cCL(absez,	e288160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(rnds,	e308100, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndsp,	e308120, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndsm,	e308140, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndsz,	e308160, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndd,	e308180, 2, (RF, RF_IF),     rd_rm),
+ cCL(rnddp,	e3081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(rnddm,	e3081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(rnddz,	e3081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(rnde,	e388100, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndep,	e388120, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndem,	e388140, 2, (RF, RF_IF),     rd_rm),
+ cCL(rndez,	e388160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(sqts,	e408100, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtsp,	e408120, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtsm,	e408140, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtsz,	e408160, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtd,	e408180, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtdp,	e4081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtdm,	e4081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtdz,	e4081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqte,	e488100, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtep,	e488120, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtem,	e488140, 2, (RF, RF_IF),     rd_rm),
+ cCL(sqtez,	e488160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(logs,	e508100, 2, (RF, RF_IF),     rd_rm),
+ cCL(logsp,	e508120, 2, (RF, RF_IF),     rd_rm),
+ cCL(logsm,	e508140, 2, (RF, RF_IF),     rd_rm),
+ cCL(logsz,	e508160, 2, (RF, RF_IF),     rd_rm),
+ cCL(logd,	e508180, 2, (RF, RF_IF),     rd_rm),
+ cCL(logdp,	e5081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(logdm,	e5081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(logdz,	e5081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(loge,	e588100, 2, (RF, RF_IF),     rd_rm),
+ cCL(logep,	e588120, 2, (RF, RF_IF),     rd_rm),
+ cCL(logem,	e588140, 2, (RF, RF_IF),     rd_rm),
+ cCL(logez,	e588160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(lgns,	e608100, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnsp,	e608120, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnsm,	e608140, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnsz,	e608160, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnd,	e608180, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgndp,	e6081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgndm,	e6081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgndz,	e6081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgne,	e688100, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnep,	e688120, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnem,	e688140, 2, (RF, RF_IF),     rd_rm),
+ cCL(lgnez,	e688160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(exps,	e708100, 2, (RF, RF_IF),     rd_rm),
+ cCL(expsp,	e708120, 2, (RF, RF_IF),     rd_rm),
+ cCL(expsm,	e708140, 2, (RF, RF_IF),     rd_rm),
+ cCL(expsz,	e708160, 2, (RF, RF_IF),     rd_rm),
+ cCL(expd,	e708180, 2, (RF, RF_IF),     rd_rm),
+ cCL(expdp,	e7081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(expdm,	e7081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(expdz,	e7081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(expe,	e788100, 2, (RF, RF_IF),     rd_rm),
+ cCL(expep,	e788120, 2, (RF, RF_IF),     rd_rm),
+ cCL(expem,	e788140, 2, (RF, RF_IF),     rd_rm),
+ cCL(expdz,	e788160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(sins,	e808100, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinsp,	e808120, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinsm,	e808140, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinsz,	e808160, 2, (RF, RF_IF),     rd_rm),
+ cCL(sind,	e808180, 2, (RF, RF_IF),     rd_rm),
+ cCL(sindp,	e8081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sindm,	e8081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sindz,	e8081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(sine,	e888100, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinep,	e888120, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinem,	e888140, 2, (RF, RF_IF),     rd_rm),
+ cCL(sinez,	e888160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(coss,	e908100, 2, (RF, RF_IF),     rd_rm),
+ cCL(cossp,	e908120, 2, (RF, RF_IF),     rd_rm),
+ cCL(cossm,	e908140, 2, (RF, RF_IF),     rd_rm),
+ cCL(cossz,	e908160, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosd,	e908180, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosdp,	e9081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosdm,	e9081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosdz,	e9081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(cose,	e988100, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosep,	e988120, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosem,	e988140, 2, (RF, RF_IF),     rd_rm),
+ cCL(cosez,	e988160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(tans,	ea08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(tansp,	ea08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(tansm,	ea08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(tansz,	ea08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(tand,	ea08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(tandp,	ea081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(tandm,	ea081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(tandz,	ea081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(tane,	ea88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(tanep,	ea88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(tanem,	ea88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(tanez,	ea88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(asns,	eb08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnsp,	eb08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnsm,	eb08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnsz,	eb08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnd,	eb08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(asndp,	eb081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(asndm,	eb081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(asndz,	eb081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(asne,	eb88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnep,	eb88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnem,	eb88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(asnez,	eb88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(acss,	ec08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(acssp,	ec08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(acssm,	ec08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(acssz,	ec08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsd,	ec08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsdp,	ec081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsdm,	ec081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsdz,	ec081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(acse,	ec88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsep,	ec88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsem,	ec88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(acsez,	ec88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(atns,	ed08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnsp,	ed08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnsm,	ed08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnsz,	ed08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnd,	ed08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(atndp,	ed081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(atndm,	ed081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(atndz,	ed081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(atne,	ed88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnep,	ed88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnem,	ed88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(atnez,	ed88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(urds,	ee08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdsp,	ee08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdsm,	ee08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdsz,	ee08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdd,	ee08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(urddp,	ee081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(urddm,	ee081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(urddz,	ee081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(urde,	ee88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdep,	ee88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdem,	ee88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(urdez,	ee88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(nrms,	ef08100, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmsp,	ef08120, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmsm,	ef08140, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmsz,	ef08160, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmd,	ef08180, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmdp,	ef081a0, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmdm,	ef081c0, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmdz,	ef081e0, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrme,	ef88100, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmep,	ef88120, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmem,	ef88140, 2, (RF, RF_IF),     rd_rm),
+ cCL(nrmez,	ef88160, 2, (RF, RF_IF),     rd_rm),
+
+ cCL(adfs,	e000100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfsp,	e000120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfsm,	e000140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfsz,	e000160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfd,	e000180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfdp,	e0001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfdm,	e0001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfdz,	e0001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfe,	e080100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfep,	e080120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfem,	e080140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(adfez,	e080160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(sufs,	e200100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufsp,	e200120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufsm,	e200140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufsz,	e200160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufd,	e200180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufdp,	e2001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufdm,	e2001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufdz,	e2001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufe,	e280100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufep,	e280120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufem,	e280140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(sufez,	e280160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(rsfs,	e300100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfsp,	e300120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfsm,	e300140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfsz,	e300160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfd,	e300180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfdp,	e3001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfdm,	e3001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfdz,	e3001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfe,	e380100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfep,	e380120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfem,	e380140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rsfez,	e380160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(mufs,	e100100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufsp,	e100120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufsm,	e100140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufsz,	e100160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufd,	e100180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufdp,	e1001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufdm,	e1001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufdz,	e1001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufe,	e180100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufep,	e180120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufem,	e180140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(mufez,	e180160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(dvfs,	e400100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfsp,	e400120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfsm,	e400140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfsz,	e400160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfd,	e400180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfdp,	e4001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfdm,	e4001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfdz,	e4001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfe,	e480100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfep,	e480120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfem,	e480140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(dvfez,	e480160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(rdfs,	e500100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfsp,	e500120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfsm,	e500140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfsz,	e500160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfd,	e500180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfdp,	e5001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfdm,	e5001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfdz,	e5001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfe,	e580100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfep,	e580120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfem,	e580140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rdfez,	e580160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(pows,	e600100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powsp,	e600120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powsm,	e600140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powsz,	e600160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powd,	e600180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powdp,	e6001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powdm,	e6001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powdz,	e6001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powe,	e680100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powep,	e680120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powem,	e680140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(powez,	e680160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(rpws,	e700100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwsp,	e700120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwsm,	e700140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwsz,	e700160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwd,	e700180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwdp,	e7001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwdm,	e7001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwdz,	e7001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwe,	e780100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwep,	e780120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwem,	e780140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rpwez,	e780160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(rmfs,	e800100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfsp,	e800120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfsm,	e800140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfsz,	e800160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfd,	e800180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfdp,	e8001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfdm,	e8001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfdz,	e8001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfe,	e880100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfep,	e880120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfem,	e880140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(rmfez,	e880160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(fmls,	e900100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlsp,	e900120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlsm,	e900140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlsz,	e900160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmld,	e900180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmldp,	e9001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmldm,	e9001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmldz,	e9001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmle,	e980100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlep,	e980120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlem,	e980140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fmlez,	e980160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(fdvs,	ea00100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvsp,	ea00120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvsm,	ea00140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvsz,	ea00160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvd,	ea00180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvdp,	ea001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvdm,	ea001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvdz,	ea001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdve,	ea80100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvep,	ea80120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvem,	ea80140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(fdvez,	ea80160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(frds,	eb00100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdsp,	eb00120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdsm,	eb00140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdsz,	eb00160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdd,	eb00180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frddp,	eb001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frddm,	eb001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frddz,	eb001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frde,	eb80100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdep,	eb80120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdem,	eb80140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(frdez,	eb80160, 3, (RF, RF, RF_IF), rd_rn_rm),
+
+ cCL(pols,	ec00100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polsp,	ec00120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polsm,	ec00140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polsz,	ec00160, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(pold,	ec00180, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(poldp,	ec001a0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(poldm,	ec001c0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(poldz,	ec001e0, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(pole,	ec80100, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polep,	ec80120, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polem,	ec80140, 3, (RF, RF, RF_IF), rd_rn_rm),
+ cCL(polez,	ec80160, 3, (RF, RF, RF_IF), rd_rn_rm),
 
  cCE(cmf,	e90f110, 2, (RF, RF_IF),     fpa_cmp),
  C3E(cmfe,	ed0f110, 2, (RF, RF_IF),     fpa_cmp),
  cCE(cnf,	eb0f110, 2, (RF, RF_IF),     fpa_cmp),
  C3E(cnfe,	ef0f110, 2, (RF, RF_IF),     fpa_cmp),
 
- cC3(flts,	e000110, 2, (RF, RR),	     rn_rd),
- cC3(fltsp,	e000130, 2, (RF, RR),	     rn_rd),
- cC3(fltsm,	e000150, 2, (RF, RR),	     rn_rd),
- cC3(fltsz,	e000170, 2, (RF, RR),	     rn_rd),
- cC3(fltd,	e000190, 2, (RF, RR),	     rn_rd),
- cC3(fltdp,	e0001b0, 2, (RF, RR),	     rn_rd),
- cC3(fltdm,	e0001d0, 2, (RF, RR),	     rn_rd),
- cC3(fltdz,	e0001f0, 2, (RF, RR),	     rn_rd),
- cC3(flte,	e080110, 2, (RF, RR),	     rn_rd),
- cC3(fltep,	e080130, 2, (RF, RR),	     rn_rd),
- cC3(fltem,	e080150, 2, (RF, RR),	     rn_rd),
- cC3(fltez,	e080170, 2, (RF, RR),	     rn_rd),
+ cCL(flts,	e000110, 2, (RF, RR),	     rn_rd),
+ cCL(fltsp,	e000130, 2, (RF, RR),	     rn_rd),
+ cCL(fltsm,	e000150, 2, (RF, RR),	     rn_rd),
+ cCL(fltsz,	e000170, 2, (RF, RR),	     rn_rd),
+ cCL(fltd,	e000190, 2, (RF, RR),	     rn_rd),
+ cCL(fltdp,	e0001b0, 2, (RF, RR),	     rn_rd),
+ cCL(fltdm,	e0001d0, 2, (RF, RR),	     rn_rd),
+ cCL(fltdz,	e0001f0, 2, (RF, RR),	     rn_rd),
+ cCL(flte,	e080110, 2, (RF, RR),	     rn_rd),
+ cCL(fltep,	e080130, 2, (RF, RR),	     rn_rd),
+ cCL(fltem,	e080150, 2, (RF, RR),	     rn_rd),
+ cCL(fltez,	e080170, 2, (RF, RR),	     rn_rd),
 
   /* The implementation of the FIX instruction is broken on some
      assemblers, in that it accepts a precision specifier as well as a
@@ -9315,28 +9333,28 @@ static const struct asm_opcode insns[] =
      To be more compatible, we accept it as well, though of course it
      does not set any bits.  */
  cCE(fix,	e100110, 2, (RR, RF),	     rd_rm),
- cC3(fixp,	e100130, 2, (RR, RF),	     rd_rm),
- cC3(fixm,	e100150, 2, (RR, RF),	     rd_rm),
- cC3(fixz,	e100170, 2, (RR, RF),	     rd_rm),
- cC3(fixsp,	e100130, 2, (RR, RF),	     rd_rm),
- cC3(fixsm,	e100150, 2, (RR, RF),	     rd_rm),
- cC3(fixsz,	e100170, 2, (RR, RF),	     rd_rm),
- cC3(fixdp,	e100130, 2, (RR, RF),	     rd_rm),
- cC3(fixdm,	e100150, 2, (RR, RF),	     rd_rm),
- cC3(fixdz,	e100170, 2, (RR, RF),	     rd_rm),
- cC3(fixep,	e100130, 2, (RR, RF),	     rd_rm),
- cC3(fixem,	e100150, 2, (RR, RF),	     rd_rm),
- cC3(fixez,	e100170, 2, (RR, RF),	     rd_rm),
+ cCL(fixp,	e100130, 2, (RR, RF),	     rd_rm),
+ cCL(fixm,	e100150, 2, (RR, RF),	     rd_rm),
+ cCL(fixz,	e100170, 2, (RR, RF),	     rd_rm),
+ cCL(fixsp,	e100130, 2, (RR, RF),	     rd_rm),
+ cCL(fixsm,	e100150, 2, (RR, RF),	     rd_rm),
+ cCL(fixsz,	e100170, 2, (RR, RF),	     rd_rm),
+ cCL(fixdp,	e100130, 2, (RR, RF),	     rd_rm),
+ cCL(fixdm,	e100150, 2, (RR, RF),	     rd_rm),
+ cCL(fixdz,	e100170, 2, (RR, RF),	     rd_rm),
+ cCL(fixep,	e100130, 2, (RR, RF),	     rd_rm),
+ cCL(fixem,	e100150, 2, (RR, RF),	     rd_rm),
+ cCL(fixez,	e100170, 2, (RR, RF),	     rd_rm),
 
   /* Instructions that were new with the real FPA, call them V2.  */
 #undef ARM_VARIANT
 #define ARM_VARIANT FPU_FPA_EXT_V2
  cCE(lfm,	c100200, 3, (RF, I4b, ADDR), fpa_ldmstm),
- cC3(lfmfd,	c900200, 3, (RF, I4b, ADDR), fpa_ldmstm),
- cC3(lfmea,	d100200, 3, (RF, I4b, ADDR), fpa_ldmstm),
+ cCL(lfmfd,	c900200, 3, (RF, I4b, ADDR), fpa_ldmstm),
+ cCL(lfmea,	d100200, 3, (RF, I4b, ADDR), fpa_ldmstm),
  cCE(sfm,	c000200, 3, (RF, I4b, ADDR), fpa_ldmstm),
- cC3(sfmfd,	d000200, 3, (RF, I4b, ADDR), fpa_ldmstm),
- cC3(sfmea,	c800200, 3, (RF, I4b, ADDR), fpa_ldmstm),
+ cCL(sfmfd,	d000200, 3, (RF, I4b, ADDR), fpa_ldmstm),
+ cCL(sfmea,	c800200, 3, (RF, I4b, ADDR), fpa_ldmstm),
 
 #undef ARM_VARIANT
 #define ARM_VARIANT FPU_VFP_EXT_V1xD  /* VFP V1xD (single precision).  */
@@ -9717,7 +9735,8 @@ static const struct asm_opcode insns[] =
 #undef TUF
 #undef TCC
 #undef cCE
-#undef cC3
+#undef cCL
+#undef C3E
 #undef CE
 #undef CM
 #undef UE
Index: gas/testsuite/gas/arm/fpa-mem.d
===================================================================
RCS file: /var/cvsroot/src-cvs/src/gas/testsuite/gas/arm/fpa-mem.d,v
retrieving revision 1.5
diff -u -p -r1.5 fpa-mem.d
--- gas/testsuite/gas/arm/fpa-mem.d	2 Sep 2005 12:50:44 -0000	1.5
+++ gas/testsuite/gas/arm/fpa-mem.d	29 Sep 2005 19:11:30 -0000
@@ -31,4 +31,4 @@ Disassembly of section .text:
 0+50 <[^>]*> ed00020c ?	sfm	f0, 4, \[r0, #-48\]
 0+54 <[^>]*> ed800200 ?	sfm	f0, 4, \[r0\]
 0+58 <[^>]*> 5d800100 ?	stfpls	f0, \[r0\]
-0+5c <[^>]*> 9dc08100 ?	stflsp	f0, \[r0\]
+0+5c <[^>]*> 5d800100 ?	stfpls	f0, \[r0\]
Index: gas/testsuite/gas/arm/fpa-mem.s
===================================================================
RCS file: /var/cvsroot/src-cvs/src/gas/testsuite/gas/arm/fpa-mem.s,v
retrieving revision 1.3
diff -u -p -r1.3 fpa-mem.s
--- gas/testsuite/gas/arm/fpa-mem.s	2 Sep 2005 12:50:44 -0000	1.3
+++ gas/testsuite/gas/arm/fpa-mem.s	29 Sep 2005 19:11:55 -0000
@@ -27,8 +27,6 @@ F:
 	
 	# Test mnemonic that is ambiguous between infix and suffic
 	# condition codes
-	# sfts condition code pl
 	stfpls	f0, [r0]
 	.syntax unified
-	# stfp condition code ls
 	stfpls	f0, [r0]

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