--- /dev/null
+#objdump: -d --prefix-addresses --show-raw-insn
+#name: PR19159: RL78: zero offset omitted in DE based addressing
+
+.*: +file format .*rl78.*
+
+Disassembly of section .text:
+0x0+000 89[ ]+mov[ ]+a, \[de\]
+0x0+001 8a 00[ ]+mov[ ]+a, \[de\+0\]
+0x0+003 8a 01[ ]+mov[ ]+a, \[de\+1\]
+0x0+005 99[ ]+mov[ ]+\[de], a
+0x0+006 9a 00[ ]+mov[ ]+\[de\+0\], a
+0x0+008 9a 01[ ]+mov[ ]+\[de\+1\], a
+0x0+00a a9[ ]+movw[ ]+ax, \[de\]
+0x0+00b aa 00[ ]+movw[ ]+ax, \[de\+0\]
+0x0+00d aa 01[ ]+movw[ ]+ax, \[de\+1\]
break;
case 0xaf:
{
- /** 0110 0001 1010 1111 xch %0, %e1 */
+ /** 0110 0001 1010 1111 xch %0, %ea1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x %02x\n",
- "/** 0110 0001 1010 1111 xch %0, %e1 */",
+ "/** 0110 0001 1010 1111 xch %0, %ea1 */",
op[0], op[1]);
}
- SYNTAX("xch %0, %e1");
+ SYNTAX("xch %0, %ea1");
#line 1210 "rl78-decode.opc"
ID(xch); DR(A); SM(DE, IMMU(1));
break;
case 0x8a:
{
- /** 1000 1010 mov %0, %e1 */
+ /** 1000 1010 mov %0, %ea1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x\n",
- "/** 1000 1010 mov %0, %e1 */",
+ "/** 1000 1010 mov %0, %ea1 */",
op[0]);
}
- SYNTAX("mov %0, %e1");
+ SYNTAX("mov %0, %ea1");
#line 651 "rl78-decode.opc"
ID(mov); DR(A); SM(DE, IMMU(1));
break;
case 0x9a:
{
- /** 1001 1010 mov %e0, %1 */
+ /** 1001 1010 mov %ea0, %1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x\n",
- "/** 1001 1010 mov %e0, %1 */",
+ "/** 1001 1010 mov %ea0, %1 */",
op[0]);
}
- SYNTAX("mov %e0, %1");
+ SYNTAX("mov %ea0, %1");
#line 621 "rl78-decode.opc"
ID(mov); DM(DE, IMMU(1)); SR(A);
break;
case 0xaa:
{
- /** 1010 1010 movw %0, %e1 */
+ /** 1010 1010 movw %0, %ea1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x\n",
- "/** 1010 1010 movw %0, %e1 */",
+ "/** 1010 1010 movw %0, %ea1 */",
op[0]);
}
- SYNTAX("movw %0, %e1");
+ SYNTAX("movw %0, %ea1");
#line 841 "rl78-decode.opc"
ID(mov); W(); DR(AX); SM(DE, IMMU(1));
break;
case 0xba:
{
- /** 1011 1010 movw %e0, %1 */
+ /** 1011 1010 movw %ea0, %1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x\n",
- "/** 1011 1010 movw %e0, %1 */",
+ "/** 1011 1010 movw %ea0, %1 */",
op[0]);
}
- SYNTAX("movw %e0, %1");
+ SYNTAX("movw %ea0, %1");
#line 822 "rl78-decode.opc"
ID(mov); W(); DM(DE, IMMU(1)); SR(AX);
break;
case 0xca:
{
- /** 1100 1010 mov %e0, #%1 */
+ /** 1100 1010 mov %ea0, #%1 */
if (trace)
{
printf ("\033[33m%s\033[0m %02x\n",
- "/** 1100 1010 mov %e0, #%1 */",
+ "/** 1100 1010 mov %ea0, #%1 */",
op[0]);
}
- SYNTAX("mov %e0, #%1");
+ SYNTAX("mov %ea0, #%1");
#line 618 "rl78-decode.opc"
ID(mov); DM(DE, IMMU(1)); SC(IMMU(1));
/** 1001 1001 mov %e0, %1 */
ID(mov); DM(DE, 0); SR(A);
-/** 1100 1010 mov %e0, #%1 */
+/** 1100 1010 mov %ea0, #%1 */
ID(mov); DM(DE, IMMU(1)); SC(IMMU(1));
-/** 1001 1010 mov %e0, %1 */
+/** 1001 1010 mov %ea0, %1 */
ID(mov); DM(DE, IMMU(1)); SR(A);
/** 1001 1011 mov %e0, %1 */
/** 1000 1001 mov %0, %e1 */
ID(mov); DR(A); SM(DE, 0);
-/** 1000 1010 mov %0, %e1 */
+/** 1000 1010 mov %0, %ea1 */
ID(mov); DR(A); SM(DE, IMMU(1));
/** 1000 1011 mov %0, %e1 */
/** 1011 1001 movw %e0, %1 */
ID(mov); W(); DM(DE, 0); SR(AX);
-/** 1011 1010 movw %e0, %1 */
+/** 1011 1010 movw %ea0, %1 */
ID(mov); W(); DM(DE, IMMU(1)); SR(AX);
/** 1011 1011 movw %e0, %1 */
/** 1010 1001 movw %0, %e1 */
ID(mov); W(); DR(AX); SM(DE, 0);
-/** 1010 1010 movw %0, %e1 */
+/** 1010 1010 movw %0, %ea1 */
ID(mov); W(); DR(AX); SM(DE, IMMU(1));
/** 1010 1011 movw %0, %e1 */
/** 0110 0001 1010 1110 xch %0, %e1 */
ID(xch); DR(A); SM(DE, 0);
-/** 0110 0001 1010 1111 xch %0, %e1 */
+/** 0110 0001 1010 1111 xch %0, %ea1 */
ID(xch); DR(A); SM(DE, IMMU(1));
/** 0110 0001 1010 1100 xch %0, %e1 */