diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.java b/src/main/gen/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.java index 0f9f4a6..635da3c 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.java @@ -196,7 +196,7 @@ public class _M68kLexer implements FlexLexer { private static final String ZZ_ACTION_PACKED_0 = "\17\0\1\1\2\2\1\3\1\4\1\5\1\6\1\7" + "\1\10\1\11\1\1\1\10\2\12\1\10\1\11\1\13" + - "\1\14\1\15\1\1\1\16\1\17\1\20\4\17\1\1" + + "\1\14\1\15\1\1\1\16\1\17\1\20\5\17\1\1" + "\1\17\5\1\1\21\1\22\1\23\1\24\1\25\1\26" + "\1\27\1\30\1\31\1\32\2\17\1\33\1\34\1\35" + "\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45" + @@ -204,17 +204,17 @@ public class _M68kLexer implements FlexLexer { "\1\54\1\17\1\55\1\12\4\55\1\56\1\12\2\57" + "\2\60\1\61\1\62\3\63\1\62\1\63\1\0\1\4" + "\1\64\2\65\1\66\3\0\1\10\1\67\1\70\1\71" + - "\1\72\1\73\1\74\1\17\1\75\1\76\1\17\1\77" + - "\1\100\2\0\1\101\4\0\1\102\1\17\1\34\1\103" + - "\1\104\1\105\1\106\1\107\1\110\1\111\3\0\1\55" + - "\1\0\1\55\1\0\1\55\1\0\1\55\1\60\1\62" + - "\3\0\1\4\1\65\1\66\1\10\1\112\1\10\1\113" + - "\1\114\1\115\1\116\1\0\1\55\3\0\1\60\1\62" + - "\3\0\1\10\1\60\1\62\2\0\1\117\1\120\1\121" + - "\1\0\1\122"; + "\1\72\1\73\1\74\1\17\1\75\1\67\1\70\1\71" + + "\1\76\1\17\1\77\1\100\2\0\1\101\4\0\1\102" + + "\1\17\1\34\1\103\1\104\1\105\1\106\1\107\1\110" + + "\1\111\3\0\1\55\1\0\1\55\1\0\1\55\1\0" + + "\1\55\1\60\1\62\3\0\1\4\1\65\1\66\1\10" + + "\1\112\1\10\1\113\1\114\1\115\1\116\1\0\1\55" + + "\3\0\1\60\1\62\3\0\1\10\1\60\1\62\2\0" + + "\1\117\1\120\1\121\1\0\1\122"; private static int[] zzUnpackAction() { - int[] result = new int[186]; + int[] result = new int[190]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -245,27 +245,27 @@ public class _M68kLexer implements FlexLexer { "\0\u0564\0\u05a0\0\u05dc\0\u0384\0\u0618\0\u0654\0\u0690\0\u0384" + "\0\u06cc\0\u0708\0\u0744\0\u0780\0\u07bc\0\u07f8\0\u0834\0\u0870" + "\0\u08ac\0\u08e8\0\u0924\0\u0960\0\u099c\0\u09d8\0\u0a14\0\u0a50" + - "\0\u0a8c\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384" + - "\0\u0384\0\u0384\0\u0384\0\u0ac8\0\u0b04\0\u0384\0\u0b40\0\u0384" + - "\0\u0b7c\0\u0bb8\0\u0384\0\u0384\0\u0384\0\u0384\0\u0bf4\0\u0384" + - "\0\u0384\0\u0384\0\u0384\0\u0c30\0\u0c6c\0\u0ca8\0\u0384\0\u0ce4" + - "\0\u0d20\0\u0384\0\u0d5c\0\u0d98\0\u0d98\0\u0dd4\0\u0e10\0\u0e4c" + - "\0\u0e88\0\u0ec4\0\u0ec4\0\u0384\0\u0f00\0\u0f3c\0\u0f78\0\u0fb4" + - "\0\u0ff0\0\u0ff0\0\u0384\0\u102c\0\u1068\0\u0ec4\0\u10a4\0\u10e0" + + "\0\u0a8c\0\u0ac8\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384" + + "\0\u0384\0\u0384\0\u0384\0\u0384\0\u0b04\0\u0b40\0\u0384\0\u0b7c" + + "\0\u0384\0\u0bb8\0\u0bf4\0\u0384\0\u0384\0\u0384\0\u0384\0\u0c30" + + "\0\u0384\0\u0384\0\u0384\0\u0384\0\u0c6c\0\u0ca8\0\u0ce4\0\u0384" + + "\0\u0d20\0\u0d5c\0\u0384\0\u0d98\0\u0dd4\0\u0dd4\0\u0e10\0\u0e4c" + + "\0\u0e88\0\u0ec4\0\u0f00\0\u0f00\0\u0384\0\u0f3c\0\u0f78\0\u0fb4" + + "\0\u0ff0\0\u102c\0\u102c\0\u0384\0\u1068\0\u10a4\0\u0f00\0\u10e0" + "\0\u111c\0\u1158\0\u1194\0\u11d0\0\u120c\0\u1248\0\u1284\0\u12c0" + - "\0\u0384\0\u0384\0\u0384\0\u0870\0\u0870\0\u0870\0\u12fc\0\u0870" + - "\0\u0924\0\u1338\0\u099c\0\u09d8\0\u0a14\0\u1374\0\u0384\0\u0a50" + - "\0\u13b0\0\u0a8c\0\u13ec\0\u0870\0\u1428\0\u0384\0\u0384\0\u0384" + - "\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u1464\0\u14a0\0\u14dc" + - "\0\u1518\0\u1554\0\u1590\0\u15cc\0\u1608\0\u1644\0\u1680\0\u16bc" + - "\0\u16f8\0\u1734\0\u1770\0\u17ac\0\u0384\0\u0384\0\u0384\0\u0384" + - "\0\u0384\0\u17e8\0\u0870\0\u0870\0\u0870\0\u0384\0\u1824\0\u0384" + - "\0\u1860\0\u189c\0\u18d8\0\u1914\0\u1950\0\u198c\0\u19c8\0\u1a04" + - "\0\u1a40\0\u1a7c\0\u1ab8\0\u111c\0\u1af4\0\u0528\0\u0f3c\0\u1b30" + - "\0\u1b6c\0\u1ba8"; + "\0\u12fc\0\u0384\0\u0384\0\u0384\0\u0870\0\u0870\0\u0870\0\u1338" + + "\0\u0870\0\u0870\0\u0870\0\u0870\0\u0960\0\u1374\0\u09d8\0\u0a14" + + "\0\u0a50\0\u13b0\0\u0384\0\u0a8c\0\u13ec\0\u0ac8\0\u1428\0\u0870" + + "\0\u1464\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384" + + "\0\u0384\0\u14a0\0\u14dc\0\u1518\0\u1554\0\u1590\0\u15cc\0\u1608" + + "\0\u1644\0\u1680\0\u16bc\0\u16f8\0\u1734\0\u1770\0\u17ac\0\u17e8" + + "\0\u0384\0\u0384\0\u0384\0\u0384\0\u0384\0\u1824\0\u0870\0\u0870" + + "\0\u0870\0\u0384\0\u1860\0\u0384\0\u189c\0\u18d8\0\u1914\0\u1950" + + "\0\u198c\0\u19c8\0\u1a04\0\u1a40\0\u1a7c\0\u1ab8\0\u1af4\0\u1158" + + "\0\u1b30\0\u0528\0\u0f78\0\u1b6c\0\u1ba8\0\u1be4"; private static int[] zzUnpackRowMap() { - int[] result = new int[186]; + int[] result = new int[190]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -300,137 +300,139 @@ public class _M68kLexer implements FlexLexer { "\2\20\1\36\24\20\3\36\3\20\2\34\1\35\1\42" + "\16\20\1\43\6\20\1\41\42\20\2\34\1\35\1\44" + "\1\45\1\46\1\47\1\46\2\50\2\20\2\50\1\51" + - "\1\52\1\50\1\20\1\50\1\53\1\50\1\54\3\50" + - "\1\41\1\20\1\50\1\52\2\50\1\55\1\46\1\50" + - "\1\46\1\56\1\57\1\60\1\61\2\20\1\62\1\63" + - "\1\64\1\65\1\66\1\67\1\70\1\71\1\72\1\73" + - "\3\20\1\74\1\75\1\50\1\76\2\20\2\34\1\35" + - "\1\44\15\20\1\77\1\43\6\20\1\41\5\20\1\100" + - "\7\20\1\101\1\102\1\103\1\20\1\104\1\105\1\106" + - "\1\107\1\110\1\111\1\112\1\113\1\114\1\115\1\116" + - "\3\20\1\76\1\117\1\20\2\34\1\35\1\27\7\20" + - "\1\40\1\120\2\20\1\121\1\20\1\122\7\20\1\41" + - "\2\20\1\121\37\20\2\34\1\35\1\44\1\123\1\46" + - "\1\123\1\46\2\123\2\20\5\123\1\20\1\123\1\53" + - "\5\123\1\41\1\20\4\123\1\55\1\46\1\123\1\46" + - "\1\56\1\57\1\60\1\61\2\20\1\62\1\20\1\64" + - "\1\65\1\66\1\67\1\70\1\71\1\72\1\73\3\20" + - "\3\123\3\20\2\34\1\35\1\44\15\20\1\77\7\20" + - "\1\41\5\20\1\100\7\20\1\101\1\102\1\103\1\20" + - "\1\104\1\105\1\106\1\107\1\110\1\111\1\112\1\113" + - "\1\114\1\115\1\116\5\20\1\124\1\125\1\34\1\35" + - "\1\44\25\124\1\41\12\124\1\126\1\127\1\130\1\131" + - "\1\124\1\62\21\124\1\132\1\133\1\34\1\35\70\132" + - "\1\20\2\134\1\135\1\27\1\136\1\20\1\136\1\20" + - "\2\136\1\20\1\40\5\136\3\20\1\137\4\136\1\140" + - "\1\20\4\136\2\20\1\136\24\20\3\136\2\20\1\141" + - "\1\142\1\143\1\144\1\145\25\141\1\140\41\141\1\20" + - "\2\34\1\35\1\27\25\20\1\41\41\20\1\132\1\146" + - "\1\143\1\144\70\132\76\0\1\21\75\0\1\23\73\0" + - "\1\147\7\24\1\150\5\24\1\151\1\0\1\152\5\24" + - "\2\0\4\24\1\0\3\24\23\0\3\24\7\0\1\153" + - "\1\0\1\153\1\0\2\153\2\0\5\153\3\0\5\153" + - "\2\0\4\153\2\0\1\153\24\0\3\153\2\0\1\26" + + "\1\52\1\50\1\20\1\53\1\54\1\50\1\55\3\50" + + "\1\41\1\20\1\50\1\52\2\50\1\56\1\46\1\50" + + "\1\46\1\57\1\60\1\61\1\62\2\20\1\63\1\64" + + "\1\65\1\66\1\67\1\70\1\71\1\72\1\73\1\74" + + "\3\20\1\75\1\76\1\50\1\77\2\20\2\34\1\35" + + "\1\44\15\20\1\100\1\43\6\20\1\41\5\20\1\101" + + "\7\20\1\102\1\103\1\104\1\20\1\105\1\106\1\107" + + "\1\110\1\111\1\112\1\113\1\114\1\115\1\116\1\117" + + "\3\20\1\77\1\120\1\20\2\34\1\35\1\27\7\20" + + "\1\40\1\121\2\20\1\122\1\20\1\123\7\20\1\41" + + "\2\20\1\122\37\20\2\34\1\35\1\44\1\124\1\46" + + "\1\124\1\46\2\124\2\20\5\124\1\20\1\124\1\54" + + "\5\124\1\41\1\20\4\124\1\56\1\46\1\124\1\46" + + "\1\57\1\60\1\61\1\62\2\20\1\63\1\20\1\65" + + "\1\66\1\67\1\70\1\71\1\72\1\73\1\74\3\20" + + "\3\124\3\20\2\34\1\35\1\44\15\20\1\100\7\20" + + "\1\41\5\20\1\101\7\20\1\102\1\103\1\104\1\20" + + "\1\105\1\106\1\107\1\110\1\111\1\112\1\113\1\114" + + "\1\115\1\116\1\117\5\20\1\125\1\126\1\34\1\35" + + "\1\44\25\125\1\41\12\125\1\127\1\130\1\131\1\132" + + "\1\125\1\63\21\125\1\133\1\134\1\34\1\35\70\133" + + "\1\20\2\135\1\136\1\27\1\137\1\20\1\137\1\20" + + "\2\137\1\20\1\40\5\137\3\20\1\140\4\137\1\141" + + "\1\20\4\137\2\20\1\137\24\20\3\137\2\20\1\142" + + "\1\143\1\144\1\145\1\146\25\142\1\141\41\142\1\20" + + "\2\34\1\35\1\27\25\20\1\41\41\20\1\133\1\147" + + "\1\144\1\145\70\133\76\0\1\21\75\0\1\23\73\0" + + "\1\150\7\24\1\151\5\24\1\152\1\0\1\153\5\24" + + "\2\0\4\24\1\0\3\24\23\0\3\24\7\0\1\154" + + "\1\0\1\154\1\0\2\154\2\0\5\154\3\0\5\154" + + "\2\0\4\154\2\0\1\154\24\0\3\154\2\0\1\26" + "\3\0\70\26\4\0\1\27\74\0\1\30\1\31\1\30" + - "\1\31\1\30\2\31\1\154\5\30\1\0\1\155\1\156" + + "\1\31\1\30\2\31\1\155\5\30\1\0\1\156\1\157" + "\5\30\2\0\4\30\1\0\1\31\1\30\1\31\23\0" + - "\3\30\7\0\7\31\1\154\5\31\2\0\1\156\5\31" + - "\2\0\4\31\1\0\3\31\23\0\3\31\7\0\1\157" + - "\1\0\1\157\1\0\2\157\2\0\5\157\3\0\5\157" + - "\2\0\4\157\2\0\1\157\24\0\3\157\7\0\1\160" + - "\1\31\1\30\1\31\1\30\2\31\1\154\5\30\1\0" + - "\1\155\1\156\5\30\2\0\4\30\1\0\1\31\1\30" + + "\3\30\7\0\7\31\1\155\5\31\2\0\1\157\5\31" + + "\2\0\4\31\1\0\3\31\23\0\3\31\7\0\1\160" + + "\1\0\1\160\1\0\2\160\2\0\5\160\3\0\5\160" + + "\2\0\4\160\2\0\1\160\24\0\3\160\7\0\1\161" + + "\1\31\1\30\1\31\1\30\2\31\1\155\5\30\1\0" + + "\1\156\1\157\5\30\2\0\4\30\1\0\1\31\1\30" + "\1\31\23\0\3\30\4\0\1\34\76\0\1\36\1\37" + - "\1\36\1\37\1\36\2\37\1\0\5\36\1\0\1\155" + + "\1\36\1\37\1\36\2\37\1\0\5\36\1\0\1\156" + "\1\0\5\36\2\0\4\36\1\0\1\37\1\36\1\37" + "\23\0\3\36\7\0\7\37\1\0\5\37\3\0\5\37" + "\2\0\4\37\1\0\3\37\23\0\3\37\2\0\1\41" + - "\3\0\70\41\4\0\1\42\123\0\2\161\1\162\1\163" + - "\40\0\1\44\74\0\1\50\1\164\1\50\1\165\3\50" + - "\1\0\5\50\2\0\6\50\2\0\4\50\1\0\1\164" + + "\3\0\70\41\4\0\1\42\123\0\2\162\1\163\1\164" + + "\40\0\1\44\74\0\1\50\1\165\1\50\1\166\3\50" + + "\1\0\5\50\2\0\6\50\2\0\4\50\1\0\1\165" + "\2\50\23\0\3\50\10\0\1\46\1\0\1\46\30\0" + - "\1\46\1\0\1\46\35\0\1\50\1\166\1\50\1\166" + + "\1\46\1\0\1\46\35\0\1\50\1\167\1\50\1\167" + "\3\50\1\0\5\50\2\0\6\50\2\0\4\50\1\0" + - "\1\166\2\50\23\0\3\50\7\0\7\50\1\0\5\50" + + "\1\167\2\50\23\0\3\50\7\0\7\50\1\0\5\50" + "\2\0\6\50\2\0\4\50\1\0\3\50\23\0\3\50" + - "\7\0\7\50\1\0\3\50\1\167\1\50\2\0\6\50" + - "\2\0\1\50\1\167\2\50\1\0\3\50\23\0\3\50" + - "\7\0\7\50\1\0\5\50\2\0\3\50\1\170\2\50" + - "\2\0\4\50\1\0\3\50\23\0\1\165\2\50\7\0" + - "\4\171\4\0\1\171\10\0\1\171\5\0\1\171\4\0" + - "\3\171\25\0\1\171\7\0\7\50\1\0\5\50\2\0" + - "\2\50\1\172\3\50\2\0\4\50\1\0\3\50\23\0" + - "\3\50\43\0\1\173\40\0\1\174\1\0\1\174\30\0" + - "\1\174\32\0\2\175\2\0\27\175\1\176\11\175\1\177" + - "\26\175\2\200\2\0\27\200\1\201\12\200\1\177\25\200" + - "\2\202\2\0\27\202\1\203\13\202\1\177\24\202\5\0" + - "\7\50\1\0\5\50\2\0\2\50\1\204\3\50\2\0" + - "\4\50\1\0\3\50\23\0\3\50\7\0\7\50\1\0" + - "\5\50\2\0\6\50\2\0\1\205\3\50\1\0\3\50" + - "\23\0\2\50\1\205\24\0\1\206\73\0\1\207\25\0" + - "\1\210\1\211\44\0\1\212\26\0\1\213\44\0\1\211" + - "\135\0\1\214\74\0\1\215\74\0\1\100\23\0\1\216" + - "\72\0\1\217\63\0\7\123\1\0\5\123\1\0\7\123" + - "\1\0\5\123\1\0\3\123\23\0\3\123\2\0\2\124" + - "\3\0\25\124\1\0\17\124\1\0\21\124\2\126\2\0" + - "\1\220\25\126\1\220\1\221\11\126\1\124\4\126\1\220" + - "\21\126\2\127\2\0\1\222\25\127\1\222\1\223\12\127" + - "\1\124\3\127\1\222\21\127\2\130\2\0\1\224\25\130" + - "\1\224\1\225\13\130\1\124\2\130\1\224\21\130\2\131" + - "\2\0\1\226\25\131\1\226\1\227\15\131\1\124\1\226" + - "\21\131\2\132\2\0\70\132\2\0\1\134\76\0\7\136" + - "\1\0\5\136\3\0\5\136\2\0\4\136\1\0\3\136" + - "\23\0\3\136\7\0\1\230\6\136\1\0\5\136\3\0" + - "\5\136\2\0\4\136\1\0\3\136\23\0\3\136\2\0" + - "\1\140\3\0\70\140\2\141\2\0\26\141\1\0\41\141" + - "\2\0\1\143\71\0\2\141\2\0\1\145\10\141\1\231" + - "\14\141\1\0\41\141\4\0\1\147\10\0\1\232\2\0" + - "\1\233\1\0\1\151\2\0\1\234\7\0\1\233\42\0" + - "\1\147\7\0\1\235\5\0\1\151\2\0\1\234\52\0" + - "\1\151\103\0\1\236\64\0\7\153\1\236\5\153\3\0" + - "\5\153\2\0\4\153\1\0\3\153\23\0\3\153\16\0" + - "\1\237\57\0\1\240\3\0\70\240\14\0\1\241\64\0" + - "\7\157\1\241\5\157\3\0\5\157\2\0\4\157\1\0" + - "\3\157\23\0\3\157\7\0\1\30\1\31\1\30\1\31" + - "\1\30\2\31\1\154\5\30\1\0\1\155\1\156\1\30" + - "\1\242\3\30\2\0\4\30\1\0\1\31\1\30\1\31" + - "\23\0\3\30\7\0\7\50\1\0\5\50\2\0\6\50" + - "\2\0\4\50\1\0\3\50\23\0\1\243\2\50\7\0" + - "\7\50\1\0\5\50\2\0\3\50\1\244\2\50\2\0" + - "\4\50\1\0\3\50\23\0\3\50\2\0\1\175\3\0" + - "\70\175\1\200\3\0\70\200\1\202\3\0\70\202\5\0" + - "\7\50\1\0\5\50\2\0\3\50\1\245\2\50\2\0" + - "\4\50\1\0\3\50\23\0\3\50\21\0\1\246\75\0" + - "\1\246\52\0\2\220\2\0\27\220\1\247\11\220\1\250" + - "\26\220\1\126\1\124\2\0\1\220\25\126\1\220\17\126" + - "\1\220\21\126\2\222\2\0\27\222\1\251\12\222\1\250" + - "\25\222\1\127\1\124\2\0\1\222\25\127\1\222\17\127" + - "\1\222\21\127\2\224\2\0\27\224\1\252\13\224\1\250" + - "\24\224\1\130\1\124\2\0\1\224\25\130\1\224\17\130" + - "\1\224\21\130\2\226\2\0\27\226\1\253\15\226\1\250" + - "\22\226\1\131\1\124\2\0\1\226\25\131\1\226\17\131" + - "\1\226\21\131\5\0\7\136\1\0\5\136\3\0\1\136" + - "\1\254\3\136\2\0\4\136\1\0\3\136\23\0\3\136" + - "\2\0\2\141\2\0\25\141\1\255\1\0\41\141\16\0" + - "\1\256\72\0\1\257\63\0\1\260\73\0\1\30\1\31" + - "\1\30\1\31\1\30\2\31\1\154\5\30\1\0\1\155" + - "\1\156\2\30\1\261\2\30\2\0\4\30\1\0\1\31" + - "\1\30\1\31\23\0\3\30\2\0\1\220\3\0\70\220" + - "\1\222\3\0\70\222\1\224\3\0\70\224\1\226\3\0" + - "\70\226\5\0\7\136\1\0\5\136\3\0\2\136\1\262" + - "\2\136\2\0\4\136\1\0\3\136\23\0\3\136\2\0" + - "\2\141\2\0\3\141\1\263\22\141\1\0\41\141\17\0" + - "\1\264\75\0\1\264\100\0\1\265\52\0\1\30\1\31" + - "\1\30\1\31\1\30\2\31\1\154\5\30\1\0\1\155" + - "\1\156\3\30\1\266\1\30\2\0\4\30\1\0\1\31" + - "\1\30\1\31\23\0\3\30\7\0\7\136\1\0\5\136" + - "\3\0\3\136\1\267\1\136\2\0\4\136\1\0\3\136" + - "\23\0\3\136\2\0\2\141\2\0\21\141\1\270\4\141" + - "\1\0\41\141\27\0\1\271\44\0\2\270\2\0\26\270" + - "\1\0\41\270\30\0\1\272\47\0\1\272\67\0"; + "\7\0\7\50\1\0\3\50\1\170\1\50\2\0\6\50" + + "\2\0\1\50\1\170\2\50\1\0\3\50\23\0\3\50" + + "\7\0\7\50\1\0\5\50\2\0\3\50\1\171\2\50" + + "\2\0\4\50\1\0\3\50\23\0\1\166\2\50\7\0" + + "\7\50\1\0\5\50\2\0\6\50\2\0\2\172\1\173" + + "\1\174\1\0\3\50\23\0\3\50\7\0\4\175\4\0" + + "\1\175\10\0\1\175\5\0\1\175\4\0\3\175\25\0" + + "\1\175\7\0\7\50\1\0\5\50\2\0\2\50\1\176" + + "\3\50\2\0\4\50\1\0\3\50\23\0\3\50\43\0" + + "\1\177\40\0\1\200\1\0\1\200\30\0\1\200\32\0" + + "\2\201\2\0\27\201\1\202\11\201\1\203\26\201\2\204" + + "\2\0\27\204\1\205\12\204\1\203\25\204\2\206\2\0" + + "\27\206\1\207\13\206\1\203\24\206\5\0\7\50\1\0" + + "\5\50\2\0\2\50\1\210\3\50\2\0\4\50\1\0" + + "\3\50\23\0\3\50\7\0\7\50\1\0\5\50\2\0" + + "\6\50\2\0\1\211\3\50\1\0\3\50\23\0\2\50" + + "\1\211\24\0\1\212\73\0\1\213\25\0\1\214\1\215" + + "\44\0\1\216\26\0\1\217\44\0\1\215\135\0\1\220" + + "\74\0\1\221\74\0\1\101\23\0\1\222\72\0\1\223" + + "\63\0\7\124\1\0\5\124\1\0\7\124\1\0\5\124" + + "\1\0\3\124\23\0\3\124\2\0\2\125\3\0\25\125" + + "\1\0\17\125\1\0\21\125\2\127\2\0\1\224\25\127" + + "\1\224\1\225\11\127\1\125\4\127\1\224\21\127\2\130" + + "\2\0\1\226\25\130\1\226\1\227\12\130\1\125\3\130" + + "\1\226\21\130\2\131\2\0\1\230\25\131\1\230\1\231" + + "\13\131\1\125\2\131\1\230\21\131\2\132\2\0\1\232" + + "\25\132\1\232\1\233\15\132\1\125\1\232\21\132\2\133" + + "\2\0\70\133\2\0\1\135\76\0\7\137\1\0\5\137" + + "\3\0\5\137\2\0\4\137\1\0\3\137\23\0\3\137" + + "\7\0\1\234\6\137\1\0\5\137\3\0\5\137\2\0" + + "\4\137\1\0\3\137\23\0\3\137\2\0\1\141\3\0" + + "\70\141\2\142\2\0\26\142\1\0\41\142\2\0\1\144" + + "\71\0\2\142\2\0\1\146\10\142\1\235\14\142\1\0" + + "\41\142\4\0\1\150\10\0\1\236\2\0\1\237\1\0" + + "\1\152\2\0\1\240\7\0\1\237\42\0\1\150\7\0" + + "\1\241\5\0\1\152\2\0\1\240\52\0\1\152\103\0" + + "\1\242\64\0\7\154\1\242\5\154\3\0\5\154\2\0" + + "\4\154\1\0\3\154\23\0\3\154\16\0\1\243\57\0" + + "\1\244\3\0\70\244\14\0\1\245\64\0\7\160\1\245" + + "\5\160\3\0\5\160\2\0\4\160\1\0\3\160\23\0" + + "\3\160\7\0\1\30\1\31\1\30\1\31\1\30\2\31" + + "\1\155\5\30\1\0\1\156\1\157\1\30\1\246\3\30" + + "\2\0\4\30\1\0\1\31\1\30\1\31\23\0\3\30" + + "\7\0\7\50\1\0\5\50\2\0\6\50\2\0\4\50" + + "\1\0\3\50\23\0\1\247\2\50\7\0\7\50\1\0" + + "\5\50\2\0\3\50\1\250\2\50\2\0\4\50\1\0" + + "\3\50\23\0\3\50\2\0\1\201\3\0\70\201\1\204" + + "\3\0\70\204\1\206\3\0\70\206\5\0\7\50\1\0" + + "\5\50\2\0\3\50\1\251\2\50\2\0\4\50\1\0" + + "\3\50\23\0\3\50\21\0\1\252\75\0\1\252\52\0" + + "\2\224\2\0\27\224\1\253\11\224\1\254\26\224\1\127" + + "\1\125\2\0\1\224\25\127\1\224\17\127\1\224\21\127" + + "\2\226\2\0\27\226\1\255\12\226\1\254\25\226\1\130" + + "\1\125\2\0\1\226\25\130\1\226\17\130\1\226\21\130" + + "\2\230\2\0\27\230\1\256\13\230\1\254\24\230\1\131" + + "\1\125\2\0\1\230\25\131\1\230\17\131\1\230\21\131" + + "\2\232\2\0\27\232\1\257\15\232\1\254\22\232\1\132" + + "\1\125\2\0\1\232\25\132\1\232\17\132\1\232\21\132" + + "\5\0\7\137\1\0\5\137\3\0\1\137\1\260\3\137" + + "\2\0\4\137\1\0\3\137\23\0\3\137\2\0\2\142" + + "\2\0\25\142\1\261\1\0\41\142\16\0\1\262\72\0" + + "\1\263\63\0\1\264\73\0\1\30\1\31\1\30\1\31" + + "\1\30\2\31\1\155\5\30\1\0\1\156\1\157\2\30" + + "\1\265\2\30\2\0\4\30\1\0\1\31\1\30\1\31" + + "\23\0\3\30\2\0\1\224\3\0\70\224\1\226\3\0" + + "\70\226\1\230\3\0\70\230\1\232\3\0\70\232\5\0" + + "\7\137\1\0\5\137\3\0\2\137\1\266\2\137\2\0" + + "\4\137\1\0\3\137\23\0\3\137\2\0\2\142\2\0" + + "\3\142\1\267\22\142\1\0\41\142\17\0\1\270\75\0" + + "\1\270\100\0\1\271\52\0\1\30\1\31\1\30\1\31" + + "\1\30\2\31\1\155\5\30\1\0\1\156\1\157\3\30" + + "\1\272\1\30\2\0\4\30\1\0\1\31\1\30\1\31" + + "\23\0\3\30\7\0\7\137\1\0\5\137\3\0\3\137" + + "\1\273\1\137\2\0\4\137\1\0\3\137\23\0\3\137" + + "\2\0\2\142\2\0\21\142\1\274\4\142\1\0\41\142" + + "\27\0\1\275\44\0\2\274\2\0\26\274\1\0\41\274" + + "\30\0\1\276\47\0\1\276\67\0"; private static int[] zzUnpackTrans() { - int[] result = new int[7140]; + int[] result = new int[7200]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -468,17 +470,17 @@ public class _M68kLexer implements FlexLexer { private static final int[] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\17\0\2\11\12\1\1\11\3\1\1\11\21\1\12\11" + + "\17\0\2\11\12\1\1\11\3\1\1\11\22\1\12\11" + "\2\1\1\11\1\1\1\11\2\1\4\11\1\1\4\11" + "\3\1\1\11\2\1\1\11\11\1\1\11\6\1\1\11" + - "\3\1\1\0\5\1\3\0\1\1\3\11\11\1\2\0" + + "\3\1\1\0\5\1\3\0\1\1\3\11\14\1\2\0" + "\1\11\4\0\2\1\10\11\3\0\1\1\1\0\1\1" + "\1\0\1\1\1\0\3\1\3\0\5\11\4\1\1\11" + "\1\0\1\11\3\0\2\1\3\0\3\1\2\0\3\1" + "\1\0\1\1"; private static int[] zzUnpackAttribute() { - int[] result = new int[186]; + int[] result = new int[190]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/parser/M68kParser.java b/src/main/gen/de/platon42/intellij/plugins/m68k/parser/M68kParser.java index 07a6d7d..a0b196d 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/parser/M68kParser.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/parser/M68kParser.java @@ -808,7 +808,7 @@ public class M68kParser implements PsiParser, LightPsiParser { } /* ********************************************************** */ - // ROUND_L SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R (SEPARATOR expr)? ROUND_R + // ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R public static boolean MemoryIndirectAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -824,44 +824,60 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean MemoryIndirectAddressingMode_2(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_2")) return false; MemoryIndirectAddressingMode_2_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean MemoryIndirectAddressingMode_2_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_2_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && MemoryIndirectAddressingMode_2_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean MemoryIndirectAddressingMode_2_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_2_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean MemoryIndirectAddressingMode_5(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_5")) return false; MemoryIndirectAddressingMode_5_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean MemoryIndirectAddressingMode_5_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_5_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && MemoryIndirectAddressingMode_5_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean MemoryIndirectAddressingMode_5_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectAddressingMode_5_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ - // ROUND_L (SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr)? ROUND_R + // ROUND_L (SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr DataWidth?)? ROUND_R public static boolean MemoryIndirectPostIndexedAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -876,14 +892,14 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? + // (SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? private static boolean MemoryIndirectPostIndexedAddressingMode_1(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_1")) return false; MemoryIndirectPostIndexedAddressingMode_1_0(b, l + 1); return true; } - // SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R SEPARATOR + // SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R SEPARATOR private static boolean MemoryIndirectPostIndexedAddressingMode_1_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_1_0")) return false; boolean r; @@ -896,44 +912,60 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean MemoryIndirectPostIndexedAddressingMode_1_0_1(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_1_0_1")) return false; MemoryIndirectPostIndexedAddressingMode_1_0_1_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean MemoryIndirectPostIndexedAddressingMode_1_0_1_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_1_0_1_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && MemoryIndirectPostIndexedAddressingMode_1_0_1_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean MemoryIndirectPostIndexedAddressingMode_1_0_1_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_1_0_1_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean MemoryIndirectPostIndexedAddressingMode_3(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_3")) return false; MemoryIndirectPostIndexedAddressingMode_3_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean MemoryIndirectPostIndexedAddressingMode_3_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_3_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && MemoryIndirectPostIndexedAddressingMode_3_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean MemoryIndirectPostIndexedAddressingMode_3_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectPostIndexedAddressingMode_3_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ - // ROUND_L SQUARE_L (expr SEPARATOR)? AddressRegister SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr)? ROUND_R + // ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R public static boolean MemoryIndirectPreIndexedAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -951,42 +983,58 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean MemoryIndirectPreIndexedAddressingMode_2(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_2")) return false; MemoryIndirectPreIndexedAddressingMode_2_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean MemoryIndirectPreIndexedAddressingMode_2_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_2_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && MemoryIndirectPreIndexedAddressingMode_2_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean MemoryIndirectPreIndexedAddressingMode_2_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_2_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean MemoryIndirectPreIndexedAddressingMode_7(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_7")) return false; MemoryIndirectPreIndexedAddressingMode_7_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean MemoryIndirectPreIndexedAddressingMode_7_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_7_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && MemoryIndirectPreIndexedAddressingMode_7_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean MemoryIndirectPreIndexedAddressingMode_7_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "MemoryIndirectPreIndexedAddressingMode_7_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ // OPSIZE_BS|OPSIZE_W|OPSIZE_L public static boolean OperandSize(PsiBuilder b, int l) { @@ -1228,7 +1276,7 @@ public class M68kParser implements PsiParser, LightPsiParser { } /* ********************************************************** */ - // ROUND_L SQUARE_L (expr SEPARATOR)? PC SQUARE_R (SEPARATOR expr)? ROUND_R + // ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R public static boolean ProgramCounterMemoryIndirectAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -1243,44 +1291,60 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean ProgramCounterMemoryIndirectAddressingMode_2(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_2")) return false; ProgramCounterMemoryIndirectAddressingMode_2_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean ProgramCounterMemoryIndirectAddressingMode_2_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_2_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectAddressingMode_2_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean ProgramCounterMemoryIndirectAddressingMode_2_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_2_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean ProgramCounterMemoryIndirectAddressingMode_5(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_5")) return false; ProgramCounterMemoryIndirectAddressingMode_5_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean ProgramCounterMemoryIndirectAddressingMode_5_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_5_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectAddressingMode_5_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean ProgramCounterMemoryIndirectAddressingMode_5_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectAddressingMode_5_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ - // ROUND_L (SQUARE_L (expr SEPARATOR)? PC SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr)? ROUND_R + // ROUND_L (SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr DataWidth?)? ROUND_R public static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -1295,14 +1359,14 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (SQUARE_L (expr SEPARATOR)? PC SQUARE_R SEPARATOR)? + // (SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R SEPARATOR)? private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_1(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_1")) return false; ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0(b, l + 1); return true; } - // SQUARE_L (expr SEPARATOR)? PC SQUARE_R SEPARATOR + // SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R SEPARATOR private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0")) return false; boolean r; @@ -1314,44 +1378,60 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1")) return false; ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_1_0_1_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_3(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_3")) return false; ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPostIndexedAddressingMode_3_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ - // ROUND_L SQUARE_L (expr SEPARATOR)? PC SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr)? ROUND_R + // ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? PC SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R public static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode")) return false; if (!nextTokenIsFast(b, ROUND_L)) return false; @@ -1368,42 +1448,58 @@ public class M68kParser implements PsiParser, LightPsiParser { return r; } - // (expr SEPARATOR)? + // (expr DataWidth? SEPARATOR)? private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_2(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_2")) return false; ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0(b, l + 1); return true; } - // expr SEPARATOR + // expr DataWidth? SEPARATOR private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0")) return false; boolean r; Marker m = enter_section_(b); r = expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0_1(b, l + 1); r = r && consumeToken(b, SEPARATOR); exit_section_(b, m, null, r); return r; } - // (SEPARATOR expr)? + // DataWidth? + private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0_1(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_2_0_1")) return false; + DataWidth(b, l + 1); + return true; + } + + // (SEPARATOR expr DataWidth?)? private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_7(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_7")) return false; ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0(b, l + 1); return true; } - // SEPARATOR expr + // SEPARATOR expr DataWidth? private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0")) return false; boolean r; Marker m = enter_section_(b); r = consumeTokenFast(b, SEPARATOR); r = r && expr(b, l + 1, -1); + r = r && ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0_2(b, l + 1); exit_section_(b, m, null, r); return r; } + // DataWidth? + private static boolean ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0_2(PsiBuilder b, int l) { + if (!recursion_guard_(b, l, "ProgramCounterMemoryIndirectPreIndexedAddressingMode_7_0_2")) return false; + DataWidth(b, l + 1); + return true; + } + /* ********************************************************** */ // CURRENT_PC_SYMBOL public static boolean ProgramCounterReference(PsiBuilder b, int l) { diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectAddressingMode.java index c70de59..7addbaa 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectAddressingMode.java @@ -11,6 +11,9 @@ public interface M68kMemoryIndirectAddressingMode extends M68kAddressingMode, M6 @NotNull M68kAddressRegister getAddressRegister(); + @NotNull + List getDataWidthList(); + @NotNull List getExprList(); @@ -20,4 +23,10 @@ public interface M68kMemoryIndirectAddressingMode extends M68kAddressingMode, M6 @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPostIndexedAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPostIndexedAddressingMode.java index 68a9d8b..5d7ccb3 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPostIndexedAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPostIndexedAddressingMode.java @@ -11,6 +11,9 @@ public interface M68kMemoryIndirectPostIndexedAddressingMode extends M68kAddress @Nullable M68kAddressRegister getAddressRegister(); + @NotNull + List getDataWidthList(); + @NotNull M68kIndexRegister getIndexRegister(); @@ -23,4 +26,10 @@ public interface M68kMemoryIndirectPostIndexedAddressingMode extends M68kAddress @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPreIndexedAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPreIndexedAddressingMode.java index ebbadac..4da4c6d 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPreIndexedAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kMemoryIndirectPreIndexedAddressingMode.java @@ -11,6 +11,9 @@ public interface M68kMemoryIndirectPreIndexedAddressingMode extends M68kAddressi @NotNull M68kAddressRegister getAddressRegister(); + @NotNull + List getDataWidthList(); + @NotNull M68kIndexRegister getIndexRegister(); @@ -23,4 +26,10 @@ public interface M68kMemoryIndirectPreIndexedAddressingMode extends M68kAddressi @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectAddressingMode.java index 41cfecc..33c463e 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectAddressingMode.java @@ -8,6 +8,9 @@ import java.util.List; public interface M68kProgramCounterMemoryIndirectAddressingMode extends M68kAddressingMode, M68kWithBaseDisplacement, M68kWithOuterDisplacement { + @NotNull + List getDataWidthList(); + @NotNull List getExprList(); @@ -17,4 +20,10 @@ public interface M68kProgramCounterMemoryIndirectAddressingMode extends M68kAddr @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPostIndexedAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPostIndexedAddressingMode.java index 62eb448..bb9d61e 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPostIndexedAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPostIndexedAddressingMode.java @@ -8,6 +8,9 @@ import java.util.List; public interface M68kProgramCounterMemoryIndirectPostIndexedAddressingMode extends M68kAddressingMode, M68kWithBaseDisplacement, M68kWithIndexRegister, M68kWithOuterDisplacement { + @NotNull + List getDataWidthList(); + @NotNull M68kIndexRegister getIndexRegister(); @@ -20,4 +23,10 @@ public interface M68kProgramCounterMemoryIndirectPostIndexedAddressingMode exten @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPreIndexedAddressingMode.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPreIndexedAddressingMode.java index 97ea0ee..9b8e2e4 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPreIndexedAddressingMode.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kProgramCounterMemoryIndirectPreIndexedAddressingMode.java @@ -8,6 +8,9 @@ import java.util.List; public interface M68kProgramCounterMemoryIndirectPreIndexedAddressingMode extends M68kAddressingMode, M68kWithBaseDisplacement, M68kWithIndexRegister, M68kWithOuterDisplacement { + @NotNull + List getDataWidthList(); + @NotNull M68kIndexRegister getIndexRegister(); @@ -20,4 +23,10 @@ public interface M68kProgramCounterMemoryIndirectPreIndexedAddressingMode extend @Nullable M68kExpr getOuterDisplacement(); + @Nullable + M68kDataWidth getBaseDataWidth(); + + @Nullable + M68kDataWidth getOuterDataWidth(); + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectAddressingModeImpl.java index 1bb31d2..1583bcf 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectAddressingModeImpl.java @@ -4,10 +4,7 @@ package de.platon42.intellij.plugins.m68k.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElementVisitor; import com.intellij.psi.util.PsiTreeUtil; -import de.platon42.intellij.plugins.m68k.psi.M68kAddressRegister; -import de.platon42.intellij.plugins.m68k.psi.M68kExpr; -import de.platon42.intellij.plugins.m68k.psi.M68kMemoryIndirectAddressingMode; -import de.platon42.intellij.plugins.m68k.psi.M68kVisitor; +import de.platon42.intellij.plugins.m68k.psi.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -36,6 +33,12 @@ public class M68kMemoryIndirectAddressingModeImpl extends M68kAddressingModeImpl return notNullChild(PsiTreeUtil.getChildOfType(this, M68kAddressRegister.class)); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public List getExprList() { @@ -56,4 +59,18 @@ public class M68kMemoryIndirectAddressingModeImpl extends M68kAddressingModeImpl return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPostIndexedAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPostIndexedAddressingModeImpl.java index 9504ff9..a3c18f2 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPostIndexedAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPostIndexedAddressingModeImpl.java @@ -33,6 +33,12 @@ public class M68kMemoryIndirectPostIndexedAddressingModeImpl extends M68kAddress return PsiTreeUtil.getChildOfType(this, M68kAddressRegister.class); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public M68kIndexRegister getIndexRegister() { @@ -59,4 +65,18 @@ public class M68kMemoryIndirectPostIndexedAddressingModeImpl extends M68kAddress return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPreIndexedAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPreIndexedAddressingModeImpl.java index 5290370..7c85425 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPreIndexedAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kMemoryIndirectPreIndexedAddressingModeImpl.java @@ -33,6 +33,12 @@ public class M68kMemoryIndirectPreIndexedAddressingModeImpl extends M68kAddressi return notNullChild(PsiTreeUtil.getChildOfType(this, M68kAddressRegister.class)); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public M68kIndexRegister getIndexRegister() { @@ -59,4 +65,18 @@ public class M68kMemoryIndirectPreIndexedAddressingModeImpl extends M68kAddressi return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectAddressingModeImpl.java index dad4854..820f54c 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectAddressingModeImpl.java @@ -4,6 +4,7 @@ package de.platon42.intellij.plugins.m68k.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElementVisitor; import com.intellij.psi.util.PsiTreeUtil; +import de.platon42.intellij.plugins.m68k.psi.M68kDataWidth; import de.platon42.intellij.plugins.m68k.psi.M68kExpr; import de.platon42.intellij.plugins.m68k.psi.M68kProgramCounterMemoryIndirectAddressingMode; import de.platon42.intellij.plugins.m68k.psi.M68kVisitor; @@ -29,6 +30,12 @@ public class M68kProgramCounterMemoryIndirectAddressingModeImpl extends M68kAddr else super.accept(visitor); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public List getExprList() { @@ -49,4 +56,18 @@ public class M68kProgramCounterMemoryIndirectAddressingModeImpl extends M68kAddr return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl.java index 3a0e2bf..b470a3a 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl.java @@ -4,10 +4,7 @@ package de.platon42.intellij.plugins.m68k.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElementVisitor; import com.intellij.psi.util.PsiTreeUtil; -import de.platon42.intellij.plugins.m68k.psi.M68kExpr; -import de.platon42.intellij.plugins.m68k.psi.M68kIndexRegister; -import de.platon42.intellij.plugins.m68k.psi.M68kProgramCounterMemoryIndirectPostIndexedAddressingMode; -import de.platon42.intellij.plugins.m68k.psi.M68kVisitor; +import de.platon42.intellij.plugins.m68k.psi.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -30,6 +27,12 @@ public class M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl exten else super.accept(visitor); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public M68kIndexRegister getIndexRegister() { @@ -56,4 +59,18 @@ public class M68kProgramCounterMemoryIndirectPostIndexedAddressingModeImpl exten return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl.java index f23f528..779aede 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/impl/M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl.java @@ -4,10 +4,7 @@ package de.platon42.intellij.plugins.m68k.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElementVisitor; import com.intellij.psi.util.PsiTreeUtil; -import de.platon42.intellij.plugins.m68k.psi.M68kExpr; -import de.platon42.intellij.plugins.m68k.psi.M68kIndexRegister; -import de.platon42.intellij.plugins.m68k.psi.M68kProgramCounterMemoryIndirectPreIndexedAddressingMode; -import de.platon42.intellij.plugins.m68k.psi.M68kVisitor; +import de.platon42.intellij.plugins.m68k.psi.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -30,6 +27,12 @@ public class M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl extend else super.accept(visitor); } + @Override + @NotNull + public List getDataWidthList() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, M68kDataWidth.class); + } + @Override @NotNull public M68kIndexRegister getIndexRegister() { @@ -56,4 +59,18 @@ public class M68kProgramCounterMemoryIndirectPreIndexedAddressingModeImpl extend return p1.size() < 2 ? null : p1.get(1); } + @Override + @Nullable + public M68kDataWidth getBaseDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 1 ? null : p1.get(0); + } + + @Override + @Nullable + public M68kDataWidth getOuterDataWidth() { + List p1 = getDataWidthList(); + return p1.size() < 2 ? null : p1.get(1); + } + } diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf b/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf index ed432b1..fa6cd77 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf +++ b/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf @@ -330,7 +330,7 @@ AddressRegisterIndirectWithIndexNewAddressingMode ::= ROUND_L (expr SEPARATOR)? ] } -MemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R (SEPARATOR expr)? ROUND_R +MemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithAddressRegisterIndirect" @@ -340,10 +340,12 @@ MemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? AddressRegis methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } -MemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (expr SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr)? ROUND_R +MemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithAddressRegisterIndirect" @@ -354,10 +356,12 @@ MemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (expr SEPARATOR)? methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } -MemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? AddressRegister SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr)? ROUND_R +MemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? AddressRegister SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithAddressRegisterIndirect" @@ -368,6 +372,8 @@ MemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? Ad methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } @@ -409,7 +415,7 @@ ProgramCounterIndirectWithIndexNewAddressingMode ::= ROUND_L (expr SEPARATOR)? P ] } -ProgramCounterMemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? PC SQUARE_R (SEPARATOR expr)? ROUND_R +ProgramCounterMemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithBaseDisplacement" @@ -418,10 +424,12 @@ ProgramCounterMemoryIndirectAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR) methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } -ProgramCounterMemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (expr SEPARATOR)? PC SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr)? ROUND_R +ProgramCounterMemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (expr DataWidth? SEPARATOR)? PC SQUARE_R SEPARATOR)? IndexRegister (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithBaseDisplacement" @@ -431,10 +439,12 @@ ProgramCounterMemoryIndirectPostIndexedAddressingMode ::= ROUND_L (SQUARE_L (exp methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } -ProgramCounterMemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr SEPARATOR)? PC SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr)? ROUND_R +ProgramCounterMemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr DataWidth? SEPARATOR)? PC SEPARATOR IndexRegister SQUARE_R (SEPARATOR expr DataWidth?)? ROUND_R { implements = [ "de.platon42.intellij.plugins.m68k.psi.M68kWithBaseDisplacement" @@ -444,6 +454,8 @@ ProgramCounterMemoryIndirectPreIndexedAddressingMode ::= ROUND_L SQUARE_L (expr methods = [ baseDisplacement = "expr[0]" outerDisplacement = "expr[1]" + baseDataWidth = "DataWidth[0]" + outerDataWidth = "DataWidth[1]" ] } diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithBaseDisplacement.kt b/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithBaseDisplacement.kt index d95462a..bb1722d 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithBaseDisplacement.kt +++ b/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithBaseDisplacement.kt @@ -3,4 +3,6 @@ package de.platon42.intellij.plugins.m68k.psi interface M68kWithBaseDisplacement : M68kAddressingMode { val baseDisplacement: M68kExpr? + + val baseDataWidth: M68kDataWidth? } \ No newline at end of file diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithOuterDisplacement.kt b/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithOuterDisplacement.kt index c8367d6..d650ef1 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithOuterDisplacement.kt +++ b/src/main/java/de/platon42/intellij/plugins/m68k/psi/M68kWithOuterDisplacement.kt @@ -3,4 +3,6 @@ package de.platon42.intellij.plugins.m68k.psi interface M68kWithOuterDisplacement : M68kAddressingMode { val outerDisplacement: M68kExpr? + + val outerDataWidth: M68kDataWidth? } \ No newline at end of file diff --git a/src/test/java/de/platon42/intellij/plugins/m68k/parser/AddressingModesTest.kt b/src/test/java/de/platon42/intellij/plugins/m68k/parser/AddressingModesTest.kt index 6801d73..f1b9237 100644 --- a/src/test/java/de/platon42/intellij/plugins/m68k/parser/AddressingModesTest.kt +++ b/src/test/java/de/platon42/intellij/plugins/m68k/parser/AddressingModesTest.kt @@ -94,12 +94,12 @@ internal class AddressingModesTest : AbstractParsingTest() { @Test internal fun memory_indirect_with_all_params(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,a1],124),([-12,a0],-120)\n") + testGoodSyntax(testCase, " move.l ([1234.w,a1],124),([-12.w,a0],-120)\n") } @Test internal fun memory_indirect_without_base_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([a1],124),([a0],-120)\n") + testGoodSyntax(testCase, " move.l ([a1],124.l),([a0],-120.w)\n") } @Test @@ -114,17 +114,17 @@ internal class AddressingModesTest : AbstractParsingTest() { @Test internal fun memory_indirect_post_indexed_with_all_params(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,a1],a0.w*4,124),([-12,a0],d0.l*8,-120)\n") + testGoodSyntax(testCase, " move.l ([1234.w,a1],a0.w*4,124),([-12,a0],d0.l*8,-120.w)\n") } @Test internal fun memory_indirect_post_indexed_without_base_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([a1],a0,124),([a0],d0.l*8,-120)\n") + testGoodSyntax(testCase, " move.l ([a1],a0,124.l),([a0],d0.l*8,-120)\n") } @Test internal fun memory_indirect_post_indexed_without_outer_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,a1],a0),([-12,a0],d0.l*8)\n") + testGoodSyntax(testCase, " move.l ([1234.l,a1],a0),([-12,a0],d0.l*8)\n") } @Test @@ -139,12 +139,12 @@ internal class AddressingModesTest : AbstractParsingTest() { @Test internal fun memory_indirect_pre_indexed_without_base_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([a1,a0],124),([a0,d0.l*8],-120)\n") + testGoodSyntax(testCase, " move.l ([a1,a0],124),([a0,d0.l*8],-120.w)\n") } @Test internal fun memory_indirect_pre_indexed_without_outer_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,a1,a0]),([-12,a0,d0.l*8])\n") + testGoodSyntax(testCase, " move.l ([1234.l,a1,a0]),([-12,a0,d0.l*8])\n") } @Test @@ -152,15 +152,14 @@ internal class AddressingModesTest : AbstractParsingTest() { testGoodSyntax(testCase, " move.l ([a1,a0]),([a0,d0])\n") } - @Test internal fun pc_memory_indirect_with_all_params(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,pc],124),d0\n") + testGoodSyntax(testCase, " move.l ([1234.w,pc],124),d0\n") } @Test internal fun pc_memory_indirect_without_base_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([pc],124),d0\n") + testGoodSyntax(testCase, " move.l ([pc],124.l),d0\n") } @Test @@ -175,7 +174,7 @@ internal class AddressingModesTest : AbstractParsingTest() { @Test internal fun pc_memory_indirect_post_indexed_with_all_params(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,pc],a0.w*4,124),d0\n") + testGoodSyntax(testCase, " move.l ([1234.l,pc],a0.w*4,124.w),d0\n") } @Test @@ -195,12 +194,12 @@ internal class AddressingModesTest : AbstractParsingTest() { @Test internal fun pc_memory_indirect_pre_indexed_with_all_params(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([1234,pc,a0.w*4],124),d0\n") + testGoodSyntax(testCase, " move.l ([1234.w,pc,a0.w*4],124),d0\n") } @Test internal fun pc_memory_indirect_pre_indexed_without_base_displacement(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " move.l ([pc,a0*4],124),d0\n") + testGoodSyntax(testCase, " move.l ([pc,a0*4],124.l),d0\n") } @Test diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_with_all_params.txt b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_with_all_params.txt index 3142b0e..dd1b581 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_with_all_params.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_with_all_params.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterImpl(ADDRESS_REGISTER) PsiElement(M68kTokenType.AREG)('a1') @@ -57,5 +59,7 @@ Assembly File: a.asm PsiElement(M68kTokenType.OP_MINUS)('-') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('120') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_base_displacement.txt b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_base_displacement.txt index f51729d..f949692 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_base_displacement.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_base_displacement.txt @@ -20,6 +20,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SEPARATOR)(',') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('124') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kMemoryIndirectPostIndexedAddressingModeImpl(MEMORY_INDIRECT_POST_INDEXED_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_outer_displacement.txt b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_outer_displacement.txt index 3ae5b35..1e6a416 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_outer_displacement.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_post_indexed_without_outer_displacement.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterImpl(ADDRESS_REGISTER) PsiElement(M68kTokenType.AREG)('a1') diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_base_displacement.txt b/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_base_displacement.txt index f5f7de6..8c361e6 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_base_displacement.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_base_displacement.txt @@ -43,5 +43,7 @@ Assembly File: a.asm PsiElement(M68kTokenType.OP_MINUS)('-') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('120') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_outer_displacement.txt b/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_outer_displacement.txt index d016177..4e1b10d 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_outer_displacement.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_pre_indexed_without_outer_displacement.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterImpl(ADDRESS_REGISTER) PsiElement(M68kTokenType.AREG)('a1') diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_with_all_params.txt b/src/test/resources/parser/addressingmodes/memory_indirect_with_all_params.txt index 471cd1e..534f12f 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_with_all_params.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_with_all_params.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterImpl(ADDRESS_REGISTER) PsiElement(M68kTokenType.AREG)('a1') @@ -28,6 +30,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.OP_MINUS)('-') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('12') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterImpl(ADDRESS_REGISTER) PsiElement(M68kTokenType.AREG)('a0') diff --git a/src/test/resources/parser/addressingmodes/memory_indirect_without_base_displacement.txt b/src/test/resources/parser/addressingmodes/memory_indirect_without_base_displacement.txt index cf3095a..e46b0e5 100644 --- a/src/test/resources/parser/addressingmodes/memory_indirect_without_base_displacement.txt +++ b/src/test/resources/parser/addressingmodes/memory_indirect_without_base_displacement.txt @@ -16,6 +16,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SEPARATOR)(',') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('124') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kMemoryIndirectAddressingModeImpl(MEMORY_INDIRECT_ADDRESSING_MODE) @@ -29,5 +31,7 @@ Assembly File: a.asm PsiElement(M68kTokenType.OP_MINUS)('-') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('120') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/addressingmodes/pc_memory_indirect_post_indexed_with_all_params.txt b/src/test/resources/parser/addressingmodes/pc_memory_indirect_post_indexed_with_all_params.txt index 95da5ff..fdedda2 100644 --- a/src/test/resources/parser/addressingmodes/pc_memory_indirect_post_indexed_with_all_params.txt +++ b/src/test/resources/parser/addressingmodes/pc_memory_indirect_post_indexed_with_all_params.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.SEPARATOR)(',') PsiElement(M68kTokenType.PC)('pc') PsiElement(M68kTokenType.SQUARE_R)(']') @@ -28,6 +30,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SEPARATOR)(',') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('124') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_with_all_params.txt b/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_with_all_params.txt index 57bda55..250c3e6 100644 --- a/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_with_all_params.txt +++ b/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_with_all_params.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') PsiElement(M68kTokenType.PC)('pc') PsiElement(M68kTokenType.SEPARATOR)(',') diff --git a/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_without_base_displacement.txt b/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_without_base_displacement.txt index 62ec2b0..3640889 100644 --- a/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_without_base_displacement.txt +++ b/src/test/resources/parser/addressingmodes/pc_memory_indirect_pre_indexed_without_base_displacement.txt @@ -23,6 +23,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SEPARATOR)(',') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('124') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/pc_memory_indirect_with_all_params.txt b/src/test/resources/parser/addressingmodes/pc_memory_indirect_with_all_params.txt index e58f34b..273d177 100644 --- a/src/test/resources/parser/addressingmodes/pc_memory_indirect_with_all_params.txt +++ b/src/test/resources/parser/addressingmodes/pc_memory_indirect_with_all_params.txt @@ -12,6 +12,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SQUARE_L)('[') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('1234') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') PsiElement(M68kTokenType.PC)('pc') PsiElement(M68kTokenType.SQUARE_R)(']') diff --git a/src/test/resources/parser/addressingmodes/pc_memory_indirect_without_base_displacement.txt b/src/test/resources/parser/addressingmodes/pc_memory_indirect_without_base_displacement.txt index ad0dd47..5141ca7 100644 --- a/src/test/resources/parser/addressingmodes/pc_memory_indirect_without_base_displacement.txt +++ b/src/test/resources/parser/addressingmodes/pc_memory_indirect_without_base_displacement.txt @@ -15,6 +15,8 @@ Assembly File: a.asm PsiElement(M68kTokenType.SEPARATOR)(',') M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('124') + M68kDataWidthImpl(DATA_WIDTH) + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE)