This is m68k-check.c in view mode; [Download] [Up]
#include <stdio.h> #define DREG 0x1 /* Data Register Direct */ #define AREG 0x2 /* Address Register Direct */ #define AINDR 0x4 /* Address Register Indirect */ #define AINC 0x8 /* Address Register Indirect with Postincrement */ #define ADEC 0x10 /* Address Register Indirect with Predecrement */ #define Ad16 0x20 /* Address Register Indirect with Displacement */ #define Ad8Xn 0x40 /* Address Register Indirect with Index */ /* (8-Bit Displacement) */ #define AbdXn 0x80 /* Address Register Indirect with Index */ /* (Base Displacement) */ #define MIPRE 0x100 /* Memory Indirect with Preindexed */ #define MIPOST 0x200 /* Memory Indirect with Postindexed */ #define ABSW 0x400 /* Absolute Short */ #define ABSL 0x800 /* Absolute Long */ #define IMMED 0x1000 /* Immediate */ #define PCd16 0x2000 /* Program Counter Indirect with Displacement */ #define PCd8Xn 0x4000 /* Program Counter Indirect with Index */ /* (8-Bit Displacement) */ #define PCbdXn 0x8000 /* Program Counter Indirect with Index */ /* (Base Displacement) */ #define PCMIPRE 0x10000 /* Program Counter Memory Indirect with Preindexed */ #define PCMIPOST 0x20000/* Program Counter Memory Indirect with Postindexed */ #define MOVEC_REG 0x40000 #define SPECIAL_1 0x80000 #define SPECIAL_2 0x100000 #define SPECIAL_3 0x200000 struct operand { char *string; long type; }; struct operand ops[] = { /* Dn "Data Register Direct" Dn */ { "d0", DREG }, /* An "Address Register Direct" An */ { "a1", AREG }, /* An@ "Address Register Indirect" (An) */ { "a3@", AINDR }, /* An@+ "Address Register Indirect with Postincrement" (An)+ */ { "a3@+", AINC }, /* An@- "Address Register Indirect with Predecrement" -(An) */ { "a3@-", ADEC }, /* An@(d16) "Address Register Indirect with Displacement" (d16,An) */ { "a3@(0x1234:w)", Ad16 }, /* An@(d8,Xn) "Address Register Indirect with Index (8-Bit Displacement)" uses Brief Format Extension Word (d8,An,Xn) */ #ifdef ALL_OPERANDS { "a3@(0x12:b,d2:w:1)", Ad8Xn }, { "a3@(0x12:b,d2:w:2)", Ad8Xn }, { "a3@(0x12:b,d2:w:4)", Ad8Xn }, { "a3@(0x12:b,d2:w:8)", Ad8Xn }, { "a3@(0x12:b,d2:l:1)", Ad8Xn }, { "a3@(0x12:b,d2:l:2)", Ad8Xn }, { "a3@(0x12:b,d2:l:4)", Ad8Xn }, { "a3@(0x12:b,d2:l:8)", Ad8Xn }, { "a3@(0x12:b,a5:w:1)", Ad8Xn }, { "a3@(0x12:b,a5:w:2)", Ad8Xn }, { "a3@(0x12:b,a5:w:4)", Ad8Xn }, { "a3@(0x12:b,a5:w:8)", Ad8Xn }, { "a3@(0x12:b,a5:l:1)", Ad8Xn }, { "a3@(0x12:b,a5:l:2)", Ad8Xn }, { "a3@(0x12:b,a5:l:4)", Ad8Xn }, #endif ALL_OPERANDS { "a3@(0x12:b,a5:l:8)", Ad8Xn }, /* An@(bd,Xn) "Address Register Indirect with Index (Base Displacement)", uses Full Format Extension Word(s) (bd,An,Xn) */ #ifdef ALL_OPERANDS /* the form of An@(bd,Xn) with bd (base displacement) encoded as a null displacement will not be generated by the assembler because it will use the form An(d8,Xn). { "a3@(0)", AbdXn }, { "a3@(0,d2:w:1)", AbdXn }, { "a3@(0,d2:w:2)", AbdXn }, { "a3@(0,d2:w:4)", AbdXn }, { "a3@(0,d2:w:8)", AbdXn }, { "a3@(0,d2:l:1)", AbdXn }, { "a3@(0,d2:l:2)", AbdXn }, { "a3@(0,d2:l:4)", AbdXn }, { "a3@(0,d2:l:8)", AbdXn }, { "a3@(0,a5:w:1)", AbdXn }, { "a3@(0,a5:w:2)", AbdXn }, { "a3@(0,a5:w:4)", AbdXn }, { "a3@(0,a5:w:8)", AbdXn }, { "a3@(0,a5:l:1)", AbdXn }, { "a3@(0,a5:l:2)", AbdXn }, { "a3@(0,a5:l:4)", AbdXn }, { "a3@(0,a5:l:8)", AbdXn }, */ { "a3@(0x1234:w,d2:w:1)", AbdXn }, { "a3@(0x1234:w,d2:w:2)", AbdXn }, { "a3@(0x1234:w,d2:w:4)", AbdXn }, { "a3@(0x1234:w,d2:w:8)", AbdXn }, { "a3@(0x1234:w,d2:l:1)", AbdXn }, { "a3@(0x1234:w,d2:l:2)", AbdXn }, { "a3@(0x1234:w,d2:l:4)", AbdXn }, { "a3@(0x1234:w,d2:l:8)", AbdXn }, { "a3@(0x1234:w,a5:w:1)", AbdXn }, { "a3@(0x1234:w,a5:w:2)", AbdXn }, { "a3@(0x1234:w,a5:w:4)", AbdXn }, { "a3@(0x1234:w,a5:w:8)", AbdXn }, { "a3@(0x1234:w,a5:l:1)", AbdXn }, { "a3@(0x1234:w,a5:l:2)", AbdXn }, { "a3@(0x1234:w,a5:l:4)", AbdXn }, { "a3@(0x1234:w,a5:l:8)", AbdXn }, { "a3@(0x1234abcd:l,d2:w:1)", AbdXn }, { "a3@(0x1234abcd:l,d2:w:2)", AbdXn }, { "a3@(0x1234abcd:l,d2:w:4)", AbdXn }, { "a3@(0x1234abcd:l,d2:w:8)", AbdXn }, { "a3@(0x1234abcd:l,d2:l:1)", AbdXn }, { "a3@(0x1234abcd:l,d2:l:2)", AbdXn }, { "a3@(0x1234abcd:l,d2:l:4)", AbdXn }, { "a3@(0x1234abcd:l,d2:l:8)", AbdXn }, { "a3@(0x1234abcd:l,a5:w:1)", AbdXn }, { "a3@(0x1234abcd:l,a5:w:2)", AbdXn }, { "a3@(0x1234abcd:l,a5:w:4)", AbdXn }, { "a3@(0x1234abcd:l,a5:w:8)", AbdXn }, { "a3@(0x1234abcd:l,a5:l:1)", AbdXn }, { "a3@(0x1234abcd:l,a5:l:2)", AbdXn }, { "a3@(0x1234abcd:l,a5:l:4)", AbdXn }, #endif ALL_OPERANDS { "a3@(0x1234abcd:l,a5:l:8)", AbdXn }, #ifdef ALL_OPERANDS { "@(0)", AbdXn }, { "@(0,d2:w:1)", AbdXn }, { "@(0,d2:w:2)", AbdXn }, { "@(0,d2:w:4)", AbdXn }, { "@(0,d2:w:8)", AbdXn }, { "@(0,d2:l:1)", AbdXn }, { "@(0,d2:l:2)", AbdXn }, { "@(0,d2:l:4)", AbdXn }, { "@(0,d2:l:8)", AbdXn }, { "@(0,a5:w:1)", AbdXn }, { "@(0,a5:w:2)", AbdXn }, { "@(0,a5:w:4)", AbdXn }, { "@(0,a5:w:8)", AbdXn }, { "@(0,a5:l:1)", AbdXn }, { "@(0,a5:l:2)", AbdXn }, { "@(0,a5:l:4)", AbdXn }, { "@(0,a5:l:8)", AbdXn }, { "@(0x1234:w,d2:w:1)", AbdXn }, { "@(0x1234:w,d2:w:2)", AbdXn }, { "@(0x1234:w,d2:w:4)", AbdXn }, { "@(0x1234:w,d2:w:8)", AbdXn }, { "@(0x1234:w,d2:l:1)", AbdXn }, { "@(0x1234:w,d2:l:2)", AbdXn }, { "@(0x1234:w,d2:l:4)", AbdXn }, { "@(0x1234:w,d2:l:8)", AbdXn }, { "@(0x1234:w,a5:w:1)", AbdXn }, { "@(0x1234:w,a5:w:2)", AbdXn }, { "@(0x1234:w,a5:w:4)", AbdXn }, { "@(0x1234:w,a5:w:8)", AbdXn }, { "@(0x1234:w,a5:l:1)", AbdXn }, { "@(0x1234:w,a5:l:2)", AbdXn }, { "@(0x1234:w,a5:l:4)", AbdXn }, { "@(0x1234:w,a5:l:8)", AbdXn }, { "@(0x1234abcd:l,d2:w:1)", AbdXn }, { "@(0x1234abcd:l,d2:w:2)", AbdXn }, { "@(0x1234abcd:l,d2:w:4)", AbdXn }, { "@(0x1234abcd:l,d2:w:8)", AbdXn }, { "@(0x1234abcd:l,d2:l:1)", AbdXn }, { "@(0x1234abcd:l,d2:l:2)", AbdXn }, { "@(0x1234abcd:l,d2:l:4)", AbdXn }, { "@(0x1234abcd:l,d2:l:8)", AbdXn }, { "@(0x1234abcd:l,a5:w:1)", AbdXn }, { "@(0x1234abcd:l,a5:w:2)", AbdXn }, { "@(0x1234abcd:l,a5:w:4)", AbdXn }, { "@(0x1234abcd:l,a5:w:8)", AbdXn }, { "@(0x1234abcd:l,a5:l:1)", AbdXn }, { "@(0x1234abcd:l,a5:l:2)", AbdXn }, { "@(0x1234abcd:l,a5:l:4)", AbdXn }, { "@(0x1234abcd:l,a5:l:8)", AbdXn }, #endif ALL_OPERANDS /* An@(bd,Xn)@(od) "Memory Indirect with Preindexed" ([bd,An,Xn],od) uses Full Format Extension Word(s) */ #ifdef ALL_OPERANDS { "a3@(0)@(0)", MIPRE }, { "a3@(0,d2:w:1)@(0)", MIPRE }, { "a3@(0,d2:w:2)@(0)", MIPRE }, { "a3@(0,d2:w:4)@(0)", MIPRE }, { "a3@(0,d2:w:8)@(0)", MIPRE }, { "a3@(0,d2:l:1)@(0)", MIPRE }, { "a3@(0,d2:l:2)@(0)", MIPRE }, { "a3@(0,d2:l:4)@(0)", MIPRE }, { "a3@(0,d2:l:8)@(0)", MIPRE }, { "a3@(0,a5:w:1)@(0)", MIPRE }, { "a3@(0,a5:w:2)@(0)", MIPRE }, { "a3@(0,a5:w:4)@(0)", MIPRE }, { "a3@(0,a5:w:8)@(0)", MIPRE }, { "a3@(0,a5:l:1)@(0)", MIPRE }, { "a3@(0,a5:l:2)@(0)", MIPRE }, { "a3@(0,a5:l:4)@(0)", MIPRE }, { "a3@(0,a5:l:8)@(0)", MIPRE }, { "a3@(0x1234:w,d2:w:1)@(0)", MIPRE }, { "a3@(0x1234:w,d2:w:2)@(0)", MIPRE }, { "a3@(0x1234:w,d2:w:4)@(0)", MIPRE }, { "a3@(0x1234:w,d2:w:8)@(0)", MIPRE }, { "a3@(0x1234:w,d2:l:1)@(0)", MIPRE }, { "a3@(0x1234:w,d2:l:2)@(0)", MIPRE }, { "a3@(0x1234:w,d2:l:4)@(0)", MIPRE }, { "a3@(0x1234:w,d2:l:8)@(0)", MIPRE }, { "a3@(0x1234:w,a5:w:1)@(0)", MIPRE }, { "a3@(0x1234:w,a5:w:2)@(0)", MIPRE }, { "a3@(0x1234:w,a5:w:4)@(0)", MIPRE }, { "a3@(0x1234:w,a5:w:8)@(0)", MIPRE }, { "a3@(0x1234:w,a5:l:1)@(0)", MIPRE }, { "a3@(0x1234:w,a5:l:2)@(0)", MIPRE }, { "a3@(0x1234:w,a5:l:4)@(0)", MIPRE }, { "a3@(0x1234:w,a5:l:8)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:1)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:2)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:4)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:8)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:1)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:2)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:4)@(0)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:8)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:1)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:2)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:4)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:8)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:1)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:2)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:4)@(0)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:8)@(0)", MIPRE }, { "@(0)@(0)", MIPRE }, { "@(0,d2:w:1)@(0)", MIPRE }, { "@(0,d2:w:2)@(0)", MIPRE }, { "@(0,d2:w:4)@(0)", MIPRE }, { "@(0,d2:w:8)@(0)", MIPRE }, { "@(0,d2:l:1)@(0)", MIPRE }, { "@(0,d2:l:2)@(0)", MIPRE }, { "@(0,d2:l:4)@(0)", MIPRE }, { "@(0,d2:l:8)@(0)", MIPRE }, { "@(0,a5:w:1)@(0)", MIPRE }, { "@(0,a5:w:2)@(0)", MIPRE }, { "@(0,a5:w:4)@(0)", MIPRE }, { "@(0,a5:w:8)@(0)", MIPRE }, { "@(0,a5:l:1)@(0)", MIPRE }, { "@(0,a5:l:2)@(0)", MIPRE }, { "@(0,a5:l:4)@(0)", MIPRE }, { "@(0,a5:l:8)@(0)", MIPRE }, { "@(0x1234:w,d2:w:1)@(0)", MIPRE }, { "@(0x1234:w,d2:w:2)@(0)", MIPRE }, { "@(0x1234:w,d2:w:4)@(0)", MIPRE }, { "@(0x1234:w,d2:w:8)@(0)", MIPRE }, { "@(0x1234:w,d2:l:1)@(0)", MIPRE }, { "@(0x1234:w,d2:l:2)@(0)", MIPRE }, { "@(0x1234:w,d2:l:4)@(0)", MIPRE }, { "@(0x1234:w,d2:l:8)@(0)", MIPRE }, { "@(0x1234:w,a5:w:1)@(0)", MIPRE }, { "@(0x1234:w,a5:w:2)@(0)", MIPRE }, { "@(0x1234:w,a5:w:4)@(0)", MIPRE }, { "@(0x1234:w,a5:w:8)@(0)", MIPRE }, { "@(0x1234:w,a5:l:1)@(0)", MIPRE }, { "@(0x1234:w,a5:l:2)@(0)", MIPRE }, { "@(0x1234:w,a5:l:4)@(0)", MIPRE }, { "@(0x1234:w,a5:l:8)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:w:1)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:w:2)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:w:4)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:w:8)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:l:1)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:l:2)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:l:4)@(0)", MIPRE }, { "@(0x1234abcd:l,d2:l:8)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:w:1)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:w:2)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:w:4)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:w:8)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:l:1)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:l:2)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:l:4)@(0)", MIPRE }, { "@(0x1234abcd:l,a5:l:8)@(0)", MIPRE }, { "a3@(0)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0,d2:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0,a5:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,d2:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234:w,a5:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:8)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:1)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:2)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:4)@(0xfeed:w)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:8)@(0xfeed:w)", MIPRE }, { "@(0)@(0xfeed:w)", MIPRE }, { "@(0,d2:w:1)@(0xfeed:w)", MIPRE }, { "@(0,d2:w:2)@(0xfeed:w)", MIPRE }, { "@(0,d2:w:4)@(0xfeed:w)", MIPRE }, { "@(0,d2:w:8)@(0xfeed:w)", MIPRE }, { "@(0,d2:l:1)@(0xfeed:w)", MIPRE }, { "@(0,d2:l:2)@(0xfeed:w)", MIPRE }, { "@(0,d2:l:4)@(0xfeed:w)", MIPRE }, { "@(0,d2:l:8)@(0xfeed:w)", MIPRE }, { "@(0,a5:w:1)@(0xfeed:w)", MIPRE }, { "@(0,a5:w:2)@(0xfeed:w)", MIPRE }, { "@(0,a5:w:4)@(0xfeed:w)", MIPRE }, { "@(0,a5:w:8)@(0xfeed:w)", MIPRE }, { "@(0,a5:l:1)@(0xfeed:w)", MIPRE }, { "@(0,a5:l:2)@(0xfeed:w)", MIPRE }, { "@(0,a5:l:4)@(0xfeed:w)", MIPRE }, { "@(0,a5:l:8)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:w:1)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:w:2)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:w:4)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:w:8)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:l:1)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:l:2)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:l:4)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,d2:l:8)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:w:1)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:w:2)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:w:4)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:w:8)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:l:1)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:l:2)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:l:4)@(0xfeed:w)", MIPRE }, { "@(0x1234:w,a5:l:8)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:w:1)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:w:2)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:w:4)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:w:8)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:l:1)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:l:2)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:l:4)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,d2:l:8)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:w:1)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:w:2)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:w:4)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:w:8)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:l:1)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:l:2)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:l:4)@(0xfeed:w)", MIPRE }, { "@(0x1234abcd:l,a5:l:8)@(0xfeed:w)", MIPRE }, { "a3@(0)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:l:4)@(0xfeedface:l)", MIPRE }, { "a3@(0,d2:l:8)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:l:4)@(0xfeedface:l)", MIPRE }, { "a3@(0,a5:l:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:l:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,d2:l:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:l:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234:w,a5:l:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,d2:l:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:4)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:w:8)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:1)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:2)@(0xfeedface:l)", MIPRE }, { "a3@(0x1234abcd:l,a5:l:4)@(0xfeedface:l)", MIPRE }, #endif ALL_OPERANDS { "a3@(0x1234abcd:l,a5:l:8)@(0xfeedface:l)", MIPRE }, #ifdef ALL_OPERANDS { "@(0)@(0xfeedface:l)", MIPRE }, { "@(0,d2:w:1)@(0xfeedface:l)", MIPRE }, { "@(0,d2:w:2)@(0xfeedface:l)", MIPRE }, { "@(0,d2:w:4)@(0xfeedface:l)", MIPRE }, { "@(0,d2:w:8)@(0xfeedface:l)", MIPRE }, { "@(0,d2:l:1)@(0xfeedface:l)", MIPRE }, { "@(0,d2:l:2)@(0xfeedface:l)", MIPRE }, { "@(0,d2:l:4)@(0xfeedface:l)", MIPRE }, { "@(0,d2:l:8)@(0xfeedface:l)", MIPRE }, { "@(0,a5:w:1)@(0xfeedface:l)", MIPRE }, { "@(0,a5:w:2)@(0xfeedface:l)", MIPRE }, { "@(0,a5:w:4)@(0xfeedface:l)", MIPRE }, { "@(0,a5:w:8)@(0xfeedface:l)", MIPRE }, { "@(0,a5:l:1)@(0xfeedface:l)", MIPRE }, { "@(0,a5:l:2)@(0xfeedface:l)", MIPRE }, { "@(0,a5:l:4)@(0xfeedface:l)", MIPRE }, { "@(0,a5:l:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:w:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:w:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:w:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:w:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:l:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:l:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:l:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,d2:l:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:w:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:w:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:w:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:w:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:l:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:l:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:l:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234:w,a5:l:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:w:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:w:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:w:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:w:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:l:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:l:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:l:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,d2:l:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:w:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:w:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:w:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:w:8)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:l:1)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:l:2)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:l:4)@(0xfeedface:l)", MIPRE }, { "@(0x1234abcd:l,a5:l:8)@(0xfeedface:l)", MIPRE }, #endif ALL_OPERANDS /* An@(bd)@(od,Xn) "Memory Indirect with Postindexed" ([bd,An],Xn,od) uses Full Format Extension Word(s) */ #ifdef ALL_OPERANDS { "a3@(0)@(0)", MIPOST }, { "a3@(0)@(0,d2:w:1)", MIPOST }, { "a3@(0)@(0,d2:w:2)", MIPOST }, { "a3@(0)@(0,d2:w:4)", MIPOST }, { "a3@(0)@(0,d2:w:8)", MIPOST }, { "a3@(0)@(0,d2:l:1)", MIPOST }, { "a3@(0)@(0,d2:l:2)", MIPOST }, { "a3@(0)@(0,d2:l:4)", MIPOST }, { "a3@(0)@(0,d2:l:8)", MIPOST }, { "a3@(0)@(0,a5:w:1)", MIPOST }, { "a3@(0)@(0,a5:w:2)", MIPOST }, { "a3@(0)@(0,a5:w:4)", MIPOST }, { "a3@(0)@(0,a5:w:8)", MIPOST }, { "a3@(0)@(0,a5:l:1)", MIPOST }, { "a3@(0)@(0,a5:l:2)", MIPOST }, { "a3@(0)@(0,a5:l:4)", MIPOST }, { "a3@(0)@(0,a5:l:8)", MIPOST }, { "a3@(0x1234:w)@(0,d2:w:1)", MIPOST }, { "a3@(0x1234:w)@(0,d2:w:2)", MIPOST }, { "a3@(0x1234:w)@(0,d2:w:4)", MIPOST }, { "a3@(0x1234:w)@(0,d2:w:8)", MIPOST }, { "a3@(0x1234:w)@(0,d2:l:1)", MIPOST }, { "a3@(0x1234:w)@(0,d2:l:2)", MIPOST }, { "a3@(0x1234:w)@(0,d2:l:4)", MIPOST }, { "a3@(0x1234:w)@(0,d2:l:8)", MIPOST }, { "a3@(0x1234:w)@(0,a5:w:1)", MIPOST }, { "a3@(0x1234:w)@(0,a5:w:2)", MIPOST }, { "a3@(0x1234:w)@(0,a5:w:4)", MIPOST }, { "a3@(0x1234:w)@(0,a5:w:8)", MIPOST }, { "a3@(0x1234:w)@(0,a5:l:1)", MIPOST }, { "a3@(0x1234:w)@(0,a5:l:2)", MIPOST }, { "a3@(0x1234:w)@(0,a5:l:4)", MIPOST }, { "a3@(0x1234:w)@(0,a5:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:l:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0,d2:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:l:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0,a5:l:8)", MIPOST }, { "@(0)@(0)", MIPOST }, { "@(0)@(0,d2:w:1)", MIPOST }, { "@(0)@(0,d2:w:2)", MIPOST }, { "@(0)@(0,d2:w:4)", MIPOST }, { "@(0)@(0,d2:w:8)", MIPOST }, { "@(0)@(0,d2:l:1)", MIPOST }, { "@(0)@(0,d2:l:2)", MIPOST }, { "@(0)@(0,d2:l:4)", MIPOST }, { "@(0)@(0,d2:l:8)", MIPOST }, { "@(0)@(0,a5:w:1)", MIPOST }, { "@(0)@(0,a5:w:2)", MIPOST }, { "@(0)@(0,a5:w:4)", MIPOST }, { "@(0)@(0,a5:w:8)", MIPOST }, { "@(0)@(0,a5:l:1)", MIPOST }, { "@(0)@(0,a5:l:2)", MIPOST }, { "@(0)@(0,a5:l:4)", MIPOST }, { "@(0)@(0,a5:l:8)", MIPOST }, { "@(0x1234:w)@(0,d2:w:1)", MIPOST }, { "@(0x1234:w)@(0,d2:w:2)", MIPOST }, { "@(0x1234:w)@(0,d2:w:4)", MIPOST }, { "@(0x1234:w)@(0,d2:w:8)", MIPOST }, { "@(0x1234:w)@(0,d2:l:1)", MIPOST }, { "@(0x1234:w)@(0,d2:l:2)", MIPOST }, { "@(0x1234:w)@(0,d2:l:4)", MIPOST }, { "@(0x1234:w)@(0,d2:l:8)", MIPOST }, { "@(0x1234:w)@(0,a5:w:1)", MIPOST }, { "@(0x1234:w)@(0,a5:w:2)", MIPOST }, { "@(0x1234:w)@(0,a5:w:4)", MIPOST }, { "@(0x1234:w)@(0,a5:w:8)", MIPOST }, { "@(0x1234:w)@(0,a5:l:1)", MIPOST }, { "@(0x1234:w)@(0,a5:l:2)", MIPOST }, { "@(0x1234:w)@(0,a5:l:4)", MIPOST }, { "@(0x1234:w)@(0,a5:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0,d2:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0,a5:l:8)", MIPOST }, { "a3@(0)@(0xfeed:w)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:w:1)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:w:2)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:w:4)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:w:8)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:l:1)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:l:2)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:l:4)", MIPOST }, { "a3@(0)@(0xfeed:w,d2:l:8)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:w:1)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:w:2)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:w:4)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:w:8)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:l:1)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:l:2)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:l:4)", MIPOST }, { "a3@(0)@(0xfeed:w,a5:l:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:w:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:w:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:w:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:w:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:l:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:l:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:l:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,d2:l:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:w:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:w:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:w:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:w:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:l:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:l:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:l:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeed:w,a5:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:l:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,d2:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:l:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeed:w,a5:l:8)", MIPOST }, { "@(0)@(0xfeed:w)", MIPOST }, { "@(0)@(0xfeed:w,d2:w:1)", MIPOST }, { "@(0)@(0xfeed:w,d2:w:2)", MIPOST }, { "@(0)@(0xfeed:w,d2:w:4)", MIPOST }, { "@(0)@(0xfeed:w,d2:w:8)", MIPOST }, { "@(0)@(0xfeed:w,d2:l:1)", MIPOST }, { "@(0)@(0xfeed:w,d2:l:2)", MIPOST }, { "@(0)@(0xfeed:w,d2:l:4)", MIPOST }, { "@(0)@(0xfeed:w,d2:l:8)", MIPOST }, { "@(0)@(0xfeed:w,a5:w:1)", MIPOST }, { "@(0)@(0xfeed:w,a5:w:2)", MIPOST }, { "@(0)@(0xfeed:w,a5:w:4)", MIPOST }, { "@(0)@(0xfeed:w,a5:w:8)", MIPOST }, { "@(0)@(0xfeed:w,a5:l:1)", MIPOST }, { "@(0)@(0xfeed:w,a5:l:2)", MIPOST }, { "@(0)@(0xfeed:w,a5:l:4)", MIPOST }, { "@(0)@(0xfeed:w,a5:l:8)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:w:1)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:w:2)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:w:4)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:w:8)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:l:1)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:l:2)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:l:4)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,d2:l:8)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:w:1)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:w:2)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:w:4)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:w:8)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:l:1)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:l:2)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:l:4)", MIPOST }, { "@(0x1234:w)@(0xfeed:w,a5:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,d2:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeed:w,a5:l:8)", MIPOST }, { "a3@(0)@(0xfeedface:l)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:w:1)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:w:2)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:w:4)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:w:8)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:l:1)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:l:2)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:l:4)", MIPOST }, { "a3@(0)@(0xfeedface:l,d2:l:8)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:w:1)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:w:2)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:w:4)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:w:8)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:l:1)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:l:2)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:l:4)", MIPOST }, { "a3@(0)@(0xfeedface:l,a5:l:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:w:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:w:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:w:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:w:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:l:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:l:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:l:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,d2:l:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:w:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:w:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:w:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:w:8)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:l:1)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:l:2)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:l:4)", MIPOST }, { "a3@(0x1234:w)@(0xfeedface:l,a5:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:l:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,d2:l:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:w:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:w:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:w:4)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:w:8)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:l:1)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:l:2)", MIPOST }, { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:l:4)", MIPOST }, #endif ALL_OPERANDS { "a3@(0x1234abcd:l)@(0xfeedface:l,a5:l:8)", MIPOST }, #ifdef ALL_OPERANDS { "@(0)@(0xfeedface:l)", MIPOST }, { "@(0)@(0xfeedface:l,d2:w:1)", MIPOST }, { "@(0)@(0xfeedface:l,d2:w:2)", MIPOST }, { "@(0)@(0xfeedface:l,d2:w:4)", MIPOST }, { "@(0)@(0xfeedface:l,d2:w:8)", MIPOST }, { "@(0)@(0xfeedface:l,d2:l:1)", MIPOST }, { "@(0)@(0xfeedface:l,d2:l:2)", MIPOST }, { "@(0)@(0xfeedface:l,d2:l:4)", MIPOST }, { "@(0)@(0xfeedface:l,d2:l:8)", MIPOST }, { "@(0)@(0xfeedface:l,a5:w:1)", MIPOST }, { "@(0)@(0xfeedface:l,a5:w:2)", MIPOST }, { "@(0)@(0xfeedface:l,a5:w:4)", MIPOST }, { "@(0)@(0xfeedface:l,a5:w:8)", MIPOST }, { "@(0)@(0xfeedface:l,a5:l:1)", MIPOST }, { "@(0)@(0xfeedface:l,a5:l:2)", MIPOST }, { "@(0)@(0xfeedface:l,a5:l:4)", MIPOST }, { "@(0)@(0xfeedface:l,a5:l:8)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:w:1)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:w:2)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:w:4)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:w:8)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:l:1)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:l:2)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:l:4)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,d2:l:8)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:w:1)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:w:2)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:w:4)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:w:8)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:l:1)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:l:2)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:l:4)", MIPOST }, { "@(0x1234:w)@(0xfeedface:l,a5:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,d2:l:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:w:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:w:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:w:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:w:8)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:l:1)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:l:2)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:l:4)", MIPOST }, { "@(0x1234abcd:l)@(0xfeedface:l,a5:l:8)", MIPOST }, #endif ALL_OPERANDS /* xxx:w "Absolute Short" (xxx).W */ { "0x1bad:w", ABSW }, /* xxx:l "Absolute Long" (xxx).L */ { "0xbad1add2:l", ABSL }, /* #data "Immediate" #<data> */ { "#0x3", IMMED }, /* pc@(d16) "Program Counter Indirect with Displacement" (d16,PC) { "pc@(0x1234)", PCd16 }, /* pc@(d8,Xn) "Program Counter Indirect with Index (8-Bit Displacement)" uses Brief Format Extension Word (d8,PC,Xn) */ #ifdef ALL_OPERANDS { "pc@(0x12:b,d2:w:1)", PCd8Xn }, { "pc@(0x12:b,d2:w:2)", PCd8Xn }, { "pc@(0x12:b,d2:w:4)", PCd8Xn }, { "pc@(0x12:b,d2:w:8)", PCd8Xn }, { "pc@(0x12:b,d2:l:1)", PCd8Xn }, { "pc@(0x12:b,d2:l:2)", PCd8Xn }, { "pc@(0x12:b,d2:l:4)", PCd8Xn }, { "pc@(0x12:b,d2:l:8)", PCd8Xn }, { "pc@(0x12:b,a5:w:1)", PCd8Xn }, { "pc@(0x12:b,a5:w:2)", PCd8Xn }, { "pc@(0x12:b,a5:w:4)", PCd8Xn }, { "pc@(0x12:b,a5:w:8)", PCd8Xn }, { "pc@(0x12:b,a5:l:1)", PCd8Xn }, { "pc@(0x12:b,a5:l:2)", PCd8Xn }, { "pc@(0x12:b,a5:l:4)", PCd8Xn }, #endif ALL_OPERANDS { "pc@(0x12:b,a5:l:8)", PCd8Xn }, /* pc@(bd,Xn) "Program Counter Indirect with Index (Base Displacement)" uses Full Format Extension Word(s) (bd,PC,Xn) */ #ifdef ALL_OPERANDS /* the form of pc@(bd,Xn) with bd (base displacement) encoded as a null displacement will not be generated by the assembler because it will use the form pc(d8,Xn). { "pc@(0)", PCbdXn }, { "pc@(0,d2:w:1)", PCbdXn }, { "pc@(0,d2:w:2)", PCbdXn }, { "pc@(0,d2:w:4)", PCbdXn }, { "pc@(0,d2:w:8)", PCbdXn }, { "pc@(0,d2:l:1)", PCbdXn }, { "pc@(0,d2:l:2)", PCbdXn }, { "pc@(0,d2:l:4)", PCbdXn }, { "pc@(0,d2:l:8)", PCbdXn }, { "pc@(0,a5:w:1)", PCbdXn }, { "pc@(0,a5:w:2)", PCbdXn }, { "pc@(0,a5:w:4)", PCbdXn }, { "pc@(0,a5:w:8)", PCbdXn }, { "pc@(0,a5:l:1)", PCbdXn }, { "pc@(0,a5:l:2)", PCbdXn }, { "pc@(0,a5:l:4)", PCbdXn }, { "pc@(0,a5:l:8)", PCbdXn }, */ { "pc@(0x1234:w,d2:w:1)", PCbdXn }, { "pc@(0x1234:w,d2:w:2)", PCbdXn }, { "pc@(0x1234:w,d2:w:4)", PCbdXn }, { "pc@(0x1234:w,d2:w:8)", PCbdXn }, { "pc@(0x1234:w,d2:l:1)", PCbdXn }, { "pc@(0x1234:w,d2:l:2)", PCbdXn }, { "pc@(0x1234:w,d2:l:4)", PCbdXn }, { "pc@(0x1234:w,d2:l:8)", PCbdXn }, { "pc@(0x1234:w,a5:w:1)", PCbdXn }, { "pc@(0x1234:w,a5:w:2)", PCbdXn }, { "pc@(0x1234:w,a5:w:4)", PCbdXn }, { "pc@(0x1234:w,a5:w:8)", PCbdXn }, { "pc@(0x1234:w,a5:l:1)", PCbdXn }, { "pc@(0x1234:w,a5:l:2)", PCbdXn }, { "pc@(0x1234:w,a5:l:4)", PCbdXn }, { "pc@(0x1234:w,a5:l:8)", PCbdXn }, { "pc@(0x1234abcd:l,d2:w:1)", PCbdXn }, { "pc@(0x1234abcd:l,d2:w:2)", PCbdXn }, { "pc@(0x1234abcd:l,d2:w:4)", PCbdXn }, { "pc@(0x1234abcd:l,d2:w:8)", PCbdXn }, { "pc@(0x1234abcd:l,d2:l:1)", PCbdXn }, { "pc@(0x1234abcd:l,d2:l:2)", PCbdXn }, { "pc@(0x1234abcd:l,d2:l:4)", PCbdXn }, { "pc@(0x1234abcd:l,d2:l:8)", PCbdXn }, { "pc@(0x1234abcd:l,a5:w:1)", PCbdXn }, { "pc@(0x1234abcd:l,a5:w:2)", PCbdXn }, { "pc@(0x1234abcd:l,a5:w:4)", PCbdXn }, { "pc@(0x1234abcd:l,a5:w:8)", PCbdXn }, { "pc@(0x1234abcd:l,a5:l:1)", PCbdXn }, { "pc@(0x1234abcd:l,a5:l:2)", PCbdXn }, { "pc@(0x1234abcd:l,a5:l:4)", PCbdXn }, #endif ALL_OPERANDS { "pc@(0x1234abcd:l,a5:l:8)", PCbdXn }, #ifdef ALL_OPERANDS { "zpc@(0)", PCbdXn }, { "zpc@(0,d2:w:1)", PCbdXn }, { "zpc@(0,d2:w:2)", PCbdXn }, { "zpc@(0,d2:w:4)", PCbdXn }, { "zpc@(0,d2:w:8)", PCbdXn }, { "zpc@(0,d2:l:1)", PCbdXn }, { "zpc@(0,d2:l:2)", PCbdXn }, { "zpc@(0,d2:l:4)", PCbdXn }, { "zpc@(0,d2:l:8)", PCbdXn }, { "zpc@(0,a5:w:1)", PCbdXn }, { "zpc@(0,a5:w:2)", PCbdXn }, { "zpc@(0,a5:w:4)", PCbdXn }, { "zpc@(0,a5:w:8)", PCbdXn }, { "zpc@(0,a5:l:1)", PCbdXn }, { "zpc@(0,a5:l:2)", PCbdXn }, { "zpc@(0,a5:l:4)", PCbdXn }, { "zpc@(0,a5:l:8)", PCbdXn }, { "zpc@(0x1234:w,d2:w:1)", PCbdXn }, { "zpc@(0x1234:w,d2:w:2)", PCbdXn }, { "zpc@(0x1234:w,d2:w:4)", PCbdXn }, { "zpc@(0x1234:w,d2:w:8)", PCbdXn }, { "zpc@(0x1234:w,d2:l:1)", PCbdXn }, { "zpc@(0x1234:w,d2:l:2)", PCbdXn }, { "zpc@(0x1234:w,d2:l:4)", PCbdXn }, { "zpc@(0x1234:w,d2:l:8)", PCbdXn }, { "zpc@(0x1234:w,a5:w:1)", PCbdXn }, { "zpc@(0x1234:w,a5:w:2)", PCbdXn }, { "zpc@(0x1234:w,a5:w:4)", PCbdXn }, { "zpc@(0x1234:w,a5:w:8)", PCbdXn }, { "zpc@(0x1234:w,a5:l:1)", PCbdXn }, { "zpc@(0x1234:w,a5:l:2)", PCbdXn }, { "zpc@(0x1234:w,a5:l:4)", PCbdXn }, { "zpc@(0x1234:w,a5:l:8)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:w:1)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:w:2)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:w:4)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:w:8)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:l:1)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:l:2)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:l:4)", PCbdXn }, { "zpc@(0x1234abcd:l,d2:l:8)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:w:1)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:w:2)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:w:4)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:w:8)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:l:1)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:l:2)", PCbdXn }, { "zpc@(0x1234abcd:l,a5:l:4)", PCbdXn }, #endif ALL_OPERANDS { "zpc@(0x1234abcd:l,a5:l:8)", PCbdXn }, /* pc@(bd,Xn)@(od) "Program Counter Memory Indirect with Preindexed" uses Full Format Extension Word(s) ([bd,PC,Xn],od) */ #ifdef ALL_OPERANDS { "pc@(0)@(0)", PCMIPRE }, { "pc@(0,d2:w:1)@(0)", PCMIPRE }, { "pc@(0,d2:w:2)@(0)", PCMIPRE }, { "pc@(0,d2:w:4)@(0)", PCMIPRE }, { "pc@(0,d2:w:8)@(0)", PCMIPRE }, { "pc@(0,d2:l:1)@(0)", PCMIPRE }, { "pc@(0,d2:l:2)@(0)", PCMIPRE }, { "pc@(0,d2:l:4)@(0)", PCMIPRE }, { "pc@(0,d2:l:8)@(0)", PCMIPRE }, { "pc@(0,a5:w:1)@(0)", PCMIPRE }, { "pc@(0,a5:w:2)@(0)", PCMIPRE }, { "pc@(0,a5:w:4)@(0)", PCMIPRE }, { "pc@(0,a5:w:8)@(0)", PCMIPRE }, { "pc@(0,a5:l:1)@(0)", PCMIPRE }, { "pc@(0,a5:l:2)@(0)", PCMIPRE }, { "pc@(0,a5:l:4)@(0)", PCMIPRE }, { "pc@(0,a5:l:8)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:w:1)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:w:2)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:w:4)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:w:8)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:l:1)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:l:2)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:l:4)@(0)", PCMIPRE }, { "pc@(0x1234:w,d2:l:8)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:w:1)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:w:2)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:w:4)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:w:8)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:l:1)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:l:2)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:l:4)@(0)", PCMIPRE }, { "pc@(0x1234:w,a5:l:8)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:1)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:2)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:4)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:8)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:1)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:2)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:4)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:8)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:1)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:2)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:4)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:8)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:1)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:2)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:4)@(0)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:8)@(0)", PCMIPRE }, { "zpc@(0)@(0)", PCMIPRE }, { "zpc@(0,d2:w:1)@(0)", PCMIPRE }, { "zpc@(0,d2:w:2)@(0)", PCMIPRE }, { "zpc@(0,d2:w:4)@(0)", PCMIPRE }, { "zpc@(0,d2:w:8)@(0)", PCMIPRE }, { "zpc@(0,d2:l:1)@(0)", PCMIPRE }, { "zpc@(0,d2:l:2)@(0)", PCMIPRE }, { "zpc@(0,d2:l:4)@(0)", PCMIPRE }, { "zpc@(0,d2:l:8)@(0)", PCMIPRE }, { "zpc@(0,a5:w:1)@(0)", PCMIPRE }, { "zpc@(0,a5:w:2)@(0)", PCMIPRE }, { "zpc@(0,a5:w:4)@(0)", PCMIPRE }, { "zpc@(0,a5:w:8)@(0)", PCMIPRE }, { "zpc@(0,a5:l:1)@(0)", PCMIPRE }, { "zpc@(0,a5:l:2)@(0)", PCMIPRE }, { "zpc@(0,a5:l:4)@(0)", PCMIPRE }, { "zpc@(0,a5:l:8)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:1)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:2)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:4)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:8)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:1)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:2)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:4)@(0)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:8)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:1)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:2)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:4)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:8)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:1)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:2)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:4)@(0)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:8)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:1)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:2)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:4)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:8)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:1)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:2)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:4)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:8)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:1)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:2)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:4)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:8)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:1)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:2)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:4)@(0)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:8)@(0)", PCMIPRE }, { "pc@(0)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234:w,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:8)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:1)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:2)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:4)@(0xfeed:w)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:8)@(0xfeed:w)", PCMIPRE }, { "pc@(0)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:l:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0,a5:l:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:l:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234:w,a5:l:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "pc@(0x1234abcd:l,a5:l:4)@(0xfeedface:l)", PCMIPRE }, #endif ALL_OPERANDS { "pc@(0x1234abcd:l,a5:l:8)@(0xfeedface:l)", PCMIPRE }, #ifdef ALL_OPERANDS { "zpc@(0)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:l:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0,a5:l:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234:w,a5:l:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,d2:l:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:4)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:w:8)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:1)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:2)@(0xfeedface:l)", PCMIPRE }, { "zpc@(0x1234abcd:l,a5:l:4)@(0xfeedface:l)", PCMIPRE }, #endif ALL_OPERANDS { "zpc@(0x1234abcd:l,a5:l:8)@(0xfeedface:l)", PCMIPRE }, /* pc@(bd)@(od,Xn) "Program Counter Memory Indirect with Postindexed" uses Full Format Extension Word(s) ([bd,PC],Xn,od) */ #ifdef ALL_OPERANDS { "pc@(0)@(0)", PCMIPOST }, { "pc@(0)@(0,d2:w:1)", PCMIPOST }, { "pc@(0)@(0,d2:w:2)", PCMIPOST }, { "pc@(0)@(0,d2:w:4)", PCMIPOST }, { "pc@(0)@(0,d2:w:8)", PCMIPOST }, { "pc@(0)@(0,d2:l:1)", PCMIPOST }, { "pc@(0)@(0,d2:l:2)", PCMIPOST }, { "pc@(0)@(0,d2:l:4)", PCMIPOST }, { "pc@(0)@(0,d2:l:8)", PCMIPOST }, { "pc@(0)@(0,a5:w:1)", PCMIPOST }, { "pc@(0)@(0,a5:w:2)", PCMIPOST }, { "pc@(0)@(0,a5:w:4)", PCMIPOST }, { "pc@(0)@(0,a5:w:8)", PCMIPOST }, { "pc@(0)@(0,a5:l:1)", PCMIPOST }, { "pc@(0)@(0,a5:l:2)", PCMIPOST }, { "pc@(0)@(0,a5:l:4)", PCMIPOST }, { "pc@(0)@(0,a5:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0,d2:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0,a5:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:l:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,d2:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:l:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0,a5:l:8)", PCMIPOST }, { "zpc@(0)@(0)", PCMIPOST }, { "zpc@(0)@(0,d2:w:1)", PCMIPOST }, { "zpc@(0)@(0,d2:w:2)", PCMIPOST }, { "zpc@(0)@(0,d2:w:4)", PCMIPOST }, { "zpc@(0)@(0,d2:w:8)", PCMIPOST }, { "zpc@(0)@(0,d2:l:1)", PCMIPOST }, { "zpc@(0)@(0,d2:l:2)", PCMIPOST }, { "zpc@(0)@(0,d2:l:4)", PCMIPOST }, { "zpc@(0)@(0,d2:l:8)", PCMIPOST }, { "zpc@(0)@(0,a5:w:1)", PCMIPOST }, { "zpc@(0)@(0,a5:w:2)", PCMIPOST }, { "zpc@(0)@(0,a5:w:4)", PCMIPOST }, { "zpc@(0)@(0,a5:w:8)", PCMIPOST }, { "zpc@(0)@(0,a5:l:1)", PCMIPOST }, { "zpc@(0)@(0,a5:l:2)", PCMIPOST }, { "zpc@(0)@(0,a5:l:4)", PCMIPOST }, { "zpc@(0)@(0,a5:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0,d2:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0,a5:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:l:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,d2:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:l:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0,a5:l:8)", PCMIPOST }, { "pc@(0)@(0xfeed:w)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "pc@(0)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "pc@(0)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "zpc@(0)@(0xfeed:w)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "zpc@(0)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:l:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,d2:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:l:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeed:w,a5:l:8)", PCMIPOST }, { "pc@(0)@(0xfeedface:l)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:l:4)", PCMIPOST }, { "pc@(0)@(0xfeedface:l,a5:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:l:4)", PCMIPOST }, { "pc@(0x1234:w)@(0xfeedface:l,a5:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:l:4)", PCMIPOST }, #endif ALL_OPERANDS { "pc@(0x1234abcd:l)@(0xfeedface:l,a5:l:8)", PCMIPOST }, #ifdef ALL_OPERANDS { "zpc@(0)@(0xfeedface:l)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:l:4)", PCMIPOST }, { "zpc@(0)@(0xfeedface:l,a5:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:l:4)", PCMIPOST }, { "zpc@(0x1234:w)@(0xfeedface:l,a5:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:l:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,d2:l:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:w:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:w:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:w:4)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:w:8)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:l:1)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:l:2)", PCMIPOST }, { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:l:4)", PCMIPOST }, #endif ALL_OPERANDS { "zpc@(0x1234abcd:l)@(0xfeedface:l,a5:l:8)", PCMIPOST }, /* These are used by the movec instruction */ { "sfc", MOVEC_REG }, { "dfc", MOVEC_REG }, { "cacr", MOVEC_REG }, { "usp", MOVEC_REG }, { "vbr", MOVEC_REG }, { "caar", MOVEC_REG }, { "msp", MOVEC_REG }, { "isp", MOVEC_REG }, { "tc", MOVEC_REG }, { "itt0", MOVEC_REG }, { "itt1", MOVEC_REG }, { "dtt0", MOVEC_REG }, { "dtt1", MOVEC_REG }, { "mmusr", MOVEC_REG }, { "urp", MOVEC_REG }, { "srp", MOVEC_REG }, /* These are used by special case operand types */ { "special 1", SPECIAL_1 }, { "special 2", SPECIAL_2 }, { "special 3", SPECIAL_3 }, { 0, 0 } }; /* bs = An, PC, ZPC or nothing (not present) bdsize = null (0), word, long displacement Xn = An, Dn or nothing (not present) (followed by :scale = 1 (assumed), 2, 4, 8) IS = 0 (index register not suppressed, present) "bs@(bd:bdsize,Xn)", "No Memory Indirection" "bs@(bd:bdsize,Xn)@", "Indirect Preindexed with Null Displacement" "bs@(bd:bdsize,Xn)@(od:w)", "Indirect Preindexed with Word Displacement" "bs@(bd:bdsize,Xn)@(od:l)", "Indirect Preindexed with Long Displacement" "bs@(bd:bdsize)@(Xn)", "Indirect Postindexed with Null Displacement" "bs@(bd:bdsize)@(od:w,Xn)", "Indirect Postindexed with Word Displacement" "bs@(bd:bdsize)@(od:l,Xn)", "Indirect Postindexed with Long Displacement" IS = 1 (index register suppressed, not present) "bs@(bd:bdsize)", "No Memory Indirection" "bs@(bd:bdsize)@", "Memory Indirect with Null Displacement" "bs@(bd:bdsize)@(od:w)", "Memory Indirect with Word Displacement" "bs@(bd:bdsize)@(od:l)", "Memory Indirect with Long Displacement" */ #if 1 #include "m68k-opcode.h" #else struct m68k_opcode { char *name; unsigned long opcode; unsigned long match; char *args; char *cpus; }; #define one(x) ((x) << 16) struct m68k_opcode m68k_opcodes[] = { {"abcd", one(0140400), one(0170770), "DsDd"}, {"addal", one(0150700), one(0170700), "*lAd"}, }; int numopcodes=sizeof(m68k_opcodes)/sizeof(m68k_opcodes[0]); #endif long types[128]; /* initialized to zero */ static void print_op( struct operand *op, char *arg, char end_char); void main( int argc, char *argv[], char *envp[]) { struct m68k_opcode *opcode; char *args; struct operand *op1, *op2, *op3, *op4, *op5, *op6; /* Kinds of operands: */ /* D data register only. Stored as 3 bits. */ types['D'] = DREG; /* A address register only. Stored as 3 bits. */ types['A'] = AREG; /* R either kind of register. Stored as 4 bits. */ types['R'] = DREG | AREG; /* F floating point coprocessor register only. Stored as 3 bits. */ types['F'] = SPECIAL_1; /* O an offset (or width): immediate data 0-31 or data register. Stored as 6 bits in special format for BF... insns. */ types['O'] = SPECIAL_1 | DREG; /* + autoincrement only. Stored as 3 bits (number of the address register). */ types['+'] = AINC; /* - autodecrement only. Stored as 3 bits (number of the address register). */ types['-'] = ADEC; /* Q quick immediate data. Stored as 3 bits. This matches an immediate operand only when value is in range 1 .. 8. */ types['Q'] = SPECIAL_1; /* M moveq immediate data. Stored as 8 bits. This matches an immediate operand only when value is in range -128..127 */ types['M'] = SPECIAL_1; /* T trap vector immediate data. Stored as 4 bits. */ types['T'] = SPECIAL_1; /* k K-factor for fmove.p instruction. Stored as a 7-bit constant or a three bit register offset, depending on the field type. */ types['k'] = SPECIAL_1 | SPECIAL_2; /* # immediate data. Stored in special places (b, w or l) which say how many bits to store. */ types['#'] = SPECIAL_1; /* ^ immediate data for floating point instructions. Special places are offset by 2 bytes from '#'... */ types['^'] = SPECIAL_1; /* B pc-relative address, converted to an offset that is treated as immediate data. */ types['B'] = SPECIAL_1; /* d displacement and register. Stores the register as 3 bits and stores the displacement in the entire second word. */ types['d'] = SPECIAL_1; /* C the CCR. No need to store it; this is just for filtering validity. */ types['C'] = SPECIAL_1; /* S the SR. No need to store, just as with CCR. types['S'] = SPECIAL_1; /* U the USP. No need to store, just as with CCR. types['U'] = SPECIAL_1; /* I Coprocessor ID. Not printed if 1. The Coprocessor ID is always extracted from the 'd' field of word one, which means that an extended coprocessor opcode can be skipped using the 'i' place, if needed. */ types['I'] = SPECIAL_1; /* s System Control register for the floating point coprocessor. */ types['s'] = SPECIAL_1 | SPECIAL_2 | SPECIAL_3; /* S List of system control registers for floating point coprocessor.*/ types['S'] = SPECIAL_1; /* J Misc register for movec instruction, stored in 'j' format. */ types['J'] = MOVEC_REG; /* L Register list of the type d0-d7/a0-a7 etc. Can also hold fp0-fp7, as well. */ types['L'] = SPECIAL_1; /* l Register list like L, but with all the bits reversed. Used for going the other way. . . */ types['l'] = SPECIAL_1; /* 0 Address register indirect only */ types['0'] = AINDR; /* * all (modes 0-6,7.*) */ types['*'] = DREG | AREG | AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL | IMMED | PCd16 | PCd8Xn | PCbdXn | PCMIPRE | PCMIPOST; /* ~ alterable memory (modes 2-6,7.0,7.1)(not 0,1,7.~) */ types['~'] = AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL; /* % alterable (modes 0-6,7.0,7.1)(not 7.~) */ types['%'] = DREG | AREG | AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL; /* ; data (modes 0,2-6,7.*)(not 1) */ types[';'] = DREG | AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL | IMMED | PCd16 | PCd8Xn | PCbdXn | PCMIPRE | PCMIPOST; /* @ data, but not immediate (modes 0,2-6,7.? ? ?)(not 1,7.4) */ types['@'] = DREG | AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL | PCd16 | PCd8Xn | PCbdXn | PCMIPRE | PCMIPOST; /* ! control (modes 2,5,6,7.*-)(not 0,1,3,4,7.4) */ types['!'] = AINDR | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL | PCd16 | PCd8Xn | PCbdXn | PCMIPRE | PCMIPOST; /* & alterable control (modes 2,5,6,7.0,7.1)(not 0,1,7.? ? ?) */ types['&'] = AINDR | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL; /* $ alterable data (modes 0,2-6,7.0,7.1)(not 1,7.~) */ types['$'] = DREG | AINDR | AINC | ADEC | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL; /* ? alterable control, or data register (modes 0,2,5,6,7.0,7.1) (not 1,3,4,7.~) */ types['?'] = DREG | AINDR | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL; /* / control, or data register (modes 0,2,5,6,7.0,7.1,7.2,7.3) (not 1,3,4,7.4) */ types['/'] = DREG | AINDR | Ad16 | Ad8Xn | AbdXn | MIPRE | MIPOST | ABSW | ABSL | PCd16 | PCd8Xn | PCbdXn | PCMIPRE | PCMIPOST; /* f function code register (sfc or dfc) */ types['f'] = SPECIAL_1 | SPECIAL_2; /* a 030 mmu registers srp, crp or tc */ types['a'] = SPECIAL_1 | SPECIAL_2 | SPECIAL_3; /* b 030 mmu register mmusr */ types['b'] = SPECIAL_1; /* c 040 cache indicators ic, dc or bc */ types['c'] = SPECIAL_1 | SPECIAL_2 | SPECIAL_3; /* e 030 mmu registers tt0 or tt1 */ types['e'] = SPECIAL_1 | SPECIAL_2; for(opcode = (struct m68k_opcode *)m68k_opcodes; opcode != endop; opcode++){ args = opcode->args; if(args[0] == '\0'){ printf("\t%s\n", opcode->name); continue; } for(op1 = ops; op1->type; op1++){ if((types[(int)args[0]] & op1->type) == 0) continue; if(args[2] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), '\n'); continue; } for(op2 = ops; op2->type; op2++){ if((types[(int)args[2]] & op2->type) == 0) continue; if(args[4] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), ','); print_op(op2, &(args[2]), '\n'); continue; } for(op3 = ops; op3->type; op3++){ if((types[(int)args[4]] & op3->type) == 0) continue; if(args[6] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), ','); print_op(op2, &(args[2]), ','); print_op(op3, &(args[4]), '\n'); continue; } for(op4 = ops; op4->type; op4++){ if((types[(int)args[6]] & op4->type) == 0) continue; if(args[8] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), ','); print_op(op2, &(args[2]), ','); print_op(op3, &(args[4]), ','); print_op(op4, &(args[6]), '\n'); continue; } for(op5 = ops; op5->type; op5++){ if((types[(int)args[8]] & op5->type) == 0) continue; if(args[10] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), ','); print_op(op2, &(args[2]), ','); print_op(op3, &(args[4]), ','); print_op(op4, &(args[6]), ','); print_op(op5, &(args[8]), '\n'); continue; } for(op6 = ops; op6->type; op6++){ if((types[(int)args[10]] & op6->type) == 0) continue; if(args[12] == '\0'){ printf("\t%s\t", opcode->name); print_op(op1, &(args[0]), ','); print_op(op2, &(args[2]), ','); print_op(op3, &(args[4]), ','); print_op(op4, &(args[6]), ','); print_op(op5, &(args[8]), ','); print_op(op6, &(args[10]), '\n'); continue; } printf("# more than 6 operands %s %s\n", opcode->name, args); printf(".abort\n"); exit(1); } } } } } } } } static void print_op( struct operand *op, char *arg, char end_char) { switch(*arg){ case 'F': /* F floating point coprocessor register only. Stored as 3 bits. */ printf("fp7"); break; case 'O': /* O an offset (or width): immediate data 0-31 or data register. Stored as 6 bits in special format for BF... insns. */ if(op->type == DREG) printf("%s", op->string); else printf("#0x13"); break; case 'Q': /* Q quick immediate data. Stored as 3 bits. This matches an immediate operand only when value is in range 1 .. 8. */ printf("#0x7"); break; case 'M': /* M moveq immediate data. Stored as 8 bits. This matches an immediate operand only when value is in range -128..127 */ printf("#0x7e"); break; case 'T': /* T trap vector immediate data. Stored as 4 bits. */ printf("#0xe"); break; case 'k': /* k K-factor for fmove.p instruction. Stored as a 7-bit constant or a three bit register offset, depending on the field type. */ if(op->type == SPECIAL_1) printf("{d4}"); else printf("{#0x3f}"); break; case '#': /* # immediate data. Stored in special places (b, w or l) which say how many bits to store. */ if(arg[1] == 'b') printf("#0x81"); else if(arg[1] == 'w' || arg[1] == 'z') printf("#0x8001"); else if(arg[1] == 'l') printf("#0x80000001"); /* Used with the fmovecr (7 bits) */ else if(arg[1] == 'C') printf("#0x7f"); /* Used with the fmovemx (8 bits) */ else if(arg[1] == '3') printf("#0xff"); /* Used with the fmoveml (3 bits) */ else if(arg[1] == '8') printf("#0x3"); /* Used with the movec (12 bits) */ else if(arg[1] == 'j') printf("#0x801"); /* vbr register # */ else printf("#???"); break; case '^': /* ^ immediate data for floating point instructions. Special places are offset by 2 bytes from '#'... */ printf("#0x3"); break; case 'B': /* B pc-relative address, converted to an offset that is treated as immediate data. */ if(arg[1] == 'w') printf("0x7ace"); else printf("0x1badface"); break; case 'd': /* d displacement and register. Stores the register as 3 bits and stores the displacement in the entire second word. */ /* This is used for the movep instruction "movep Dx,(d,Ay) where the displacement d is 16 bits */ printf("(0x4321,a6)"); break; case 'C': /* C the CCR. No need to store it; this is just for filtering validity. */ printf("ccr"); break; case 'S': /* S the SR. No need to store, just as with CCR. */ printf("sr"); break; case 'U': /* U the USP. No need to store, just as with CCR. */ printf("usp"); break; case 'I': /* I Coprocessor ID. Not printed if 1. The Coprocessor ID is always extracted from the 'd' field of word one, which means that an extended coprocessor opcode can be skipped using the 'i' place, if needed. */ break; case 's': /* s System Control register for the floating point coprocessor. */ if(op->type == SPECIAL_1) printf("fpi"); else if(op->type == SPECIAL_2) printf("fpc"); else printf("fps"); break; #if 0 case 'S': /* S List of system control registers for floating point coprocessor.*/ printf("fpc/fps/fpi"); break; #endif 0 case 'J': /* J Misc register for movec instruction, stored in 'j' format. */ printf("%s", op->string); break; case 'f': /* f function code register (sfc or dfc) */ if(op->type == SPECIAL_1) printf("sfc"); else printf("dfc"); break; case 'a': /* a 030 mmu registers srp, crp or tc */ if(op->type == SPECIAL_1) printf("srp"); else if(op->type == SPECIAL_2) printf("crp"); else printf("tc"); break; case 'b': /* b 030 mmu register mmusr */ printf("mmusr"); break; case 'c': /* c 040 cache indicators ic, dc or bc */ if(op->type == SPECIAL_1) printf("ic"); else if(op->type == SPECIAL_2) printf("dc"); else printf("bc"); break; case 'e': /* e 030 mmu registers tt0 or tt1 */ if(op->type == SPECIAL_1) printf("tt0"); else printf("tt1"); break; case 'L': case 'l': /* L Register list of the type d0-d7/a0-a7 etc. Can also hold fp0-fp7, as well. */ /* l Register list like L, but with all the bits reversed. Used for going the other way. . . */ if(arg[1] == 'w') printf("a0/a1/a2/a3/a4/a5/a6/sp/d0/d1/d2/d3/d4/d5/d6/d7"); else if(arg[1] == '3') printf("fp0/fp1/fp2/fp3/fp4/fp5/fp6/fp7"); else if(arg[1] == '8') printf("fpc/fps/fpi"); else printf("???%c", arg[0]); break; default: printf("%s", op->string); break; } if((arg[2] != 'k' && arg[0] != 'I') || (arg[0] == 'I' && arg[2] == '\0')) printf("%c", end_char); }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.