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 387caea..46576b7 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 @@ -131,56 +131,56 @@ public class _M68kLexer implements FlexLexer { /* The ZZ_CMAP_A table has 3200 entries */ static final char ZZ_CMAP_A[] = zzUnpackCMap( - "\11\0\1\4\1\2\2\1\1\3\22\0\1\4\1\53\1\43\1\50\1\24\1\30\1\51\1\42\1\55\1\56" + - "\1\62\1\60\1\46\1\61\1\22\1\63\2\31\6\6\2\35\1\23\1\47\1\44\1\21\1\45\1\0" + - "\1\37\1\5\1\70\1\64\1\11\1\15\12\12\1\10\1\16\1\66\1\7\1\20\1\17\1\67\4\12" + - "\1\0\1\41\1\0\1\54\1\13\1\40\1\32\1\26\1\65\1\33\1\36\1\34\5\12\1\27\3\12" + - "\1\10\1\16\1\66\1\25\1\20\1\17\1\67\1\27\3\12\1\0\1\52\1\0\1\57\6\0\1\1\12" + - "\0\1\4\11\0\1\12\12\0\1\12\4\0\1\12\5\0\27\12\1\0\27\12\1\7\2\12\4\0\14\12" + - "\16\0\5\12\7\0\1\12\1\0\1\12\1\0\5\12\1\0\2\12\2\0\4\12\1\0\1\12\6\0\1\12" + - "\1\0\3\12\1\0\1\12\1\0\4\12\1\0\23\12\1\0\13\12\10\0\6\12\1\0\26\12\2\0\1" + - "\12\6\0\10\12\10\0\13\12\5\0\3\12\15\0\12\14\4\0\6\12\1\0\1\12\17\0\2\12\7" + - "\0\2\12\12\14\3\12\2\0\2\12\1\0\16\12\15\0\11\12\13\0\1\12\16\0\12\14\6\12" + - "\4\0\2\12\4\0\1\12\5\0\6\12\4\0\1\12\11\0\1\12\3\0\1\12\7\0\11\12\7\0\5\12" + - "\1\0\10\12\6\0\26\12\3\0\1\12\2\0\1\12\7\0\12\12\4\0\12\14\1\12\4\0\10\12" + - "\2\0\2\12\2\0\26\12\1\0\7\12\1\0\1\12\3\0\4\12\3\0\1\12\20\0\1\12\15\0\2\12" + - "\1\0\1\12\5\0\6\12\4\0\2\12\1\0\2\12\1\0\2\12\1\0\2\12\17\0\4\12\1\0\1\12" + - "\7\0\12\14\2\0\3\12\20\0\11\12\1\0\2\12\1\0\2\12\1\0\5\12\3\0\1\12\2\0\1\12" + - "\30\0\1\12\13\0\10\12\2\0\1\12\3\0\1\12\1\0\6\12\3\0\3\12\1\0\4\12\3\0\2\12" + - "\1\0\1\12\1\0\2\12\3\0\2\12\3\0\3\12\3\0\14\12\13\0\10\12\1\0\2\12\10\0\3" + - "\12\5\0\1\12\4\0\10\12\1\0\6\12\1\0\5\12\3\0\1\12\3\0\2\12\15\0\13\12\2\0" + - "\1\12\6\0\3\12\10\0\1\12\12\0\6\12\5\0\22\12\3\0\10\12\1\0\11\12\1\0\1\12" + - "\2\0\7\12\11\0\1\12\1\0\2\12\14\0\12\14\7\0\2\12\1\0\1\12\2\0\2\12\1\0\1\12" + - "\2\0\1\12\6\0\4\12\1\0\7\12\1\0\3\12\1\0\1\12\1\0\1\12\2\0\2\12\1\0\4\12\1" + - "\0\2\12\11\0\1\12\2\0\5\12\1\0\1\12\11\0\12\14\2\0\14\12\1\0\24\12\13\0\5" + - "\12\22\0\7\12\4\0\4\12\3\0\1\12\3\0\2\12\7\0\3\12\4\0\15\12\14\0\1\12\1\0" + - "\6\12\1\0\1\12\5\0\1\12\2\0\13\12\1\0\15\12\1\0\4\12\2\0\7\12\1\0\1\12\1\0" + - "\4\12\2\0\1\12\1\0\4\12\2\0\7\12\1\0\1\12\1\0\4\12\2\0\16\12\2\0\6\12\2\0" + - "\15\12\2\0\1\12\1\4\17\12\1\0\10\12\7\0\15\12\1\0\6\12\23\0\1\12\4\0\1\12" + - "\3\0\5\12\2\0\22\12\1\0\1\12\5\0\17\12\1\0\16\12\2\0\5\12\13\0\14\12\13\0" + - "\1\12\15\0\7\12\7\0\16\12\15\0\2\12\12\14\3\0\3\12\11\0\4\12\1\0\4\12\3\0" + - "\2\12\11\0\10\12\1\0\1\12\1\0\1\12\1\0\1\12\1\0\6\12\1\0\7\12\1\0\1\12\3\0" + - "\3\12\1\0\7\12\3\0\4\12\2\0\6\12\4\0\13\4\15\0\2\1\5\0\1\4\17\0\1\4\1\0\1" + - "\12\15\0\1\12\2\0\1\12\4\0\1\12\2\0\12\12\1\0\1\12\3\0\5\12\6\0\1\12\1\0\1" + - "\12\1\0\1\12\1\0\4\12\1\0\13\12\2\0\4\12\5\0\5\12\4\0\1\12\4\0\2\12\13\0\5" + - "\12\6\0\4\12\3\0\2\12\14\0\10\12\7\0\10\12\1\0\7\12\1\0\1\4\4\0\2\12\12\0" + - "\5\12\5\0\2\12\3\0\7\12\6\0\3\12\12\14\2\12\13\0\11\12\2\0\27\12\2\0\7\12" + - "\1\0\3\12\1\0\4\12\1\0\4\12\2\0\6\12\3\0\1\12\1\0\1\12\2\0\5\12\1\0\12\12" + - "\12\14\5\12\1\0\3\12\1\0\10\12\4\0\7\12\3\0\1\12\3\0\2\12\1\0\1\12\3\0\2\12" + - "\2\0\5\12\2\0\1\12\1\0\1\12\30\0\3\12\3\0\6\12\2\0\6\12\2\0\6\12\11\0\7\12" + - "\4\0\5\12\3\0\5\12\5\0\1\12\1\0\10\12\1\0\5\12\1\0\1\12\1\0\2\12\1\0\2\12" + - "\1\0\12\12\6\0\12\12\2\0\6\12\2\0\6\12\2\0\6\12\2\0\3\12\3\0\14\12\1\0\16" + - "\12\1\0\2\12\1\0\2\12\1\0\10\12\6\0\4\12\4\0\16\12\2\0\1\12\1\0\14\12\1\0" + - "\2\12\3\0\1\12\2\0\4\12\1\0\2\12\12\0\10\12\6\0\6\12\1\0\3\12\1\0\12\12\3" + - "\0\1\12\12\0\4\12\13\0\12\14\1\12\1\0\1\12\3\0\7\12\1\0\1\12\1\0\4\12\1\0" + - "\17\12\1\0\2\12\14\0\3\12\7\0\4\12\11\0\2\12\1\0\1\12\20\0\4\12\10\0\1\12" + - "\13\0\10\12\5\0\3\12\2\0\1\12\2\0\2\12\2\0\4\12\1\0\14\12\1\0\1\12\1\0\7\12" + - "\1\0\21\12\1\0\4\12\2\0\10\12\1\0\7\12\1\0\14\12\1\0\4\12\1\0\5\12\1\0\1\12" + - "\3\0\14\12\2\0\13\12\1\0\10\12\2\0\22\14\1\0\2\12\1\0\1\12\2\0\1\12\1\0\12" + - "\12\1\0\4\12\1\0\1\12\1\0\1\12\6\0\1\12\4\0\1\12\1\0\1\12\1\0\1\12\1\0\3\12" + - "\1\0\2\12\1\0\1\12\2\0\1\12\1\0\1\12\1\0\1\12\1\0\1\12\1\0\1\12\1\0\2\12\1" + - "\0\1\12\2\0\4\12\1\0\7\12\1\0\4\12\1\0\4\12\1\0\1\12\1\0\12\12\1\0\5\12\1" + - "\0\3\12\1\0\5\12\1\0\5\12"); + "\11\0\1\4\1\2\2\1\1\3\22\0\1\4\1\54\1\44\1\51\1\24\1\31\1\52\1\43\1\56\1\57" + + "\1\63\1\61\1\47\1\62\1\22\1\64\2\32\6\6\2\36\1\23\1\50\1\45\1\21\1\46\1\0" + + "\1\40\1\5\1\71\1\65\1\11\1\15\6\12\1\30\3\12\1\10\1\16\1\67\1\7\1\20\1\17" + + "\1\70\1\27\3\12\1\0\1\42\1\0\1\55\1\13\1\41\1\33\1\26\1\66\1\34\1\37\1\35" + + "\5\12\1\30\3\12\1\10\1\16\1\67\1\25\1\20\1\17\1\70\1\27\3\12\1\0\1\53\1\0" + + "\1\60\6\0\1\1\12\0\1\4\11\0\1\12\12\0\1\12\4\0\1\12\5\0\27\12\1\0\27\12\1" + + "\7\2\12\4\0\14\12\16\0\5\12\7\0\1\12\1\0\1\12\1\0\5\12\1\0\2\12\2\0\4\12\1" + + "\0\1\12\6\0\1\12\1\0\3\12\1\0\1\12\1\0\4\12\1\0\23\12\1\0\13\12\10\0\6\12" + + "\1\0\26\12\2\0\1\12\6\0\10\12\10\0\13\12\5\0\3\12\15\0\12\14\4\0\6\12\1\0" + + "\1\12\17\0\2\12\7\0\2\12\12\14\3\12\2\0\2\12\1\0\16\12\15\0\11\12\13\0\1\12" + + "\16\0\12\14\6\12\4\0\2\12\4\0\1\12\5\0\6\12\4\0\1\12\11\0\1\12\3\0\1\12\7" + + "\0\11\12\7\0\5\12\1\0\10\12\6\0\26\12\3\0\1\12\2\0\1\12\7\0\12\12\4\0\12\14" + + "\1\12\4\0\10\12\2\0\2\12\2\0\26\12\1\0\7\12\1\0\1\12\3\0\4\12\3\0\1\12\20" + + "\0\1\12\15\0\2\12\1\0\1\12\5\0\6\12\4\0\2\12\1\0\2\12\1\0\2\12\1\0\2\12\17" + + "\0\4\12\1\0\1\12\7\0\12\14\2\0\3\12\20\0\11\12\1\0\2\12\1\0\2\12\1\0\5\12" + + "\3\0\1\12\2\0\1\12\30\0\1\12\13\0\10\12\2\0\1\12\3\0\1\12\1\0\6\12\3\0\3\12" + + "\1\0\4\12\3\0\2\12\1\0\1\12\1\0\2\12\3\0\2\12\3\0\3\12\3\0\14\12\13\0\10\12" + + "\1\0\2\12\10\0\3\12\5\0\1\12\4\0\10\12\1\0\6\12\1\0\5\12\3\0\1\12\3\0\2\12" + + "\15\0\13\12\2\0\1\12\6\0\3\12\10\0\1\12\12\0\6\12\5\0\22\12\3\0\10\12\1\0" + + "\11\12\1\0\1\12\2\0\7\12\11\0\1\12\1\0\2\12\14\0\12\14\7\0\2\12\1\0\1\12\2" + + "\0\2\12\1\0\1\12\2\0\1\12\6\0\4\12\1\0\7\12\1\0\3\12\1\0\1\12\1\0\1\12\2\0" + + "\2\12\1\0\4\12\1\0\2\12\11\0\1\12\2\0\5\12\1\0\1\12\11\0\12\14\2\0\14\12\1" + + "\0\24\12\13\0\5\12\22\0\7\12\4\0\4\12\3\0\1\12\3\0\2\12\7\0\3\12\4\0\15\12" + + "\14\0\1\12\1\0\6\12\1\0\1\12\5\0\1\12\2\0\13\12\1\0\15\12\1\0\4\12\2\0\7\12" + + "\1\0\1\12\1\0\4\12\2\0\1\12\1\0\4\12\2\0\7\12\1\0\1\12\1\0\4\12\2\0\16\12" + + "\2\0\6\12\2\0\15\12\2\0\1\12\1\4\17\12\1\0\10\12\7\0\15\12\1\0\6\12\23\0\1" + + "\12\4\0\1\12\3\0\5\12\2\0\22\12\1\0\1\12\5\0\17\12\1\0\16\12\2\0\5\12\13\0" + + "\14\12\13\0\1\12\15\0\7\12\7\0\16\12\15\0\2\12\12\14\3\0\3\12\11\0\4\12\1" + + "\0\4\12\3\0\2\12\11\0\10\12\1\0\1\12\1\0\1\12\1\0\1\12\1\0\6\12\1\0\7\12\1" + + "\0\1\12\3\0\3\12\1\0\7\12\3\0\4\12\2\0\6\12\4\0\13\4\15\0\2\1\5\0\1\4\17\0" + + "\1\4\1\0\1\12\15\0\1\12\2\0\1\12\4\0\1\12\2\0\12\12\1\0\1\12\3\0\5\12\6\0" + + "\1\12\1\0\1\12\1\0\1\12\1\0\4\12\1\0\13\12\2\0\4\12\5\0\5\12\4\0\1\12\4\0" + + "\2\12\13\0\5\12\6\0\4\12\3\0\2\12\14\0\10\12\7\0\10\12\1\0\7\12\1\0\1\4\4" + + "\0\2\12\12\0\5\12\5\0\2\12\3\0\7\12\6\0\3\12\12\14\2\12\13\0\11\12\2\0\27" + + "\12\2\0\7\12\1\0\3\12\1\0\4\12\1\0\4\12\2\0\6\12\3\0\1\12\1\0\1\12\2\0\5\12" + + "\1\0\12\12\12\14\5\12\1\0\3\12\1\0\10\12\4\0\7\12\3\0\1\12\3\0\2\12\1\0\1" + + "\12\3\0\2\12\2\0\5\12\2\0\1\12\1\0\1\12\30\0\3\12\3\0\6\12\2\0\6\12\2\0\6" + + "\12\11\0\7\12\4\0\5\12\3\0\5\12\5\0\1\12\1\0\10\12\1\0\5\12\1\0\1\12\1\0\2" + + "\12\1\0\2\12\1\0\12\12\6\0\12\12\2\0\6\12\2\0\6\12\2\0\6\12\2\0\3\12\3\0\14" + + "\12\1\0\16\12\1\0\2\12\1\0\2\12\1\0\10\12\6\0\4\12\4\0\16\12\2\0\1\12\1\0" + + "\14\12\1\0\2\12\3\0\1\12\2\0\4\12\1\0\2\12\12\0\10\12\6\0\6\12\1\0\3\12\1" + + "\0\12\12\3\0\1\12\12\0\4\12\13\0\12\14\1\12\1\0\1\12\3\0\7\12\1\0\1\12\1\0" + + "\4\12\1\0\17\12\1\0\2\12\14\0\3\12\7\0\4\12\11\0\2\12\1\0\1\12\20\0\4\12\10" + + "\0\1\12\13\0\10\12\5\0\3\12\2\0\1\12\2\0\2\12\2\0\4\12\1\0\14\12\1\0\1\12" + + "\1\0\7\12\1\0\21\12\1\0\4\12\2\0\10\12\1\0\7\12\1\0\14\12\1\0\4\12\1\0\5\12" + + "\1\0\1\12\3\0\14\12\2\0\13\12\1\0\10\12\2\0\22\14\1\0\2\12\1\0\1\12\2\0\1" + + "\12\1\0\12\12\1\0\4\12\1\0\1\12\1\0\1\12\6\0\1\12\4\0\1\12\1\0\1\12\1\0\1" + + "\12\1\0\3\12\1\0\2\12\1\0\1\12\2\0\1\12\1\0\1\12\1\0\1\12\1\0\1\12\1\0\1\12" + + "\1\0\2\12\1\0\1\12\2\0\4\12\1\0\7\12\1\0\4\12\1\0\4\12\1\0\1\12\1\0\12\12" + + "\1\0\5\12\1\0\3\12\1\0\5\12\1\0\5\12"); /** * Translates DFA states to action switch labels. @@ -189,20 +189,20 @@ public class _M68kLexer implements FlexLexer { private static final String ZZ_ACTION_PACKED_0 = "\11\0\1\1\2\2\1\3\1\4\1\1\1\5\2\6" + - "\1\2\1\7\2\10\1\11\2\12\1\7\1\13\1\14" + - "\1\15\1\1\1\16\1\17\5\16\1\20\1\16\1\1" + - "\1\21\4\1\1\22\1\23\1\24\1\25\1\26\1\27" + - "\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37" + - "\1\40\2\16\2\1\1\41\1\42\1\12\4\42\1\0" + - "\1\43\1\4\2\44\1\0\3\10\1\45\1\46\1\47" + - "\1\50\1\51\1\52\1\16\1\53\1\45\1\46\1\54" + - "\1\55\1\56\1\0\1\42\5\0\1\57\1\60\1\61" + - "\1\62\1\63\1\64\1\65\2\16\2\0\3\42\1\0" + - "\1\42\2\0\1\4\1\44\1\7\1\66\1\67\1\70" + - "\1\71\4\0"; + "\1\2\1\7\1\10\1\1\1\11\2\12\1\7\1\10" + + "\1\13\1\14\1\1\1\15\1\16\5\15\1\17\1\15" + + "\1\1\1\20\4\1\1\21\1\22\1\23\1\24\1\25" + + "\1\26\1\27\1\30\1\31\1\32\1\33\1\34\1\35" + + "\1\36\1\37\2\15\2\1\1\40\1\41\1\12\4\41" + + "\1\0\1\42\1\4\2\43\3\0\1\44\1\45\1\46" + + "\1\47\1\50\1\51\1\52\1\15\1\53\1\44\1\45" + + "\1\46\1\54\1\55\1\56\1\0\1\41\5\0\1\57" + + "\1\60\1\61\1\62\1\63\1\64\1\65\2\15\2\0" + + "\3\41\1\0\1\41\2\0\1\4\1\43\1\7\1\66" + + "\1\67\1\70\1\71\4\0"; private static int[] zzUnpackAction() { - int[] result = new int[129]; + int[] result = new int[130]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -227,26 +227,26 @@ public class _M68kLexer implements FlexLexer { private static final int[] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\71\0\162\0\253\0\344\0\u011d\0\u0156\0\u018f" + - "\0\u01c8\0\u0201\0\u0201\0\u023a\0\u0273\0\u02ac\0\u02e5\0\u031e" + - "\0\u0201\0\u0357\0\u0390\0\u03c9\0\u0402\0\u043b\0\u0474\0\u0201" + - "\0\u04ad\0\u04e6\0\u051f\0\u0558\0\u0591\0\u05ca\0\u0603\0\u063c" + - "\0\u0675\0\u06ae\0\u06e7\0\u0720\0\u0759\0\u0792\0\u07cb\0\u0804" + - "\0\u083d\0\u0876\0\u08af\0\u08e8\0\u0921\0\u095a\0\u0993\0\u0201" + - "\0\u0201\0\u09cc\0\u0a05\0\u0a3e\0\u0201\0\u0201\0\u0201\0\u0201" + - "\0\u0201\0\u0201\0\u0201\0\u0201\0\u0a77\0\u0ab0\0\u0ae9\0\u0b22" + - "\0\u0201\0\u0b5b\0\u0b5b\0\u0b94\0\u0bcd\0\u0c06\0\u0c3f\0\u0c78" + - "\0\u0cb1\0\u0cea\0\u0d23\0\u0d5c\0\u0d95\0\u0dce\0\u0e07\0\u0e40" + - "\0\u0201\0\u0201\0\u0720\0\u0720\0\u0720\0\u0720\0\u0e79\0\u0201" + - "\0\u0720\0\u0720\0\u0804\0\u083d\0\u0876\0\u08af\0\u0201\0\u0eb2" + - "\0\u08e8\0\u0eeb\0\u0921\0\u0f24\0\u0201\0\u0201\0\u0201\0\u0201" + - "\0\u0201\0\u0201\0\u0201\0\u0f5d\0\u0f96\0\u0fcf\0\u1008\0\u1041" + - "\0\u107a\0\u10b3\0\u10ec\0\u1125\0\u115e\0\u1197\0\u0201\0\u0201" + - "\0\u0201\0\u0720\0\u0720\0\u0720\0\u0201\0\u11d0\0\u1209\0\u1242" + - "\0\u0cb1"; + "\0\0\0\72\0\164\0\256\0\350\0\u0122\0\u015c\0\u0196" + + "\0\u01d0\0\u020a\0\u020a\0\u0244\0\u027e\0\u02b8\0\u02f2\0\u032c" + + "\0\u020a\0\u0366\0\u03a0\0\u03da\0\u0414\0\u044e\0\u0488\0\u020a" + + "\0\u04c2\0\u04fc\0\u0536\0\u0570\0\u05aa\0\u05e4\0\u061e\0\u0658" + + "\0\u0692\0\u06cc\0\u0706\0\u0740\0\u077a\0\u07b4\0\u07ee\0\u0828" + + "\0\u0862\0\u089c\0\u08d6\0\u0910\0\u094a\0\u0984\0\u09be\0\u020a" + + "\0\u020a\0\u09f8\0\u0a32\0\u0a6c\0\u020a\0\u020a\0\u020a\0\u020a" + + "\0\u020a\0\u020a\0\u020a\0\u020a\0\u0aa6\0\u0ae0\0\u0b1a\0\u0b54" + + "\0\u020a\0\u0b8e\0\u0b8e\0\u0bc8\0\u0c02\0\u0c3c\0\u0c76\0\u0cb0" + + "\0\u0cea\0\u0d24\0\u0d5e\0\u0d98\0\u0dd2\0\u0d5e\0\u0e0c\0\u020a" + + "\0\u020a\0\u020a\0\u0740\0\u0740\0\u0740\0\u0740\0\u0e46\0\u020a" + + "\0\u0740\0\u0740\0\u0740\0\u0828\0\u0862\0\u089c\0\u08d6\0\u020a" + + "\0\u0e80\0\u0910\0\u0eba\0\u094a\0\u0ef4\0\u020a\0\u020a\0\u020a" + + "\0\u020a\0\u020a\0\u020a\0\u020a\0\u0f2e\0\u0f68\0\u0fa2\0\u0fdc" + + "\0\u1016\0\u1050\0\u108a\0\u10c4\0\u10fe\0\u1138\0\u1172\0\u020a" + + "\0\u020a\0\u020a\0\u0740\0\u0740\0\u0740\0\u020a\0\u11ac\0\u11e6" + + "\0\u1220\0\u0cea"; private static int[] zzUnpackRowMap() { - int[] result = new int[129]; + int[] result = new int[130]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -270,91 +270,89 @@ public class _M68kLexer implements FlexLexer { private static final String ZZ_TRANS_PACKED_0 = "\1\12\2\13\1\14\1\15\1\16\1\12\5\16\1\12" + - "\4\16\1\12\1\17\2\12\3\16\2\12\3\16\1\12" + + "\4\16\1\12\1\17\2\12\4\16\2\12\3\16\1\12" + "\1\16\10\12\2\20\11\12\1\20\1\12\5\16\1\12" + "\2\21\1\22\1\23\1\24\1\12\4\24\1\25\1\12" + - "\4\24\1\12\1\26\2\12\3\24\2\12\3\24\1\12" + + "\4\24\1\12\1\26\2\12\4\24\2\12\3\24\1\12" + "\1\24\10\12\2\27\11\12\1\27\1\12\5\24\1\12" + "\2\30\1\31\1\23\1\32\1\12\4\32\1\33\1\12" + - "\4\32\1\12\1\33\2\12\3\32\2\12\3\32\1\12" + - "\1\32\10\12\1\34\14\12\5\32\1\12\2\30\1\31" + - "\1\35\15\12\1\36\24\12\1\34\22\12\2\30\1\31" + - "\1\23\1\37\1\40\1\41\1\42\1\43\2\44\1\12" + - "\2\44\1\45\1\44\1\46\1\47\1\12\1\50\1\41" + - "\2\44\1\51\1\40\1\37\1\43\1\44\1\40\1\44" + - "\1\52\1\53\1\12\1\54\1\55\1\56\1\57\1\60" + - "\1\34\1\61\1\62\1\63\1\64\1\65\1\66\1\67" + - "\1\70\1\71\1\72\1\73\1\74\2\75\1\44\1\76" + - "\1\44\1\12\2\30\1\31\1\23\2\12\1\77\5\12" + - "\1\100\3\12\1\101\3\12\1\77\10\12\1\100\10\12" + - "\1\34\22\12\2\30\1\31\1\23\1\44\1\40\5\44" + - "\1\12\4\44\1\46\1\44\1\12\1\50\3\44\1\51" + - "\1\40\3\44\1\40\1\44\1\52\1\53\1\12\1\54" + - "\1\55\1\56\1\57\1\60\1\34\1\12\1\62\1\63" + - "\1\64\1\65\1\66\1\67\1\70\1\71\1\72\1\73" + - "\1\74\5\44\1\102\1\103\1\30\1\31\1\23\33\102" + - "\1\104\1\102\1\105\1\106\1\107\1\102\1\60\1\34" + - "\21\102\1\12\2\30\1\31\65\12\73\0\1\13\72\0" + - "\1\15\70\0\1\110\14\16\1\111\1\0\1\112\1\113" + - "\3\16\1\0\6\16\25\0\5\16\5\0\1\114\1\0" + - "\5\114\1\0\4\114\4\0\3\114\2\0\3\114\1\0" + - "\1\114\25\0\5\114\1\20\3\0\65\20\2\0\1\21" + - "\72\0\1\23\71\0\1\24\1\25\4\24\2\25\4\24" + - "\1\0\1\115\1\112\1\116\3\24\1\0\1\25\3\24" + - "\1\25\1\24\25\0\5\24\5\0\14\25\2\0\1\112" + - "\1\116\3\25\1\0\6\25\25\0\5\25\5\0\1\117" + - "\1\120\5\117\1\120\4\117\3\0\1\120\3\117\1\0" + - "\1\120\3\117\1\120\1\117\25\0\5\117\1\27\3\0" + - "\65\27\2\0\1\30\73\0\1\32\1\33\4\32\2\33" + - "\4\32\1\0\1\115\1\0\1\33\3\32\1\0\1\33" + - "\3\32\1\33\1\32\25\0\5\32\5\0\14\33\3\0" + - "\4\33\1\0\6\33\25\0\5\33\1\34\3\0\65\34" + - "\4\0\1\35\111\0\2\121\1\122\46\0\1\44\1\123" + - "\12\44\3\0\4\44\1\0\1\123\5\44\25\0\5\44" + - "\6\0\1\40\22\0\1\40\3\0\1\40\40\0\3\44" + - "\1\123\10\44\3\0\4\44\1\0\6\44\25\0\2\44" + - "\1\124\2\44\5\0\14\44\3\0\4\44\1\0\6\44" + - "\25\0\2\125\3\44\5\0\1\44\1\126\12\44\3\0" + - "\4\44\1\0\1\126\5\44\25\0\5\44\5\0\14\44" + - "\3\0\4\44\1\0\6\44\25\0\5\44\5\0\2\44" + - "\1\127\11\44\3\0\1\44\1\127\2\44\1\0\6\44" + - "\25\0\5\44\21\0\1\130\54\0\14\44\3\0\1\44" + - "\2\131\1\132\1\0\6\44\25\0\5\44\6\0\1\133" + - "\17\0\1\133\2\0\6\133\26\0\1\133\34\0\1\134" + - "\45\0\1\135\22\0\1\135\37\0\40\136\1\137\1\140" + - "\27\136\41\141\1\142\1\137\26\141\41\143\1\144\1\143" + - "\1\137\25\143\21\0\1\145\22\0\1\146\1\147\44\0" + - "\1\150\23\0\1\151\74\0\1\152\71\0\1\153\37\0" + - "\1\147\54\0\14\44\3\0\4\44\1\0\6\44\25\0" + - "\2\154\3\44\5\0\14\44\3\0\2\44\1\155\1\44" + - "\1\0\6\44\25\0\4\44\1\155\15\0\1\156\20\0" + - "\1\156\50\0\1\157\52\0\2\102\3\0\41\102\2\0" + - "\21\102\2\104\3\136\33\104\1\102\1\160\4\104\2\136" + - "\21\104\2\105\3\141\34\105\1\161\1\102\3\105\2\141" + - "\21\105\2\106\3\143\34\106\1\162\1\106\1\102\2\106" + - "\2\143\21\106\2\107\3\163\34\107\1\164\3\107\1\102" + - "\2\163\21\107\4\0\1\110\2\0\1\165\5\0\1\166" + - "\3\0\1\111\3\0\1\165\10\0\1\166\36\0\1\111" + - "\107\0\1\167\70\0\1\170\52\0\14\114\2\0\1\170" + - "\1\0\3\114\1\0\6\114\25\0\5\114\1\171\3\0" + - "\65\171\5\0\14\120\2\0\1\170\4\120\1\0\6\120" + - "\25\0\5\120\5\0\14\117\2\0\1\170\1\120\3\117" + - "\1\0\6\117\25\0\5\117\5\0\14\120\3\0\4\120" + - "\1\0\6\120\25\0\5\120\5\0\3\44\1\172\10\44" + - "\3\0\4\44\1\0\6\44\25\0\5\44\1\136\3\0" + - "\65\136\1\141\3\0\65\141\1\143\3\0\65\143\5\0" + - "\14\44\3\0\4\44\1\0\6\44\25\0\2\44\1\173" + - "\2\44\5\0\14\44\3\0\4\44\1\0\6\44\25\0" + - "\2\44\1\174\2\44\20\0\1\175\67\0\1\175\51\0" + - "\1\104\1\102\2\0\1\136\41\104\2\136\21\104\1\105" + - "\1\102\2\0\1\141\41\105\2\141\21\105\1\106\1\102" + - "\2\0\1\143\41\106\2\143\21\106\41\163\1\176\3\163" + - "\1\137\23\163\1\107\1\102\2\0\1\163\41\107\2\163" + - "\21\107\15\0\1\177\20\0\1\177\50\0\1\200\52\0" + - "\1\163\3\0\65\163\20\0\1\201\67\0\1\201\51\0"; + "\4\32\4\12\4\32\2\12\3\32\1\12\1\32\10\12" + + "\1\34\14\12\5\32\1\12\2\30\1\31\1\35\15\12" + + "\1\36\25\12\1\34\22\12\2\30\1\31\1\23\1\37" + + "\1\40\1\41\1\42\1\43\2\44\1\12\2\44\1\45" + + "\1\44\1\46\1\47\1\12\1\50\1\41\3\44\1\51" + + "\1\40\1\37\1\43\1\44\1\40\1\44\1\52\1\53" + + "\1\12\1\54\1\55\1\56\1\57\1\60\1\34\1\61" + + "\1\62\1\63\1\64\1\65\1\66\1\67\1\70\1\71" + + "\1\72\1\73\1\74\2\75\1\44\1\76\1\44\1\12" + + "\2\30\1\31\1\23\2\12\1\77\5\12\1\100\3\12" + + "\1\101\3\12\1\77\11\12\1\100\10\12\1\34\22\12" + + "\2\30\1\31\1\23\1\44\1\40\5\44\1\12\4\44" + + "\1\46\1\44\1\12\1\50\4\44\1\51\1\40\3\44" + + "\1\40\1\44\1\52\1\53\1\12\1\54\1\55\1\56" + + "\1\57\1\60\1\34\1\12\1\62\1\63\1\64\1\65" + + "\1\66\1\67\1\70\1\71\1\72\1\73\1\74\5\44" + + "\1\102\1\103\1\30\1\31\1\23\34\102\1\104\1\102" + + "\1\105\1\106\1\107\1\102\1\60\1\34\21\102\1\12" + + "\2\30\1\31\66\12\74\0\1\13\73\0\1\15\71\0" + + "\1\110\14\16\1\111\1\0\1\112\1\113\4\16\1\0" + + "\6\16\25\0\5\16\5\0\1\114\1\0\5\114\1\0" + + "\4\114\4\0\4\114\2\0\3\114\1\0\1\114\25\0" + + "\5\114\1\20\3\0\66\20\2\0\1\21\73\0\1\23" + + "\72\0\1\24\1\25\4\24\2\25\4\24\1\0\1\115" + + "\1\112\1\116\4\24\1\0\1\25\3\24\1\25\1\24" + + "\25\0\5\24\5\0\14\25\2\0\1\112\1\116\4\25" + + "\1\0\6\25\25\0\5\25\5\0\1\117\1\0\5\117" + + "\1\0\4\117\4\0\4\117\2\0\3\117\1\0\1\117" + + "\25\0\5\117\1\27\3\0\66\27\2\0\1\30\74\0" + + "\1\32\1\33\4\32\2\33\4\32\1\0\1\115\2\0" + + "\4\32\1\0\1\33\3\32\1\33\1\32\25\0\5\32" + + "\5\0\14\33\4\0\4\33\1\0\6\33\25\0\5\33" + + "\1\34\3\0\66\34\4\0\1\35\112\0\2\120\1\121" + + "\1\122\46\0\1\44\1\123\12\44\3\0\5\44\1\0" + + "\1\123\5\44\25\0\5\44\6\0\1\40\23\0\1\40" + + "\3\0\1\40\40\0\3\44\1\123\10\44\3\0\5\44" + + "\1\0\6\44\25\0\2\44\1\124\2\44\5\0\14\44" + + "\3\0\5\44\1\0\6\44\25\0\2\125\3\44\5\0" + + "\1\44\1\126\12\44\3\0\5\44\1\0\1\126\5\44" + + "\25\0\5\44\5\0\14\44\3\0\5\44\1\0\6\44" + + "\25\0\5\44\5\0\2\44\1\127\11\44\3\0\1\44" + + "\1\127\3\44\1\0\6\44\25\0\5\44\21\0\1\130" + + "\55\0\14\44\3\0\1\44\2\131\1\132\1\133\1\0" + + "\6\44\25\0\5\44\6\0\1\134\17\0\1\134\3\0" + + "\6\134\26\0\1\134\35\0\1\135\45\0\1\136\23\0" + + "\1\136\37\0\41\137\1\140\1\141\27\137\42\142\1\143" + + "\1\140\26\142\42\144\1\145\1\144\1\140\25\144\21\0" + + "\1\146\23\0\1\147\1\150\44\0\1\151\24\0\1\152" + + "\75\0\1\153\72\0\1\154\37\0\1\150\55\0\14\44" + + "\3\0\5\44\1\0\6\44\25\0\2\155\3\44\5\0" + + "\14\44\3\0\2\44\1\156\2\44\1\0\6\44\25\0" + + "\4\44\1\156\15\0\1\157\21\0\1\157\50\0\1\160" + + "\53\0\2\102\3\0\42\102\2\0\21\102\2\104\3\137" + + "\34\104\1\102\1\161\4\104\2\137\21\104\2\105\3\142" + + "\35\105\1\162\1\102\3\105\2\142\21\105\2\106\3\144" + + "\35\106\1\163\1\106\1\102\2\106\2\144\21\106\2\107" + + "\3\164\35\107\1\165\3\107\1\102\2\164\21\107\4\0" + + "\1\110\2\0\1\166\5\0\1\167\3\0\1\111\3\0" + + "\1\166\11\0\1\167\36\0\1\111\110\0\1\170\71\0" + + "\1\171\53\0\14\114\2\0\1\171\1\0\4\114\1\0" + + "\6\114\25\0\5\114\1\172\3\0\66\172\5\0\14\117" + + "\2\0\1\171\1\0\4\117\1\0\6\117\25\0\5\117" + + "\5\0\3\44\1\173\10\44\3\0\5\44\1\0\6\44" + + "\25\0\5\44\1\137\3\0\66\137\1\142\3\0\66\142" + + "\1\144\3\0\66\144\5\0\14\44\3\0\5\44\1\0" + + "\6\44\25\0\2\44\1\174\2\44\5\0\14\44\3\0" + + "\5\44\1\0\6\44\25\0\2\44\1\175\2\44\20\0" + + "\1\176\70\0\1\176\52\0\1\104\1\102\2\0\1\137" + + "\42\104\2\137\21\104\1\105\1\102\2\0\1\142\42\105" + + "\2\142\21\105\1\106\1\102\2\0\1\144\42\106\2\144" + + "\21\106\42\164\1\177\3\164\1\140\23\164\1\107\1\102" + + "\2\0\1\164\42\107\2\164\21\107\15\0\1\200\21\0" + + "\1\200\50\0\1\201\53\0\1\164\3\0\66\164\20\0" + + "\1\202\70\0\1\202\52\0"; private static int[] zzUnpackTrans() { - int[] result = new int[4731]; + int[] result = new int[4698]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -393,13 +391,13 @@ public class _M68kLexer implements FlexLexer { private static final String ZZ_ATTRIBUTE_PACKED_0 = "\11\0\2\11\5\1\1\11\6\1\1\11\27\1\2\11" + - "\3\1\10\11\4\1\1\11\6\1\1\0\4\1\1\0" + - "\3\1\2\11\5\1\1\11\5\1\1\0\1\11\5\0" + - "\7\11\2\1\2\0\3\1\1\0\1\1\2\0\3\11" + - "\3\1\1\11\4\0"; + "\3\1\10\11\4\1\1\11\6\1\1\0\4\1\3\0" + + "\3\11\5\1\1\11\6\1\1\0\1\11\5\0\7\11" + + "\2\1\2\0\3\1\1\0\1\1\2\0\3\11\3\1" + + "\1\11\4\0"; private static int[] zzUnpackAttribute() { - int[] result = new int[129]; + int[] result = new int[130]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -783,7 +781,7 @@ public class _M68kLexer implements FlexLexer { break; case 8: { yybegin(MACROCALL); - return SYMBOL; + return MACRO_INVOKATION; } // fall through case 65: @@ -803,176 +801,175 @@ public class _M68kLexer implements FlexLexer { case 67: break; case 11: { - yybegin(MACROCALL); - return MACRO_INVOKATION; + yybegin(WAITEOL); + return COMMENT; } // fall through case 68: break; case 12: { - yybegin(WAITEOL); - return COMMENT; + yybegin(ASMOPS); + return WHITE_SPACE; } // fall through case 69: break; case 13: { - yybegin(ASMOPS); - return WHITE_SPACE; + return SYMBOL; } // fall through case 70: break; case 14: { - return SYMBOL; + return DECIMAL; } // fall through case 71: break; case 15: { - return DECIMAL; + return OP_ASSIGN; } // fall through case 72: break; case 16: { - return OP_ASSIGN; + return OP_AR_MOD; } // fall through case 73: break; case 17: { - return OP_AR_MOD; + return OP_CMP_LT; } // fall through case 74: break; case 18: { - return OP_CMP_LT; + return OP_CMP_GT; } // fall through case 75: break; case 19: { - return OP_CMP_GT; + return SEPARATOR; } // fall through case 76: break; case 20: { - return SEPARATOR; + return HASH; } // fall through case 77: break; case 21: { - return HASH; + return OP_BITWISE_AND; } // fall through case 78: break; case 22: { - return OP_BITWISE_AND; + return OP_BITWISE_OR; } // fall through case 79: break; case 23: { - return OP_BITWISE_OR; + return OP_UNARY_NOT; } // fall through case 80: break; case 24: { - return OP_UNARY_NOT; + return OP_BITWISE_XOR; } // fall through case 81: break; case 25: { - return OP_BITWISE_XOR; + return ROUND_L; } // fall through case 82: break; case 26: { - return ROUND_L; + return ROUND_R; } // fall through case 83: break; case 27: { - return ROUND_R; + return OP_UNARY_COMPL; } // fall through case 84: break; case 28: { - return OP_UNARY_COMPL; + return OP_PLUS; } // fall through case 85: break; case 29: { - return OP_PLUS; + return OP_MINUS; } // fall through case 86: break; case 30: { - return OP_MINUS; + return OP_AR_MUL; } // fall through case 87: break; case 31: { - return OP_AR_MUL; + return OP_AR_DIV; } // fall through case 88: break; case 32: { - return OP_AR_DIV; + yybegin(EXPR); + return OP_ASSIGN; } // fall through case 89: break; case 33: { - yybegin(EXPR); - return OP_ASSIGN; + return STRINGLIT; } // fall through case 90: break; case 34: { - return STRINGLIT; - } - // fall through - case 91: - break; - case 35: { yybegin(ASSIGNMENT); yypushback(pushbackAssignment(yytext())); return SYMBOLDEF; } // fall through + case 91: + break; + case 35: { + yybegin(INSTRPART); + return LOCAL_LABEL_DEF; + } + // fall through case 92: break; case 36: { - yybegin(INSTRPART); - return LOCAL_LABEL_DEF; + return OPSIZE_BS; } // fall through case 93: break; case 37: { - return OPSIZE_BS; + return OPSIZE_W; } // fall through case 94: break; case 38: { - return OPSIZE_WL; + return OPSIZE_L; } // fall through case 95: 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 296d2d1..c88dd72 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 @@ -285,14 +285,15 @@ public class M68kParser implements PsiParser, LightPsiParser { } /* ********************************************************** */ - // OPSIZE_WL + // OPSIZE_W|OPSIZE_L public static boolean AddressSize(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "AddressSize")) return false; - if (!nextTokenIs(b, OPSIZE_WL)) return false; + if (!nextTokenIs(b, "
", OPSIZE_L, OPSIZE_W)) return false; boolean r; - Marker m = enter_section_(b); - r = consumeToken(b, OPSIZE_WL); - exit_section_(b, m, ADDRESS_SIZE, r); + Marker m = enter_section_(b, l, _NONE_, ADDRESS_SIZE, "
"); + r = consumeToken(b, OPSIZE_W); + if (!r) r = consumeToken(b, OPSIZE_L); + exit_section_(b, l, m, r, false, null); return r; } @@ -490,14 +491,15 @@ public class M68kParser implements PsiParser, LightPsiParser { } /* ********************************************************** */ - // OPSIZE_WL + // OPSIZE_W|OPSIZE_L public static boolean DataWidth(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "DataWidth")) return false; - if (!nextTokenIs(b, OPSIZE_WL)) return false; + if (!nextTokenIs(b, "", OPSIZE_L, OPSIZE_W)) return false; boolean r; - Marker m = enter_section_(b); - r = consumeToken(b, OPSIZE_WL); - exit_section_(b, m, DATA_WIDTH, r); + Marker m = enter_section_(b, l, _NONE_, DATA_WIDTH, ""); + r = consumeToken(b, OPSIZE_W); + if (!r) r = consumeToken(b, OPSIZE_L); + exit_section_(b, l, m, r, false, null); return r; } @@ -631,14 +633,14 @@ public class M68kParser implements PsiParser, LightPsiParser { } /* ********************************************************** */ - // OPSIZE_BS|OPSIZE_WL + // OPSIZE_BS|OPSIZE_W|OPSIZE_L public static boolean OperandSize(PsiBuilder b, int l) { if (!recursion_guard_(b, l, "OperandSize")) return false; - if (!nextTokenIs(b, "", OPSIZE_BS, OPSIZE_WL)) return false; boolean r; Marker m = enter_section_(b, l, _NONE_, OPERAND_SIZE, ""); r = consumeToken(b, OPSIZE_BS); - if (!r) r = consumeToken(b, OPSIZE_WL); + if (!r) r = consumeToken(b, OPSIZE_W); + if (!r) r = consumeToken(b, OPSIZE_L); exit_section_(b, l, m, r, false, null); return r; } diff --git a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kTypes.java b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kTypes.java index f3beb35..2649fa2 100644 --- a/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kTypes.java +++ b/src/main/gen/de/platon42/intellij/plugins/m68k/psi/M68kTypes.java @@ -85,7 +85,8 @@ public interface M68kTypes { IElementType MNEMONIC = new M68kTokenType("MNEMONIC"); IElementType OCTAL = new M68kTokenType("OCTAL"); IElementType OPSIZE_BS = new M68kTokenType("OPSIZE_BS"); - IElementType OPSIZE_WL = new M68kTokenType("OPSIZE_WL"); + IElementType OPSIZE_L = new M68kTokenType("OPSIZE_L"); + IElementType OPSIZE_W = new M68kTokenType("OPSIZE_W"); IElementType OP_AR_DIV = new M68kTokenType("OP_AR_DIV"); IElementType OP_AR_MOD = new M68kTokenType("OP_AR_MOD"); IElementType OP_AR_MUL = new M68kTokenType("OP_AR_MUL"); diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.flex b/src/main/java/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.flex index d790e53..b0aec61 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.flex +++ b/src/main/java/de/platon42/intellij/plugins/m68k/lexer/_M68kLexer.flex @@ -34,10 +34,12 @@ LOCAL_LABEL_WC=(\.([:letter:]|_)(([:letter:]|[:digit:])|_)*:)|(([:letter:]|_)(([ GLOBAL_LABEL=(([:letter:]|_)(([:letter:]|[:digit:])|_)*:?:?) GLOBAL_LABEL_WC=(([:letter:]|_)(([:letter:]|[:digit:])|_)*::?) //MNEMONIC=(([:letter:])+) -SYMBOL=(([:letter:]|_|\.)(([:letter:]|[:digit:])|[_\$])*) +SYMBOL=(([:letter:]|_|\.)(([:letter:]|[:digit:]|[_\$]))*) +MACRONAME=(([:letter:]|_)(([:letter:]|[:digit:]|_))*) DIRECTIVE_KEYWORD=(([:letter:])(([:letter:]))*)(\..)? OPSIZE_BS=(\.[bs]) -OPSIZE_WL=(\.[wl]) +OPSIZE_W=(\.w) +OPSIZE_L=(\.l) BINARY=(%[01]+) HEXADECIMAL=(\$[0-9a-f]+) OCTAL=(@[0-7]+) @@ -73,7 +75,7 @@ HASH_COMMENT=([#;*].*+) yybegin(MACROCALL); return MACRO_INVOKATION; } // {MNEMONIC} { if(isAsmMnemonic(yytext())) { yybegin(ASMINSTR); return MNEMONIC; } else { yybegin(INSTRPART); return SYMBOL; } } - {SYMBOL} { yybegin(MACROCALL); return SYMBOL; } + {MACRONAME} { yybegin(MACROCALL); return MACRO_INVOKATION; } {HASH_COMMENT} { yybegin(YYINITIAL); return COMMENT; } } @@ -89,7 +91,7 @@ HASH_COMMENT=([#;*].*+) yybegin(MACROCALL); return MACRO_INVOKATION; } // {MNEMONIC} { if(isAsmMnemonic(yytext())) { yybegin(ASMINSTR); return MNEMONIC; } else { return SYMBOL; } } - {SYMBOL} { yybegin(MACROCALL); return MACRO_INVOKATION; } + {MACRONAME} { yybegin(MACROCALL); return MACRO_INVOKATION; } {COMMENT} { yybegin(WAITEOL); return COMMENT; } } @@ -99,7 +101,8 @@ HASH_COMMENT=([#;*].*+) {EOL} { yybegin(YYINITIAL); return EOL; } {OPSIZE_BS} { return OPSIZE_BS; } - {OPSIZE_WL} { return OPSIZE_WL; } + {OPSIZE_W} { return OPSIZE_W; } + {OPSIZE_L} { return OPSIZE_L; } {COMMENT} { yybegin(WAITEOL); return COMMENT; } } @@ -184,7 +187,8 @@ HASH_COMMENT=([#;*].*+) {STRINGLIT} { return STRINGLIT; } {OPSIZE_BS} { return OPSIZE_BS; } - {OPSIZE_WL} { return OPSIZE_WL; } + {OPSIZE_W} { return OPSIZE_W; } + {OPSIZE_L} { return OPSIZE_L; } {AREG} { return AREG; } {DREG} { return DREG; } 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 94939c6..cf40124 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf +++ b/src/main/java/de/platon42/intellij/plugins/m68k/m68k.bnf @@ -138,9 +138,9 @@ LocalLabel ::= LOCAL_LABEL_DEF {extends=Label} GlobalLabel ::= GLOBAL_LABEL_DEF {extends=Label} Label ::= LocalLabel | GlobalLabel -OperandSize ::= (OPSIZE_BS|OPSIZE_WL) -AddressSize ::= OPSIZE_WL -DataWidth ::= OPSIZE_WL +OperandSize ::= (OPSIZE_BS|OPSIZE_W|OPSIZE_L) +AddressSize ::= (OPSIZE_W|OPSIZE_L) +DataWidth ::= (OPSIZE_W|OPSIZE_L) AsmOp ::= MNEMONIC OperandSize? diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kColorSettingsPage.kt b/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kColorSettingsPage.kt index e2af42a..5eeb33d 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kColorSettingsPage.kt +++ b/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kColorSettingsPage.kt @@ -11,7 +11,9 @@ import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion. import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.BAD_CHARACTER import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.COMMENT import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DATA_PREPROCESSOR -import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DATA_WIDTH +import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DATA_WIDTH_BS +import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DATA_WIDTH_L +import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DATA_WIDTH_W import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.DREG import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.GLOBAL_LABEL import de.platon42.intellij.plugins.m68k.syntax.M68kSyntaxHighlighter.Companion.LOCAL_LABEL @@ -44,19 +46,21 @@ PIC_HEIGHT = 256 include "../includes/hardware/custom.i" -BLTHOGON MACRO +BLTHOGON MACRO ; macro definition move.w #DMAF_SETCLR|DMAF_BLITHOG,dmacon(a5) ENDM demo_init ; global label - PUSHM d0-d7/a0-a6 ; this is a macro - lea pd_ModViewTable(a4),a0 + tst.w d1 + beq.s .skip + PUSHM d0-d7/a0-a6 ; this is a macro call + lea pd_ModViewTable(a4,d1.w),a0 moveq.l #0,d0 move.w #PIC_HEIGHT-1,d7 .loop move.l d0,(a0)+ ; local label dbra d7,.loop POPM - rts +.skip rts hello: dc.b 'Hello World!',10,0 even @@ -88,7 +92,9 @@ hello: dc.b 'Hello World!',10,0 AttributesDescriptor("Symbol reference", SYMBOL), AttributesDescriptor("Assembly mnemonic", MNEMONIC), AttributesDescriptor("Macro invocation", MACRO_CALL), - AttributesDescriptor("Data/address width", DATA_WIDTH), + AttributesDescriptor("Byte/short data width", DATA_WIDTH_BS), + AttributesDescriptor("Word data width", DATA_WIDTH_W), + AttributesDescriptor("Long data width", DATA_WIDTH_L), AttributesDescriptor("Data preprocessor directives", DATA_PREPROCESSOR), AttributesDescriptor("Other preprocessor directives", OTHER_PREPROCESSOR), AttributesDescriptor("Strings", STRING), diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kSyntaxHighlighter.kt b/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kSyntaxHighlighter.kt index 74f2ca2..4613c8c 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kSyntaxHighlighter.kt +++ b/src/main/java/de/platon42/intellij/plugins/m68k/syntax/M68kSyntaxHighlighter.kt @@ -26,7 +26,9 @@ class M68kSyntaxHighlighter : SyntaxHighlighterBase() { M68kTypes.MACRO_INVOKATION -> arrayOf(MACRO_CALL) M68kTypes.DATA_DIRECTIVE -> arrayOf(DATA_PREPROCESSOR) M68kTypes.OTHER_DIRECTIVE -> arrayOf(OTHER_PREPROCESSOR) - M68kTypes.OPSIZE_BS, M68kTypes.OPSIZE_WL -> arrayOf(DATA_WIDTH) + M68kTypes.OPSIZE_BS -> arrayOf(DATA_WIDTH_BS) + M68kTypes.OPSIZE_W -> arrayOf(DATA_WIDTH_W) + M68kTypes.OPSIZE_L -> arrayOf(DATA_WIDTH_L) M68kTypes.ADDRESS_REGISTER, M68kTypes.AREG -> arrayOf(AREG) M68kTypes.DATA_REGISTER, M68kTypes.DREG -> arrayOf(DREG) M68kTypes.SPECIAL_REGISTER, M68kTypes.REG_USP, M68kTypes.REG_SR, M68kTypes.REG_CCR -> arrayOf(SPECIAL_REG) @@ -46,7 +48,9 @@ class M68kSyntaxHighlighter : SyntaxHighlighterBase() { val SYMBOL = TextAttributesKey.createTextAttributesKey("M68K_SYMBOL", DefaultLanguageHighlighterColors.IDENTIFIER) val MNEMONIC = TextAttributesKey.createTextAttributesKey("M68K_MNEMONIC", DefaultLanguageHighlighterColors.FUNCTION_CALL) val MACRO_CALL = TextAttributesKey.createTextAttributesKey("M68K_MACRO_CALL", DefaultLanguageHighlighterColors.STATIC_METHOD) - val DATA_WIDTH = TextAttributesKey.createTextAttributesKey("M68K_DATA_WIDTH", DefaultLanguageHighlighterColors.INSTANCE_METHOD) + val DATA_WIDTH_BS = TextAttributesKey.createTextAttributesKey("M68K_DATA_WIDTH_BS", DefaultLanguageHighlighterColors.DOT) + val DATA_WIDTH_L = TextAttributesKey.createTextAttributesKey("M68K_DATA_WIDTH_W", DefaultLanguageHighlighterColors.DOT) + val DATA_WIDTH_W = TextAttributesKey.createTextAttributesKey("M68K_DATA_WIDTH_L", DefaultLanguageHighlighterColors.DOT) val DATA_PREPROCESSOR = TextAttributesKey.createTextAttributesKey("M68K_DATA_PREPROCESSOR", DefaultLanguageHighlighterColors.CONSTANT) val OTHER_PREPROCESSOR = TextAttributesKey.createTextAttributesKey("M68K_OTHER_PREPROCESSOR", DefaultLanguageHighlighterColors.KEYWORD) val STRING = TextAttributesKey.createTextAttributesKey("M68K_STRING", DefaultLanguageHighlighterColors.STRING) diff --git a/src/test/java/de/platon42/intellij/plugins/m68k/parser/MacroCallTest.kt b/src/test/java/de/platon42/intellij/plugins/m68k/parser/MacroCallTest.kt index ecf8074..987e185 100644 --- a/src/test/java/de/platon42/intellij/plugins/m68k/parser/MacroCallTest.kt +++ b/src/test/java/de/platon42/intellij/plugins/m68k/parser/MacroCallTest.kt @@ -10,7 +10,7 @@ internal class MacroCallTest : AbstractParsingTest() { @Test internal fun standard_macrocall_without_parameters(@MyTestCase testCase: ParsingTestExtension.IParsingTestCase) { - testGoodSyntax(testCase, " BLTHOGON\n") + testGoodSyntax(testCase, " BLT_HOG_ON\n") } @Test diff --git a/src/test/resources/parser/addressingmodes/absolute_address.txt b/src/test/resources/parser/addressingmodes/absolute_address.txt index d71e7b1..7ac945e 100644 --- a/src/test/resources/parser/addressingmodes/absolute_address.txt +++ b/src/test/resources/parser/addressingmodes/absolute_address.txt @@ -5,13 +5,13 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAbsoluteAddressAddressingModeImpl(ABSOLUTE_ADDRESS_ADDRESSING_MODE) M68kLiteralExprImpl(LITERAL_EXPR) PsiElement(M68kTokenType.DECIMAL)('4') M68kAddressSizeImpl(ADDRESS_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterDirectAddressingModeImpl(ADDRESS_REGISTER_DIRECT_ADDRESSING_MODE) M68kAddressRegisterImpl(ADDRESS_REGISTER) diff --git a/src/test/resources/parser/addressingmodes/immediate_data.txt b/src/test/resources/parser/addressingmodes/immediate_data.txt index 63c01f7..f003071 100644 --- a/src/test/resources/parser/addressingmodes/immediate_data.txt +++ b/src/test/resources/parser/addressingmodes/immediate_data.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('moveq') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kImmediateDataImpl(IMMEDIATE_DATA) PsiElement(M68kTokenType.HASH)('#') diff --git a/src/test/resources/parser/addressingmodes/movem_register_list.txt b/src/test/resources/parser/addressingmodes/movem_register_list.txt index 3681056..d4801ed 100644 --- a/src/test/resources/parser/addressingmodes/movem_register_list.txt +++ b/src/test/resources/parser/addressingmodes/movem_register_list.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('movem') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kRegisterListAddressingModeImpl(REGISTER_LIST_ADDRESSING_MODE) M68kDataRegisterImpl(DATA_REGISTER) diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_special_case_without_offset.txt b/src/test/resources/parser/addressingmodes/pc_indirect_special_case_without_offset.txt index 189face..a7bc7d8 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_special_case_without_offset.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_special_case_without_offset.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithDisplacementOldAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_DISPLACEMENT_OLD_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_new_syntax.txt b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_new_syntax.txt index 3f4ca11..9140212 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_new_syntax.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_new_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithIndexNewAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') @@ -45,6 +45,6 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d5') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_old_syntax.txt b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_old_syntax.txt index 75d2684..7ba59dc 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_old_syntax.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_and_offset_old_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithIndexOldAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_INDEX_OLD_ADDRESSING_MODE) M68kBinaryAddExprImpl(BINARY_ADD_EXPR) @@ -22,7 +22,7 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d0') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kProgramCounterIndirectWithIndexOldAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_INDEX_OLD_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_special_case_without_offset.txt b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_special_case_without_offset.txt index 0d7cd60..096dfe3 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_with_index_special_case_without_offset.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_with_index_special_case_without_offset.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithIndexNewAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') @@ -14,7 +14,7 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d0') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kProgramCounterIndirectWithIndexNewAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_new_syntax.txt b/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_new_syntax.txt index cea3cbb..7ef8c2f 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_new_syntax.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_new_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithDisplacementNewAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_DISPLACEMENT_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_old_syntax.txt b/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_old_syntax.txt index 35b46ec..c736e61 100644 --- a/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_old_syntax.txt +++ b/src/test/resources/parser/addressingmodes/pc_indirect_with_offset_old_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kProgramCounterIndirectWithDisplacementOldAddressingModeImpl(PROGRAM_COUNTER_INDIRECT_WITH_DISPLACEMENT_OLD_ADDRESSING_MODE) M68kBinaryMulExprImpl(BINARY_MUL_EXPR) diff --git a/src/test/resources/parser/addressingmodes/register_direct.txt b/src/test/resources/parser/addressingmodes/register_direct.txt index 01d10d2..2012de4 100644 --- a/src/test/resources/parser/addressingmodes/register_direct.txt +++ b/src/test/resources/parser/addressingmodes/register_direct.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE) M68kDataRegisterImpl(DATA_REGISTER) diff --git a/src/test/resources/parser/addressingmodes/register_indirect.txt b/src/test/resources/parser/addressingmodes/register_indirect.txt index 00345ed..2dd647c 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/addressingmodes/register_indirect_predecrement_postincrement.txt b/src/test/resources/parser/addressingmodes/register_indirect_predecrement_postincrement.txt index a819050..60ad332 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_predecrement_postincrement.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_predecrement_postincrement.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectPostIncAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_POST_INC_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_new_syntax.txt b/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_new_syntax.txt index c40145b..368e2ba 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_new_syntax.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_new_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectWithIndexNewAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') @@ -47,6 +47,6 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d5') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_old_syntax.txt b/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_old_syntax.txt index 1448a1a..dcbf7a7 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_old_syntax.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_with_index_and_offset_old_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectWithIndexOldAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_INDEX_OLD_ADDRESSING_MODE) M68kBinaryAddExprImpl(BINARY_ADD_EXPR) @@ -23,7 +23,7 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d0') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterIndirectWithIndexOldAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_INDEX_OLD_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/register_indirect_with_index_special_case_without_offset.txt b/src/test/resources/parser/addressingmodes/register_indirect_with_index_special_case_without_offset.txt index 19338fa..3bcbfe7 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_with_index_special_case_without_offset.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_with_index_special_case_without_offset.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectWithIndexNewAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') @@ -15,7 +15,7 @@ Assembly File: a.asm M68kDataRegisterImpl(DATA_REGISTER) PsiElement(M68kTokenType.DREG)('d0') M68kDataWidthImpl(DATA_WIDTH) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiElement(M68kTokenType.ROUND_R)(')') PsiElement(M68kTokenType.SEPARATOR)(',') M68kAddressRegisterIndirectWithIndexNewAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_INDEX_NEW_ADDRESSING_MODE) diff --git a/src/test/resources/parser/addressingmodes/register_indirect_with_offset_new_syntax.txt b/src/test/resources/parser/addressingmodes/register_indirect_with_offset_new_syntax.txt index a6eb175..6e2d409 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_with_offset_new_syntax.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_with_offset_new_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectWithDisplacementNewAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_DISPLACEMENT_NEW_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/addressingmodes/register_indirect_with_offset_old_syntax.txt b/src/test/resources/parser/addressingmodes/register_indirect_with_offset_old_syntax.txt index 6b1e7f1..60c2912 100644 --- a/src/test/resources/parser/addressingmodes/register_indirect_with_offset_old_syntax.txt +++ b/src/test/resources/parser/addressingmodes/register_indirect_with_offset_old_syntax.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectWithDisplacementOldAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_WITH_DISPLACEMENT_OLD_ADDRESSING_MODE) M68kBinaryAddExprImpl(BINARY_ADD_EXPR) diff --git a/src/test/resources/parser/addressingmodes/special_register_move.txt b/src/test/resources/parser/addressingmodes/special_register_move.txt index a7a784c..76c0da8 100644 --- a/src/test/resources/parser/addressingmodes/special_register_move.txt +++ b/src/test/resources/parser/addressingmodes/special_register_move.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kSpecialRegisterDirectAddressingModeImpl(SPECIAL_REGISTER_DIRECT_ADDRESSING_MODE) M68kSpecialRegisterImpl(SPECIAL_REGISTER) @@ -21,7 +21,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterDirectAddressingModeImpl(ADDRESS_REGISTER_DIRECT_ADDRESSING_MODE) M68kAddressRegisterImpl(ADDRESS_REGISTER) diff --git a/src/test/resources/parser/basic/basic_block_of_code.txt b/src/test/resources/parser/basic/basic_block_of_code.txt index ad882d6..fc7c8dd 100644 --- a/src/test/resources/parser/basic/basic_block_of_code.txt +++ b/src/test/resources/parser/basic/basic_block_of_code.txt @@ -5,7 +5,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('add') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE) M68kDataRegisterImpl(DATA_REGISTER) diff --git a/src/test/resources/parser/comments/end_of_line_comments.txt b/src/test/resources/parser/comments/end_of_line_comments.txt index 245c43e..086054e 100644 --- a/src/test/resources/parser/comments/end_of_line_comments.txt +++ b/src/test/resources/parser/comments/end_of_line_comments.txt @@ -24,7 +24,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('add') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.w') + PsiElement(M68kTokenType.OPSIZE_W)('.w') PsiWhiteSpace(' ') M68kDataRegisterDirectAddressingModeImpl(DATA_REGISTER_DIRECT_ADDRESSING_MODE) M68kDataRegisterImpl(DATA_REGISTER) diff --git a/src/test/resources/parser/labels/bad_indented_dot_local_label_without_label.txt b/src/test/resources/parser/labels/bad_indented_dot_local_label_without_label.txt index 3ebbc11..dc72ddb 100644 --- a/src/test/resources/parser/labels/bad_indented_dot_local_label_without_label.txt +++ b/src/test/resources/parser/labels/bad_indented_dot_local_label_without_label.txt @@ -1,5 +1,6 @@ Assembly File: a.asm PsiWhiteSpace(' ') - PsiErrorElement:'.local_label' unexpected - PsiElement(M68kTokenType.SYMBOL)('.local_label') + PsiErrorElement:'.' unexpected + PsiElement(BAD_CHARACTER)('.') + PsiElement(M68kTokenType.MACRO_INVOKATION)('local_label') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/labels/bad_indented_local_label_dollar_without_label.txt b/src/test/resources/parser/labels/bad_indented_local_label_dollar_without_label.txt index bda62b3..cc4aa5e 100644 --- a/src/test/resources/parser/labels/bad_indented_local_label_dollar_without_label.txt +++ b/src/test/resources/parser/labels/bad_indented_local_label_dollar_without_label.txt @@ -1,5 +1,7 @@ Assembly File: a.asm PsiWhiteSpace(' ') - PsiErrorElement:'local_label$' unexpected - PsiElement(M68kTokenType.SYMBOL)('local_label$') + M68kStatementImpl(STATEMENT) + M68kMacroCallImpl(MACRO_CALL) + PsiElement(M68kTokenType.MACRO_INVOKATION)('local_label') + PsiElement(M68kTokenType.STRINGLIT)('$') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file diff --git a/src/test/resources/parser/labels/complex_label_test.txt b/src/test/resources/parser/labels/complex_label_test.txt index 9530e0c..4a49746 100644 --- a/src/test/resources/parser/labels/complex_label_test.txt +++ b/src/test/resources/parser/labels/complex_label_test.txt @@ -13,7 +13,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('moveq') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kImmediateDataImpl(IMMEDIATE_DATA) PsiElement(M68kTokenType.HASH)('#') @@ -38,7 +38,7 @@ Assembly File: a.asm M68kAsmOpImpl(ASM_OP) PsiElement(M68kTokenType.MNEMONIC)('move') M68kOperandSizeImpl(OPERAND_SIZE) - PsiElement(M68kTokenType.OPSIZE_WL)('.l') + PsiElement(M68kTokenType.OPSIZE_L)('.l') PsiWhiteSpace(' ') M68kAddressRegisterIndirectPostIncAddressingModeImpl(ADDRESS_REGISTER_INDIRECT_POST_INC_ADDRESSING_MODE) PsiElement(M68kTokenType.ROUND_L)('(') diff --git a/src/test/resources/parser/macros/standard_macrocall_without_parameters.txt b/src/test/resources/parser/macros/standard_macrocall_without_parameters.txt index a026fe7..8c30975 100644 --- a/src/test/resources/parser/macros/standard_macrocall_without_parameters.txt +++ b/src/test/resources/parser/macros/standard_macrocall_without_parameters.txt @@ -2,5 +2,5 @@ Assembly File: a.asm PsiWhiteSpace(' ') M68kStatementImpl(STATEMENT) M68kMacroCallImpl(MACRO_CALL) - PsiElement(M68kTokenType.MACRO_INVOKATION)('BLTHOGON') + PsiElement(M68kTokenType.MACRO_INVOKATION)('BLT_HOG_ON') PsiElement(M68kTokenType.EOL)('\n') \ No newline at end of file