OpenCores
URL https://opencores.org/ocsvn/hpc-16/hpc-16/trunk

Subversion Repositories hpc-16

[/] [hpc-16/] [trunk/] [impl0/] [asm/] [HPC16Parser.py] - Rev 18

Compare with Previous | Blame | View Log

# Generated from HPC16.g4 by ANTLR 4.5.1
# encoding: utf-8
from __future__ import print_function
from antlr4 import *
from io import StringIO
 
def serializedATN():
    with StringIO() as buf:
        buf.write(u"\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\3")
        buf.write(u"R\u017b\4\2\t\2\4\3\t\3\4\4\t\4\3\2\6\2\n\n\2\r\2\16")
        buf.write(u"\2\13\3\3\5\3\17\n\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4")
        buf.write(u"\3\4\5\4\u0179\n\4\3\4\2\2\5\2\4\6\2\2\u01df\2\t\3\2")
        buf.write(u"\2\2\4\16\3\2\2\2\6\u0178\3\2\2\2\b\n\5\4\3\2\t\b\3\2")
        buf.write(u"\2\2\n\13\3\2\2\2\13\t\3\2\2\2\13\f\3\2\2\2\f\3\3\2\2")
        buf.write(u"\2\r\17\5\6\4\2\16\r\3\2\2\2\16\17\3\2\2\2\17\20\3\2")
        buf.write(u"\2\2\20\21\7R\2\2\21\5\3\2\2\2\22\23\7\3\2\2\23\24\7")
        buf.write(u"M\2\2\24\25\7\4\2\2\25\u0179\7M\2\2\26\27\7\3\2\2\27")
        buf.write(u"\30\7O\2\2\30\31\7\4\2\2\31\u0179\7M\2\2\32\33\7\3\2")
        buf.write(u"\2\33\34\7M\2\2\34\35\7\4\2\2\35\u0179\7O\2\2\36\37\7")
        buf.write(u"\5\2\2\37 \7M\2\2 !\7\4\2\2!\"\7\6\2\2\"#\7M\2\2#\u0179")
        buf.write(u"\7\7\2\2$%\7\5\2\2%&\7M\2\2&\'\7\4\2\2\'(\7\6\2\2()\7")
        buf.write(u"M\2\2)*\7\b\2\2*+\7N\2\2+\u0179\7\7\2\2,-\7\5\2\2-.\7")
        buf.write(u"M\2\2./\7\4\2\2/\60\7\6\2\2\60\61\7O\2\2\61\u0179\7\7")
        buf.write(u"\2\2\62\63\7\5\2\2\63\64\7M\2\2\64\65\7\4\2\2\65\66\7")
        buf.write(u"\6\2\2\66\67\7O\2\2\678\7\b\2\289\7N\2\29\u0179\7\7\2")
        buf.write(u"\2:;\7\t\2\2;<\7M\2\2<=\7\4\2\2=>\7\6\2\2>?\7M\2\2?\u0179")
        buf.write(u"\7\7\2\2@A\7\t\2\2AB\7M\2\2BC\7\4\2\2CD\7\6\2\2DE\7M")
        buf.write(u"\2\2EF\7\b\2\2FG\7N\2\2G\u0179\7\7\2\2HI\7\t\2\2IJ\7")
        buf.write(u"M\2\2JK\7\4\2\2KL\7\6\2\2LM\7O\2\2M\u0179\7\7\2\2NO\7")
        buf.write(u"\t\2\2OP\7M\2\2PQ\7\4\2\2QR\7\6\2\2RS\7O\2\2ST\7\b\2")
        buf.write(u"\2TU\7N\2\2U\u0179\7\7\2\2VW\7\n\2\2WX\7M\2\2XY\7\4\2")
        buf.write(u"\2YZ\7\6\2\2Z[\7M\2\2[\u0179\7\7\2\2\\]\7\n\2\2]^\7M")
        buf.write(u"\2\2^_\7\4\2\2_`\7\6\2\2`a\7M\2\2ab\7\b\2\2bc\7N\2\2")
        buf.write(u"c\u0179\7\7\2\2de\7\13\2\2ef\7M\2\2fg\7\4\2\2gh\7\6\2")
        buf.write(u"\2hi\7M\2\2i\u0179\7\7\2\2jk\7\13\2\2kl\7M\2\2lm\7\4")
        buf.write(u"\2\2mn\7\6\2\2no\7M\2\2op\7\b\2\2pq\7N\2\2q\u0179\7\7")
        buf.write(u"\2\2rs\7\f\2\2st\7M\2\2tu\7\4\2\2uv\7\6\2\2vw\7M\2\2")
        buf.write(u"w\u0179\7\7\2\2xy\7\f\2\2yz\7M\2\2z{\7\4\2\2{|\7\6\2")
        buf.write(u"\2|}\7M\2\2}~\7\b\2\2~\177\7N\2\2\177\u0179\7\7\2\2\u0080")
        buf.write(u"\u0081\7\r\2\2\u0081\u0082\7M\2\2\u0082\u0083\7\4\2\2")
        buf.write(u"\u0083\u0179\7N\2\2\u0084\u0085\7\r\2\2\u0085\u0086\7")
        buf.write(u"O\2\2\u0086\u0087\7\4\2\2\u0087\u0179\7N\2\2\u0088\u0089")
        buf.write(u"\7\16\2\2\u0089\u0179\7M\2\2\u008a\u008b\7\17\2\2\u008b")
        buf.write(u"\u0179\7M\2\2\u008c\u008d\7\20\2\2\u008d\u008e\7M\2\2")
        buf.write(u"\u008e\u008f\7\4\2\2\u008f\u0179\7M\2\2\u0090\u0091\7")
        buf.write(u"\21\2\2\u0091\u0092\7M\2\2\u0092\u0093\7\4\2\2\u0093")
        buf.write(u"\u0179\7M\2\2\u0094\u0095\7\22\2\2\u0095\u0096\7M\2\2")
        buf.write(u"\u0096\u0097\7\4\2\2\u0097\u0179\7M\2\2\u0098\u0099\7")
        buf.write(u"\23\2\2\u0099\u009a\7M\2\2\u009a\u009b\7\4\2\2\u009b")
        buf.write(u"\u0179\7M\2\2\u009c\u009d\7\24\2\2\u009d\u009e\7M\2\2")
        buf.write(u"\u009e\u009f\7\4\2\2\u009f\u0179\7M\2\2\u00a0\u00a1\7")
        buf.write(u"\25\2\2\u00a1\u00a2\7M\2\2\u00a2\u00a3\7\4\2\2\u00a3")
        buf.write(u"\u0179\7M\2\2\u00a4\u00a5\7\26\2\2\u00a5\u00a6\7M\2\2")
        buf.write(u"\u00a6\u00a7\7\4\2\2\u00a7\u0179\7M\2\2\u00a8\u00a9\7")
        buf.write(u"\27\2\2\u00a9\u0179\7M\2\2\u00aa\u00ab\7\20\2\2\u00ab")
        buf.write(u"\u00ac\7M\2\2\u00ac\u00ad\7\4\2\2\u00ad\u0179\7N\2\2")
        buf.write(u"\u00ae\u00af\7\21\2\2\u00af\u00b0\7M\2\2\u00b0\u00b1")
        buf.write(u"\7\4\2\2\u00b1\u0179\7N\2\2\u00b2\u00b3\7\22\2\2\u00b3")
        buf.write(u"\u00b4\7M\2\2\u00b4\u00b5\7\4\2\2\u00b5\u0179\7N\2\2")
        buf.write(u"\u00b6\u00b7\7\23\2\2\u00b7\u00b8\7M\2\2\u00b8\u00b9")
        buf.write(u"\7\4\2\2\u00b9\u0179\7N\2\2\u00ba\u00bb\7\24\2\2\u00bb")
        buf.write(u"\u00bc\7M\2\2\u00bc\u00bd\7\4\2\2\u00bd\u0179\7N\2\2")
        buf.write(u"\u00be\u00bf\7\25\2\2\u00bf\u00c0\7M\2\2\u00c0\u00c1")
        buf.write(u"\7\4\2\2\u00c1\u0179\7N\2\2\u00c2\u00c3\7\26\2\2\u00c3")
        buf.write(u"\u00c4\7M\2\2\u00c4\u00c5\7\4\2\2\u00c5\u0179\7N\2\2")
        buf.write(u"\u00c6\u00c7\7\22\2\2\u00c7\u00c8\7O\2\2\u00c8\u00c9")
        buf.write(u"\7\4\2\2\u00c9\u0179\7N\2\2\u00ca\u00cb\7\20\2\2\u00cb")
        buf.write(u"\u00cc\7O\2\2\u00cc\u00cd\7\4\2\2\u00cd\u0179\7N\2\2")
        buf.write(u"\u00ce\u00cf\7\30\2\2\u00cf\u00d0\7M\2\2\u00d0\u00d1")
        buf.write(u"\7\4\2\2\u00d1\u0179\7M\2\2\u00d2\u00d3\7\31\2\2\u00d3")
        buf.write(u"\u00d4\7M\2\2\u00d4\u00d5\7\4\2\2\u00d5\u0179\7M\2\2")
        buf.write(u"\u00d6\u00d7\7\30\2\2\u00d7\u00d8\7M\2\2\u00d8\u00d9")
        buf.write(u"\7\4\2\2\u00d9\u0179\7N\2\2\u00da\u00db\7\31\2\2\u00db")
        buf.write(u"\u00dc\7M\2\2\u00dc\u00dd\7\4\2\2\u00dd\u0179\7N\2\2")
        buf.write(u"\u00de\u00df\7\32\2\2\u00df\u00e0\7M\2\2\u00e0\u00e1")
        buf.write(u"\7\4\2\2\u00e1\u0179\7M\2\2\u00e2\u00e3\7\33\2\2\u00e3")
        buf.write(u"\u00e4\7M\2\2\u00e4\u00e5\7\4\2\2\u00e5\u0179\7M\2\2")
        buf.write(u"\u00e6\u00e7\7\34\2\2\u00e7\u00e8\7M\2\2\u00e8\u00e9")
        buf.write(u"\7\4\2\2\u00e9\u0179\7M\2\2\u00ea\u00eb\7\35\2\2\u00eb")
        buf.write(u"\u00ec\7M\2\2\u00ec\u00ed\7\4\2\2\u00ed\u0179\7M\2\2")
        buf.write(u"\u00ee\u00ef\7\36\2\2\u00ef\u00f0\7M\2\2\u00f0\u00f1")
        buf.write(u"\7\4\2\2\u00f1\u0179\7M\2\2\u00f2\u00f3\7\37\2\2\u00f3")
        buf.write(u"\u00f4\7M\2\2\u00f4\u00f5\7\4\2\2\u00f5\u0179\7M\2\2")
        buf.write(u"\u00f6\u00f7\7 \2\2\u00f7\u00f8\7M\2\2\u00f8\u00f9\7")
        buf.write(u"\4\2\2\u00f9\u0179\7M\2\2\u00fa\u00fb\7!\2\2\u00fb\u00fc")
        buf.write(u"\7M\2\2\u00fc\u00fd\7\4\2\2\u00fd\u0179\7M\2\2\u00fe")
        buf.write(u"\u00ff\7\32\2\2\u00ff\u0100\7M\2\2\u0100\u0101\7\4\2")
        buf.write(u"\2\u0101\u0179\7N\2\2\u0102\u0103\7\33\2\2\u0103\u0104")
        buf.write(u"\7M\2\2\u0104\u0105\7\4\2\2\u0105\u0179\7N\2\2\u0106")
        buf.write(u"\u0107\7\34\2\2\u0107\u0108\7M\2\2\u0108\u0109\7\4\2")
        buf.write(u"\2\u0109\u0179\7N\2\2\u010a\u010b\7\35\2\2\u010b\u010c")
        buf.write(u"\7M\2\2\u010c\u010d\7\4\2\2\u010d\u0179\7N\2\2\u010e")
        buf.write(u"\u010f\7\36\2\2\u010f\u0110\7M\2\2\u0110\u0111\7\4\2")
        buf.write(u"\2\u0111\u0179\7N\2\2\u0112\u0113\7\37\2\2\u0113\u0114")
        buf.write(u"\7M\2\2\u0114\u0115\7\4\2\2\u0115\u0179\7N\2\2\u0116")
        buf.write(u"\u0117\7 \2\2\u0117\u0118\7M\2\2\u0118\u0119\7\4\2\2")
        buf.write(u"\u0119\u0179\7N\2\2\u011a\u011b\7!\2\2\u011b\u011c\7")
        buf.write(u"M\2\2\u011c\u011d\7\4\2\2\u011d\u0179\7N\2\2\u011e\u011f")
        buf.write(u"\7\"\2\2\u011f\u0179\7M\2\2\u0120\u0179\7#\2\2\u0121")
        buf.write(u"\u0122\7$\2\2\u0122\u0179\7M\2\2\u0123\u0179\7%\2\2\u0124")
        buf.write(u"\u0125\7&\2\2\u0125\u0126\7\6\2\2\u0126\u0127\7M\2\2")
        buf.write(u"\u0127\u0179\7\7\2\2\u0128\u0129\7\'\2\2\u0129\u012a")
        buf.write(u"\7\6\2\2\u012a\u012b\7M\2\2\u012b\u0179\7\7\2\2\u012c")
        buf.write(u"\u012d\7\'\2\2\u012d\u012e\7\6\2\2\u012e\u012f\7N\2\2")
        buf.write(u"\u012f\u0179\7\7\2\2\u0130\u0179\7(\2\2\u0131\u0179\7")
        buf.write(u")\2\2\u0132\u0179\7*\2\2\u0133\u0179\7+\2\2\u0134\u0179")
        buf.write(u"\7,\2\2\u0135\u0179\7-\2\2\u0136\u0179\7.\2\2\u0137\u0138")
        buf.write(u"\7/\2\2\u0138\u0179\7N\2\2\u0139\u0179\7\60\2\2\u013a")
        buf.write(u"\u013b\7\61\2\2\u013b\u013c\7\6\2\2\u013c\u013d\7M\2")
        buf.write(u"\2\u013d\u0179\7\7\2\2\u013e\u013f\7\62\2\2\u013f\u0140")
        buf.write(u"\7\6\2\2\u0140\u0141\7M\2\2\u0141\u0179\7\7\2\2\u0142")
        buf.write(u"\u0143\7\62\2\2\u0143\u0144\7\6\2\2\u0144\u0145\7N\2")
        buf.write(u"\2\u0145\u0179\7\7\2\2\u0146\u0179\7\63\2\2\u0147\u0179")
        buf.write(u"\7\64\2\2\u0148\u0149\7\65\2\2\u0149\u0179\7N\2\2\u014a")
        buf.write(u"\u014b\7\66\2\2\u014b\u0179\7N\2\2\u014c\u014d\7\67\2")
        buf.write(u"\2\u014d\u0179\7N\2\2\u014e\u014f\78\2\2\u014f\u0179")
        buf.write(u"\7N\2\2\u0150\u0151\79\2\2\u0151\u0179\7N\2\2\u0152\u0153")
        buf.write(u"\7:\2\2\u0153\u0179\7N\2\2\u0154\u0155\7;\2\2\u0155\u0179")
        buf.write(u"\7N\2\2\u0156\u0157\7<\2\2\u0157\u0179\7N\2\2\u0158\u0159")
        buf.write(u"\7=\2\2\u0159\u0179\7N\2\2\u015a\u015b\7>\2\2\u015b\u0179")
        buf.write(u"\7N\2\2\u015c\u015d\7?\2\2\u015d\u0179\7N\2\2\u015e\u015f")
        buf.write(u"\7@\2\2\u015f\u0179\7N\2\2\u0160\u0161\7A\2\2\u0161\u0179")
        buf.write(u"\7N\2\2\u0162\u0163\7B\2\2\u0163\u0179\7N\2\2\u0164\u0165")
        buf.write(u"\7C\2\2\u0165\u0179\7N\2\2\u0166\u0167\7D\2\2\u0167\u0179")
        buf.write(u"\7N\2\2\u0168\u0169\7E\2\2\u0169\u0179\7N\2\2\u016a\u016b")
        buf.write(u"\7F\2\2\u016b\u0179\7N\2\2\u016c\u016d\7G\2\2\u016d\u0179")
        buf.write(u"\7N\2\2\u016e\u016f\7H\2\2\u016f\u0179\7N\2\2\u0170\u0171")
        buf.write(u"\7I\2\2\u0171\u0179\7N\2\2\u0172\u0173\7J\2\2\u0173\u0179")
        buf.write(u"\7N\2\2\u0174\u0175\7K\2\2\u0175\u0179\7N\2\2\u0176\u0177")
        buf.write(u"\7L\2\2\u0177\u0179\7N\2\2\u0178\22\3\2\2\2\u0178\26")
        buf.write(u"\3\2\2\2\u0178\32\3\2\2\2\u0178\36\3\2\2\2\u0178$\3\2")
        buf.write(u"\2\2\u0178,\3\2\2\2\u0178\62\3\2\2\2\u0178:\3\2\2\2\u0178")
        buf.write(u"@\3\2\2\2\u0178H\3\2\2\2\u0178N\3\2\2\2\u0178V\3\2\2")
        buf.write(u"\2\u0178\\\3\2\2\2\u0178d\3\2\2\2\u0178j\3\2\2\2\u0178")
        buf.write(u"r\3\2\2\2\u0178x\3\2\2\2\u0178\u0080\3\2\2\2\u0178\u0084")
        buf.write(u"\3\2\2\2\u0178\u0088\3\2\2\2\u0178\u008a\3\2\2\2\u0178")
        buf.write(u"\u008c\3\2\2\2\u0178\u0090\3\2\2\2\u0178\u0094\3\2\2")
        buf.write(u"\2\u0178\u0098\3\2\2\2\u0178\u009c\3\2\2\2\u0178\u00a0")
        buf.write(u"\3\2\2\2\u0178\u00a4\3\2\2\2\u0178\u00a8\3\2\2\2\u0178")
        buf.write(u"\u00aa\3\2\2\2\u0178\u00ae\3\2\2\2\u0178\u00b2\3\2\2")
        buf.write(u"\2\u0178\u00b6\3\2\2\2\u0178\u00ba\3\2\2\2\u0178\u00be")
        buf.write(u"\3\2\2\2\u0178\u00c2\3\2\2\2\u0178\u00c6\3\2\2\2\u0178")
        buf.write(u"\u00ca\3\2\2\2\u0178\u00ce\3\2\2\2\u0178\u00d2\3\2\2")
        buf.write(u"\2\u0178\u00d6\3\2\2\2\u0178\u00da\3\2\2\2\u0178\u00de")
        buf.write(u"\3\2\2\2\u0178\u00e2\3\2\2\2\u0178\u00e6\3\2\2\2\u0178")
        buf.write(u"\u00ea\3\2\2\2\u0178\u00ee\3\2\2\2\u0178\u00f2\3\2\2")
        buf.write(u"\2\u0178\u00f6\3\2\2\2\u0178\u00fa\3\2\2\2\u0178\u00fe")
        buf.write(u"\3\2\2\2\u0178\u0102\3\2\2\2\u0178\u0106\3\2\2\2\u0178")
        buf.write(u"\u010a\3\2\2\2\u0178\u010e\3\2\2\2\u0178\u0112\3\2\2")
        buf.write(u"\2\u0178\u0116\3\2\2\2\u0178\u011a\3\2\2\2\u0178\u011e")
        buf.write(u"\3\2\2\2\u0178\u0120\3\2\2\2\u0178\u0121\3\2\2\2\u0178")
        buf.write(u"\u0123\3\2\2\2\u0178\u0124\3\2\2\2\u0178\u0128\3\2\2")
        buf.write(u"\2\u0178\u012c\3\2\2\2\u0178\u0130\3\2\2\2\u0178\u0131")
        buf.write(u"\3\2\2\2\u0178\u0132\3\2\2\2\u0178\u0133\3\2\2\2\u0178")
        buf.write(u"\u0134\3\2\2\2\u0178\u0135\3\2\2\2\u0178\u0136\3\2\2")
        buf.write(u"\2\u0178\u0137\3\2\2\2\u0178\u0139\3\2\2\2\u0178\u013a")
        buf.write(u"\3\2\2\2\u0178\u013e\3\2\2\2\u0178\u0142\3\2\2\2\u0178")
        buf.write(u"\u0146\3\2\2\2\u0178\u0147\3\2\2\2\u0178\u0148\3\2\2")
        buf.write(u"\2\u0178\u014a\3\2\2\2\u0178\u014c\3\2\2\2\u0178\u014e")
        buf.write(u"\3\2\2\2\u0178\u0150\3\2\2\2\u0178\u0152\3\2\2\2\u0178")
        buf.write(u"\u0154\3\2\2\2\u0178\u0156\3\2\2\2\u0178\u0158\3\2\2")
        buf.write(u"\2\u0178\u015a\3\2\2\2\u0178\u015c\3\2\2\2\u0178\u015e")
        buf.write(u"\3\2\2\2\u0178\u0160\3\2\2\2\u0178\u0162\3\2\2\2\u0178")
        buf.write(u"\u0164\3\2\2\2\u0178\u0166\3\2\2\2\u0178\u0168\3\2\2")
        buf.write(u"\2\u0178\u016a\3\2\2\2\u0178\u016c\3\2\2\2\u0178\u016e")
        buf.write(u"\3\2\2\2\u0178\u0170\3\2\2\2\u0178\u0172\3\2\2\2\u0178")
        buf.write(u"\u0174\3\2\2\2\u0178\u0176\3\2\2\2\u0179\7\3\2\2\2\5")
        buf.write(u"\13\16\u0178")
        return buf.getvalue()
 
 
class HPC16Parser ( Parser ):
 
    grammarFileName = "HPC16.g4"
 
    atn = ATNDeserializer().deserialize(serializedATN())
 
    decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
 
    sharedContextCache = PredictionContextCache()
 
    literalNames = [ u"<INVALID>", u"'mov'", u"','", u"'ld'", u"'('", u"')'", 
                     u"'+'", u"'st'", u"'lbzx'", u"'lbsx'", u"'sb'", u"'li'", 
                     u"'inc'", u"'dec'", u"'sub'", u"'and'", u"'add'", u"'adc'", 
                     u"'sbb'", u"'or'", u"'xor'", u"'not'", u"'cmp'", u"'test'", 
                     u"'sll'", u"'slr'", u"'sal'", u"'sar'", u"'rol'", u"'ror'", 
                     u"'rcl'", u"'rcr'", u"'push'", u"'pushf'", u"'pop'", 
                     u"'popf'", u"'acall'", u"'call'", u"'ret'", u"'iret'", 
                     u"'clc'", u"'stc'", u"'cmc'", u"'cli'", u"'sti'", u"'int'", 
                     u"'into'", u"'ajmp'", u"'jmp'", u"'nop'", u"'hlt'", 
                     u"'jo'", u"'jno'", u"'jb'", u"'jnae'", u"'jnb'", u"'jae'", 
                     u"'je'", u"'jz'", u"'jne'", u"'jnz'", u"'jbe'", u"'jna'", 
                     u"'jnbe'", u"'ja'", u"'js'", u"'jns'", u"'jl'", u"'jnge'", 
                     u"'jnl'", u"'jge'", u"'jle'", u"'jng'", u"'jnle'", 
                     u"'jg'" ]
 
    symbolicNames = [ u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"<INVALID>", 
                      u"<INVALID>", u"<INVALID>", u"<INVALID>", u"REG", 
                      u"IMM", u"STK_PTR", u"WS", u"LINE_COMMENT", u"NEWLINE" ]
 
    RULE_prog = 0
    RULE_stat = 1
    RULE_asm_inst = 2
 
    ruleNames =  [ u"prog", u"stat", u"asm_inst" ]
 
    EOF = Token.EOF
    T__0=1
    T__1=2
    T__2=3
    T__3=4
    T__4=5
    T__5=6
    T__6=7
    T__7=8
    T__8=9
    T__9=10
    T__10=11
    T__11=12
    T__12=13
    T__13=14
    T__14=15
    T__15=16
    T__16=17
    T__17=18
    T__18=19
    T__19=20
    T__20=21
    T__21=22
    T__22=23
    T__23=24
    T__24=25
    T__25=26
    T__26=27
    T__27=28
    T__28=29
    T__29=30
    T__30=31
    T__31=32
    T__32=33
    T__33=34
    T__34=35
    T__35=36
    T__36=37
    T__37=38
    T__38=39
    T__39=40
    T__40=41
    T__41=42
    T__42=43
    T__43=44
    T__44=45
    T__45=46
    T__46=47
    T__47=48
    T__48=49
    T__49=50
    T__50=51
    T__51=52
    T__52=53
    T__53=54
    T__54=55
    T__55=56
    T__56=57
    T__57=58
    T__58=59
    T__59=60
    T__60=61
    T__61=62
    T__62=63
    T__63=64
    T__64=65
    T__65=66
    T__66=67
    T__67=68
    T__68=69
    T__69=70
    T__70=71
    T__71=72
    T__72=73
    T__73=74
    REG=75
    IMM=76
    STK_PTR=77
    WS=78
    LINE_COMMENT=79
    NEWLINE=80
 
    def __init__(self, input):
        super(HPC16Parser, self).__init__(input)
        self.checkVersion("4.5.1")
        self._interp = ParserATNSimulator(self, self.atn, self.decisionsToDFA, self.sharedContextCache)
        self._predicates = None
 
 
 
    class ProgContext(ParserRuleContext):
 
        def __init__(self, parser, parent=None, invokingState=-1):
            super(HPC16Parser.ProgContext, self).__init__(parent, invokingState)
            self.parser = parser
 
        def stat(self, i=None):
            if i is None:
                return self.getTypedRuleContexts(HPC16Parser.StatContext)
            else:
                return self.getTypedRuleContext(HPC16Parser.StatContext,i)
 
 
        def getRuleIndex(self):
            return HPC16Parser.RULE_prog
 
        def enterRule(self, listener):
            if hasattr(listener, "enterProg"):
                listener.enterProg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitProg"):
                listener.exitProg(self)
 
 
 
 
    def prog(self):
 
        localctx = HPC16Parser.ProgContext(self, self._ctx, self.state)
        self.enterRule(localctx, 0, self.RULE_prog)
        self._la = 0 # Token type
        try:
            self.enterOuterAlt(localctx, 1)
            self.state = 7 
            self._errHandler.sync(self)
            _la = self._input.LA(1)
            while True:
                self.state = 6
                self.stat()
                self.state = 9 
                self._errHandler.sync(self)
                _la = self._input.LA(1)
                if not ((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << HPC16Parser.T__0) | (1 << HPC16Parser.T__2) | (1 << HPC16Parser.T__6) | (1 << HPC16Parser.T__7) | (1 << HPC16Parser.T__8) | (1 << HPC16Parser.T__9) | (1 << HPC16Parser.T__10) | (1 << HPC16Parser.T__11) | (1 << HPC16Parser.T__12) | (1 << HPC16Parser.T__13) | (1 << HPC16Parser.T__14) | (1 << HPC16Parser.T__15) | (1 << HPC16Parser.T__16) | (1 << HPC16Parser.T__17) | (1 << HPC16Parser.T__18) | (1 << HPC16Parser.T__19) | (1 << HPC16Parser.T__20) | (1 << HPC16Parser.T__21) | (1 << HPC16Parser.T__22) | (1 << HPC16Parser.T__23) | (1 << HPC16Parser.T__24) | (1 << HPC16Parser.T__25) | (1 << HPC16Parser.T__26) | (1 << HPC16Parser.T__27) | (1 << HPC16Parser.T__28) | (1 << HPC16Parser.T__29) | (1 << HPC16Parser.T__30) | (1 << HPC16Parser.T__31) | (1 << HPC16Parser.T__32) | (1 << HPC16Parser.T__33) | (1 << HPC16Parser.T__34) | (1 << HPC16Parser.T__35) | (1 << HPC16Parser.T__36) | (1 << HPC16Parser.T__37) | (1 << HPC16Parser.T__38) | (1 << HPC16Parser.T__39) | (1 << HPC16Parser.T__40) | (1 << HPC16Parser.T__41) | (1 << HPC16Parser.T__42) | (1 << HPC16Parser.T__43) | (1 << HPC16Parser.T__44) | (1 << HPC16Parser.T__45) | (1 << HPC16Parser.T__46) | (1 << HPC16Parser.T__47) | (1 << HPC16Parser.T__48) | (1 << HPC16Parser.T__49) | (1 << HPC16Parser.T__50) | (1 << HPC16Parser.T__51) | (1 << HPC16Parser.T__52) | (1 << HPC16Parser.T__53) | (1 << HPC16Parser.T__54) | (1 << HPC16Parser.T__55) | (1 << HPC16Parser.T__56) | (1 << HPC16Parser.T__57) | (1 << HPC16Parser.T__58) | (1 << HPC16Parser.T__59) | (1 << HPC16Parser.T__60) | (1 << HPC16Parser.T__61) | (1 << HPC16Parser.T__62))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (HPC16Parser.T__63 - 64)) | (1 << (HPC16Parser.T__64 - 64)) | (1 << (HPC16Parser.T__65 - 64)) | (1 << (HPC16Parser.T__66 - 64)) | (1 << (HPC16Parser.T__67 - 64)) | (1 << (HPC16Parser.T__68 - 64)) | (1 << (HPC16Parser.T__69 - 64)) | (1 << (HPC16Parser.T__70 - 64)) | (1 << (HPC16Parser.T__71 - 64)) | (1 << (HPC16Parser.T__72 - 64)) | (1 << (HPC16Parser.T__73 - 64)) | (1 << (HPC16Parser.NEWLINE - 64)))) != 0)):
                    break
 
        except RecognitionException as re:
            localctx.exception = re
            self._errHandler.reportError(self, re)
            self._errHandler.recover(self, re)
        finally:
            self.exitRule()
        return localctx
 
    class StatContext(ParserRuleContext):
 
        def __init__(self, parser, parent=None, invokingState=-1):
            super(HPC16Parser.StatContext, self).__init__(parent, invokingState)
            self.parser = parser
 
        def NEWLINE(self):
            return self.getToken(HPC16Parser.NEWLINE, 0)
 
        def asm_inst(self):
            return self.getTypedRuleContext(HPC16Parser.Asm_instContext,0)
 
 
        def getRuleIndex(self):
            return HPC16Parser.RULE_stat
 
        def enterRule(self, listener):
            if hasattr(listener, "enterStat"):
                listener.enterStat(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitStat"):
                listener.exitStat(self)
 
 
 
 
    def stat(self):
 
        localctx = HPC16Parser.StatContext(self, self._ctx, self.state)
        self.enterRule(localctx, 2, self.RULE_stat)
        self._la = 0 # Token type
        try:
            self.enterOuterAlt(localctx, 1)
            self.state = 12
            _la = self._input.LA(1)
            if (((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << HPC16Parser.T__0) | (1 << HPC16Parser.T__2) | (1 << HPC16Parser.T__6) | (1 << HPC16Parser.T__7) | (1 << HPC16Parser.T__8) | (1 << HPC16Parser.T__9) | (1 << HPC16Parser.T__10) | (1 << HPC16Parser.T__11) | (1 << HPC16Parser.T__12) | (1 << HPC16Parser.T__13) | (1 << HPC16Parser.T__14) | (1 << HPC16Parser.T__15) | (1 << HPC16Parser.T__16) | (1 << HPC16Parser.T__17) | (1 << HPC16Parser.T__18) | (1 << HPC16Parser.T__19) | (1 << HPC16Parser.T__20) | (1 << HPC16Parser.T__21) | (1 << HPC16Parser.T__22) | (1 << HPC16Parser.T__23) | (1 << HPC16Parser.T__24) | (1 << HPC16Parser.T__25) | (1 << HPC16Parser.T__26) | (1 << HPC16Parser.T__27) | (1 << HPC16Parser.T__28) | (1 << HPC16Parser.T__29) | (1 << HPC16Parser.T__30) | (1 << HPC16Parser.T__31) | (1 << HPC16Parser.T__32) | (1 << HPC16Parser.T__33) | (1 << HPC16Parser.T__34) | (1 << HPC16Parser.T__35) | (1 << HPC16Parser.T__36) | (1 << HPC16Parser.T__37) | (1 << HPC16Parser.T__38) | (1 << HPC16Parser.T__39) | (1 << HPC16Parser.T__40) | (1 << HPC16Parser.T__41) | (1 << HPC16Parser.T__42) | (1 << HPC16Parser.T__43) | (1 << HPC16Parser.T__44) | (1 << HPC16Parser.T__45) | (1 << HPC16Parser.T__46) | (1 << HPC16Parser.T__47) | (1 << HPC16Parser.T__48) | (1 << HPC16Parser.T__49) | (1 << HPC16Parser.T__50) | (1 << HPC16Parser.T__51) | (1 << HPC16Parser.T__52) | (1 << HPC16Parser.T__53) | (1 << HPC16Parser.T__54) | (1 << HPC16Parser.T__55) | (1 << HPC16Parser.T__56) | (1 << HPC16Parser.T__57) | (1 << HPC16Parser.T__58) | (1 << HPC16Parser.T__59) | (1 << HPC16Parser.T__60) | (1 << HPC16Parser.T__61) | (1 << HPC16Parser.T__62))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (HPC16Parser.T__63 - 64)) | (1 << (HPC16Parser.T__64 - 64)) | (1 << (HPC16Parser.T__65 - 64)) | (1 << (HPC16Parser.T__66 - 64)) | (1 << (HPC16Parser.T__67 - 64)) | (1 << (HPC16Parser.T__68 - 64)) | (1 << (HPC16Parser.T__69 - 64)) | (1 << (HPC16Parser.T__70 - 64)) | (1 << (HPC16Parser.T__71 - 64)) | (1 << (HPC16Parser.T__72 - 64)) | (1 << (HPC16Parser.T__73 - 64)))) != 0):
                self.state = 11
                self.asm_inst()
 
 
            self.state = 14
            self.match(HPC16Parser.NEWLINE)
        except RecognitionException as re:
            localctx.exception = re
            self._errHandler.reportError(self, re)
            self._errHandler.recover(self, re)
        finally:
            self.exitRule()
        return localctx
 
    class Asm_instContext(ParserRuleContext):
 
        def __init__(self, parser, parent=None, invokingState=-1):
            super(HPC16Parser.Asm_instContext, self).__init__(parent, invokingState)
            self.parser = parser
 
 
        def getRuleIndex(self):
            return HPC16Parser.RULE_asm_inst
 
 
        def copyFrom(self, ctx):
            super(HPC16Parser.Asm_instContext, self).copyFrom(ctx)
 
 
 
    class Mov_reg_spContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Mov_reg_spContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterMov_reg_sp"):
                listener.enterMov_reg_sp(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitMov_reg_sp"):
                listener.exitMov_reg_sp(self)
 
 
    class Sb_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sb_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSb_reg_reg"):
                listener.enterSb_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSb_reg_reg"):
                listener.exitSb_reg_reg(self)
 
 
    class PopfContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.PopfContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterPopf"):
                listener.enterPopf(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitPopf"):
                listener.exitPopf(self)
 
 
    class Ld_reg_spContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ld_reg_spContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLd_reg_sp"):
                listener.enterLd_reg_sp(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLd_reg_sp"):
                listener.exitLd_reg_sp(self)
 
 
    class Call_imm11Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Call_imm11Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCall_imm11"):
                listener.enterCall_imm11(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCall_imm11"):
                listener.exitCall_imm11(self)
 
 
    class Jge_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jge_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJge_imm7"):
                listener.enterJge_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJge_imm7"):
                listener.exitJge_imm7(self)
 
 
    class St_reg_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.St_reg_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSt_reg_reg_imm16"):
                listener.enterSt_reg_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSt_reg_reg_imm16"):
                listener.exitSt_reg_reg_imm16(self)
 
 
    class Li_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Li_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLi_reg_imm16"):
                listener.enterLi_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLi_reg_imm16"):
                listener.exitLi_reg_imm16(self)
 
 
    class Je_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Je_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJe_imm7"):
                listener.enterJe_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJe_imm7"):
                listener.exitJe_imm7(self)
 
 
    class Push_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Push_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterPush_reg"):
                listener.enterPush_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitPush_reg"):
                listener.exitPush_reg(self)
 
 
    class Sll_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sll_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSll_reg_imm4"):
                listener.enterSll_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSll_reg_imm4"):
                listener.exitSll_reg_imm4(self)
 
 
    class Slr_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Slr_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSlr_reg_reg"):
                listener.enterSlr_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSlr_reg_reg"):
                listener.exitSlr_reg_reg(self)
 
 
    class ClcContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.ClcContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterClc"):
                listener.enterClc(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitClc"):
                listener.exitClc(self)
 
 
    class Jnae_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnae_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnae_imm7"):
                listener.enterJnae_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnae_imm7"):
                listener.exitJnae_imm7(self)
 
 
    class CliContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.CliContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCli"):
                listener.enterCli(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCli"):
                listener.exitCli(self)
 
 
    class Jae_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jae_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJae_imm7"):
                listener.enterJae_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJae_imm7"):
                listener.exitJae_imm7(self)
 
 
    class StcContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.StcContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterStc"):
                listener.enterStc(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitStc"):
                listener.exitStc(self)
 
 
    class Jnl_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnl_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnl_imm7"):
                listener.enterJnl_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnl_imm7"):
                listener.exitJnl_imm7(self)
 
 
    class Ror_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ror_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRor_reg_imm4"):
                listener.enterRor_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRor_reg_imm4"):
                listener.exitRor_reg_imm4(self)
 
 
    class StiContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.StiContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSti"):
                listener.enterSti(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSti"):
                listener.exitSti(self)
 
 
    class Cmp_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Cmp_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCmp_reg_imm16"):
                listener.enterCmp_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCmp_reg_imm16"):
                listener.exitCmp_reg_imm16(self)
 
 
    class Jnle_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnle_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnle_imm7"):
                listener.enterJnle_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnle_imm7"):
                listener.exitJnle_imm7(self)
 
 
    class Rol_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rol_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRol_reg_reg"):
                listener.enterRol_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRol_reg_reg"):
                listener.exitRol_reg_reg(self)
 
 
    class Slr_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Slr_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSlr_reg_imm4"):
                listener.enterSlr_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSlr_reg_imm4"):
                listener.exitSlr_reg_imm4(self)
 
 
    class Mov_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Mov_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterMov_reg_reg"):
                listener.enterMov_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitMov_reg_reg"):
                listener.exitMov_reg_reg(self)
 
 
    class Li_sp_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Li_sp_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLi_sp_imm16"):
                listener.enterLi_sp_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLi_sp_imm16"):
                listener.exitLi_sp_imm16(self)
 
 
    class Rol_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rol_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRol_reg_imm4"):
                listener.enterRol_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRol_reg_imm4"):
                listener.exitRol_reg_imm4(self)
 
 
    class And_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.And_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAnd_reg_reg"):
                listener.enterAnd_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAnd_reg_reg"):
                listener.exitAnd_reg_reg(self)
 
 
    class CmcContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.CmcContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCmc"):
                listener.enterCmc(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCmc"):
                listener.exitCmc(self)
 
 
    class Js_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Js_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJs_imm7"):
                listener.enterJs_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJs_imm7"):
                listener.exitJs_imm7(self)
 
 
    class Acall_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Acall_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAcall_reg"):
                listener.enterAcall_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAcall_reg"):
                listener.exitAcall_reg(self)
 
 
    class Dec_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Dec_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterDec_reg"):
                listener.enterDec_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitDec_reg"):
                listener.exitDec_reg(self)
 
 
    class Test_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Test_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterTest_reg_imm16"):
                listener.enterTest_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitTest_reg_imm16"):
                listener.exitTest_reg_imm16(self)
 
 
    class And_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.And_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAnd_reg_imm16"):
                listener.enterAnd_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAnd_reg_imm16"):
                listener.exitAnd_reg_imm16(self)
 
 
    class Sbb_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sbb_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSbb_reg_imm16"):
                listener.enterSbb_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSbb_reg_imm16"):
                listener.exitSbb_reg_imm16(self)
 
 
    class Jbe_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jbe_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJbe_imm7"):
                listener.enterJbe_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJbe_imm7"):
                listener.exitJbe_imm7(self)
 
 
    class Xor_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Xor_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterXor_reg_reg"):
                listener.enterXor_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitXor_reg_reg"):
                listener.exitXor_reg_reg(self)
 
 
    class Jmp_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jmp_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJmp_reg"):
                listener.enterJmp_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJmp_reg"):
                listener.exitJmp_reg(self)
 
 
    class Sbb_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sbb_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSbb_reg_reg"):
                listener.enterSbb_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSbb_reg_reg"):
                listener.exitSbb_reg_reg(self)
 
 
    class IntoContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.IntoContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterInto"):
                listener.enterInto(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitInto"):
                listener.exitInto(self)
 
 
    class Lbsx_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Lbsx_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLbsx_reg_reg"):
                listener.enterLbsx_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLbsx_reg_reg"):
                listener.exitLbsx_reg_reg(self)
 
 
    class St_reg_sp_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.St_reg_sp_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSt_reg_sp_imm16"):
                listener.enterSt_reg_sp_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSt_reg_sp_imm16"):
                listener.exitSt_reg_sp_imm16(self)
 
 
    class Ld_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ld_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLd_reg_reg"):
                listener.enterLd_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLd_reg_reg"):
                listener.exitLd_reg_reg(self)
 
 
    class Jnb_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnb_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnb_imm7"):
                listener.enterJnb_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnb_imm7"):
                listener.exitJnb_imm7(self)
 
 
    class Sar_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sar_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSar_reg_reg"):
                listener.enterSar_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSar_reg_reg"):
                listener.exitSar_reg_reg(self)
 
 
    class Jo_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jo_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJo_imm7"):
                listener.enterJo_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJo_imm7"):
                listener.exitJo_imm7(self)
 
 
    class Jl_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jl_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJl_imm7"):
                listener.enterJl_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJl_imm7"):
                listener.exitJl_imm7(self)
 
 
    class Inc_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Inc_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterInc_reg"):
                listener.enterInc_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitInc_reg"):
                listener.exitInc_reg(self)
 
 
    class Jmp_imm11Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jmp_imm11Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJmp_imm11"):
                listener.enterJmp_imm11(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJmp_imm11"):
                listener.exitJmp_imm11(self)
 
 
    class HaltContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.HaltContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterHalt"):
                listener.enterHalt(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitHalt"):
                listener.exitHalt(self)
 
 
    class Rcr_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rcr_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRcr_reg_reg"):
                listener.enterRcr_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRcr_reg_reg"):
                listener.exitRcr_reg_reg(self)
 
 
    class Lbzx_reg_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Lbzx_reg_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLbzx_reg_reg_imm16"):
                listener.enterLbzx_reg_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLbzx_reg_reg_imm16"):
                listener.exitLbzx_reg_reg_imm16(self)
 
 
    class Int_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Int_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterInt_imm4"):
                listener.enterInt_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitInt_imm4"):
                listener.exitInt_imm4(self)
 
 
    class Rcl_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rcl_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRcl_reg_imm4"):
                listener.enterRcl_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRcl_reg_imm4"):
                listener.exitRcl_reg_imm4(self)
 
 
    class Sll_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sll_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSll_reg_reg"):
                listener.enterSll_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSll_reg_reg"):
                listener.exitSll_reg_reg(self)
 
 
    class Jne_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jne_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJne_imm7"):
                listener.enterJne_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJne_imm7"):
                listener.exitJne_imm7(self)
 
 
    class Lbzx_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Lbzx_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLbzx_reg_reg"):
                listener.enterLbzx_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLbzx_reg_reg"):
                listener.exitLbzx_reg_reg(self)
 
 
    class Rcr_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rcr_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRcr_reg_imm4"):
                listener.enterRcr_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRcr_reg_imm4"):
                listener.exitRcr_reg_imm4(self)
 
 
    class Sar_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sar_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSar_reg_imm4"):
                listener.enterSar_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSar_reg_imm4"):
                listener.exitSar_reg_imm4(self)
 
 
    class Call_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Call_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCall_reg"):
                listener.enterCall_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCall_reg"):
                listener.exitCall_reg(self)
 
 
    class Lbsx_reg_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Lbsx_reg_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLbsx_reg_reg_imm16"):
                listener.enterLbsx_reg_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLbsx_reg_reg_imm16"):
                listener.exitLbsx_reg_reg_imm16(self)
 
 
    class Add_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Add_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAdd_reg_imm16"):
                listener.enterAdd_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAdd_reg_imm16"):
                listener.exitAdd_reg_imm16(self)
 
 
    class Ror_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ror_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRor_reg_reg"):
                listener.enterRor_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRor_reg_reg"):
                listener.exitRor_reg_reg(self)
 
 
    class Add_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Add_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAdd_reg_reg"):
                listener.enterAdd_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAdd_reg_reg"):
                listener.exitAdd_reg_reg(self)
 
 
    class Or_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Or_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterOr_reg_reg"):
                listener.enterOr_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitOr_reg_reg"):
                listener.exitOr_reg_reg(self)
 
 
    class Add_sp_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Add_sp_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAdd_sp_imm16"):
                listener.enterAdd_sp_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAdd_sp_imm16"):
                listener.exitAdd_sp_imm16(self)
 
 
    class Ld_reg_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ld_reg_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLd_reg_reg_imm16"):
                listener.enterLd_reg_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLd_reg_reg_imm16"):
                listener.exitLd_reg_reg_imm16(self)
 
 
    class Cmp_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Cmp_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterCmp_reg_reg"):
                listener.enterCmp_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitCmp_reg_reg"):
                listener.exitCmp_reg_reg(self)
 
 
    class RetContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.RetContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRet"):
                listener.enterRet(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRet"):
                listener.exitRet(self)
 
 
    class Adc_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Adc_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAdc_reg_imm16"):
                listener.enterAdc_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAdc_reg_imm16"):
                listener.exitAdc_reg_imm16(self)
 
 
    class AjmpContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.AjmpContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAjmp"):
                listener.enterAjmp(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAjmp"):
                listener.exitAjmp(self)
 
 
    class Jno_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jno_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJno_imm7"):
                listener.enterJno_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJno_imm7"):
                listener.exitJno_imm7(self)
 
 
    class Sub_sp_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sub_sp_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSub_sp_imm16"):
                listener.enterSub_sp_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSub_sp_imm16"):
                listener.exitSub_sp_imm16(self)
 
 
    class IretContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.IretContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterIret"):
                listener.enterIret(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitIret"):
                listener.exitIret(self)
 
 
    class Sub_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sub_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSub_reg_reg"):
                listener.enterSub_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSub_reg_reg"):
                listener.exitSub_reg_reg(self)
 
 
    class Jnz_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnz_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnz_imm7"):
                listener.enterJnz_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnz_imm7"):
                listener.exitJnz_imm7(self)
 
 
    class Sal_reg_imm4Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sal_reg_imm4Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSal_reg_imm4"):
                listener.enterSal_reg_imm4(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSal_reg_imm4"):
                listener.exitSal_reg_imm4(self)
 
 
    class Jnbe_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnbe_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnbe_imm7"):
                listener.enterJnbe_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnbe_imm7"):
                listener.exitJnbe_imm7(self)
 
 
    class Test_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Test_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterTest_reg_reg"):
                listener.enterTest_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitTest_reg_reg"):
                listener.exitTest_reg_reg(self)
 
 
    class Sal_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sal_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSal_reg_reg"):
                listener.enterSal_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSal_reg_reg"):
                listener.exitSal_reg_reg(self)
 
 
    class Jle_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jle_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJle_imm7"):
                listener.enterJle_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJle_imm7"):
                listener.exitJle_imm7(self)
 
 
    class St_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.St_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSt_reg_reg"):
                listener.enterSt_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSt_reg_reg"):
                listener.exitSt_reg_reg(self)
 
 
    class Xor_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Xor_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterXor_reg_imm16"):
                listener.enterXor_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitXor_reg_imm16"):
                listener.exitXor_reg_imm16(self)
 
 
    class Jns_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jns_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJns_imm7"):
                listener.enterJns_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJns_imm7"):
                listener.exitJns_imm7(self)
 
 
    class Not_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Not_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterNot_reg"):
                listener.enterNot_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitNot_reg"):
                listener.exitNot_reg(self)
 
 
    class NopContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.NopContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterNop"):
                listener.enterNop(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitNop"):
                listener.exitNop(self)
 
 
    class Jb_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jb_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJb_imm7"):
                listener.enterJb_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJb_imm7"):
                listener.exitJb_imm7(self)
 
 
    class Or_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Or_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterOr_reg_imm16"):
                listener.enterOr_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitOr_reg_imm16"):
                listener.exitOr_reg_imm16(self)
 
 
    class Ja_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ja_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJa_imm7"):
                listener.enterJa_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJa_imm7"):
                listener.exitJa_imm7(self)
 
 
    class Jg_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jg_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJg_imm7"):
                listener.enterJg_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJg_imm7"):
                listener.exitJg_imm7(self)
 
 
    class Adc_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Adc_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterAdc_reg_reg"):
                listener.enterAdc_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitAdc_reg_reg"):
                listener.exitAdc_reg_reg(self)
 
 
    class Pop_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Pop_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterPop_reg"):
                listener.enterPop_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitPop_reg"):
                listener.exitPop_reg(self)
 
 
    class Rcl_reg_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Rcl_reg_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterRcl_reg_reg"):
                listener.enterRcl_reg_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitRcl_reg_reg"):
                listener.exitRcl_reg_reg(self)
 
 
    class Sub_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sub_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSub_reg_imm16"):
                listener.enterSub_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSub_reg_imm16"):
                listener.exitSub_reg_imm16(self)
 
 
    class Jna_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jna_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJna_imm7"):
                listener.enterJna_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJna_imm7"):
                listener.exitJna_imm7(self)
 
 
    class Ld_reg_sp_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Ld_reg_sp_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterLd_reg_sp_imm16"):
                listener.enterLd_reg_sp_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitLd_reg_sp_imm16"):
                listener.exitLd_reg_sp_imm16(self)
 
 
    class PushfContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.PushfContext, self).__init__(parser)
            self.copyFrom(ctx)
 
 
        def enterRule(self, listener):
            if hasattr(listener, "enterPushf"):
                listener.enterPushf(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitPushf"):
                listener.exitPushf(self)
 
 
    class Jz_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jz_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJz_imm7"):
                listener.enterJz_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJz_imm7"):
                listener.exitJz_imm7(self)
 
 
    class Jng_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jng_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJng_imm7"):
                listener.enterJng_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJng_imm7"):
                listener.exitJng_imm7(self)
 
 
    class Jnge_imm7Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Jnge_imm7Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterJnge_imm7"):
                listener.enterJnge_imm7(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitJnge_imm7"):
                listener.exitJnge_imm7(self)
 
 
    class St_reg_spContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.St_reg_spContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSt_reg_sp"):
                listener.enterSt_reg_sp(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSt_reg_sp"):
                listener.exitSt_reg_sp(self)
 
 
    class Sb_reg_reg_imm16Context(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Sb_reg_reg_imm16Context, self).__init__(parser)
            self.copyFrom(ctx)
 
        def REG(self, i=None):
            if i is None:
                return self.getTokens(HPC16Parser.REG)
            else:
                return self.getToken(HPC16Parser.REG, i)
        def IMM(self):
            return self.getToken(HPC16Parser.IMM, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterSb_reg_reg_imm16"):
                listener.enterSb_reg_reg_imm16(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitSb_reg_reg_imm16"):
                listener.exitSb_reg_reg_imm16(self)
 
 
    class Mov_sp_regContext(Asm_instContext):
 
        def __init__(self, parser, ctx): # actually a HPC16Parser.Asm_instContext)
            super(HPC16Parser.Mov_sp_regContext, self).__init__(parser)
            self.copyFrom(ctx)
 
        def STK_PTR(self):
            return self.getToken(HPC16Parser.STK_PTR, 0)
        def REG(self):
            return self.getToken(HPC16Parser.REG, 0)
 
        def enterRule(self, listener):
            if hasattr(listener, "enterMov_sp_reg"):
                listener.enterMov_sp_reg(self)
 
        def exitRule(self, listener):
            if hasattr(listener, "exitMov_sp_reg"):
                listener.exitMov_sp_reg(self)
 
 
 
    def asm_inst(self):
 
        localctx = HPC16Parser.Asm_instContext(self, self._ctx, self.state)
        self.enterRule(localctx, 4, self.RULE_asm_inst)
        try:
            self.state = 374
            la_ = self._interp.adaptivePredict(self._input,2,self._ctx)
            if la_ == 1:
                localctx = HPC16Parser.Mov_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 1)
                self.state = 16
                self.match(HPC16Parser.T__0)
                self.state = 17
                self.match(HPC16Parser.REG)
                self.state = 18
                self.match(HPC16Parser.T__1)
                self.state = 19
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 2:
                localctx = HPC16Parser.Mov_sp_regContext(self, localctx)
                self.enterOuterAlt(localctx, 2)
                self.state = 20
                self.match(HPC16Parser.T__0)
                self.state = 21
                self.match(HPC16Parser.STK_PTR)
                self.state = 22
                self.match(HPC16Parser.T__1)
                self.state = 23
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 3:
                localctx = HPC16Parser.Mov_reg_spContext(self, localctx)
                self.enterOuterAlt(localctx, 3)
                self.state = 24
                self.match(HPC16Parser.T__0)
                self.state = 25
                self.match(HPC16Parser.REG)
                self.state = 26
                self.match(HPC16Parser.T__1)
                self.state = 27
                self.match(HPC16Parser.STK_PTR)
                pass
 
            elif la_ == 4:
                localctx = HPC16Parser.Ld_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 4)
                self.state = 28
                self.match(HPC16Parser.T__2)
                self.state = 29
                self.match(HPC16Parser.REG)
                self.state = 30
                self.match(HPC16Parser.T__1)
                self.state = 31
                self.match(HPC16Parser.T__3)
                self.state = 32
                self.match(HPC16Parser.REG)
                self.state = 33
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 5:
                localctx = HPC16Parser.Ld_reg_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 5)
                self.state = 34
                self.match(HPC16Parser.T__2)
                self.state = 35
                self.match(HPC16Parser.REG)
                self.state = 36
                self.match(HPC16Parser.T__1)
                self.state = 37
                self.match(HPC16Parser.T__3)
                self.state = 38
                self.match(HPC16Parser.REG)
                self.state = 39
                self.match(HPC16Parser.T__5)
                self.state = 40
                self.match(HPC16Parser.IMM)
                self.state = 41
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 6:
                localctx = HPC16Parser.Ld_reg_spContext(self, localctx)
                self.enterOuterAlt(localctx, 6)
                self.state = 42
                self.match(HPC16Parser.T__2)
                self.state = 43
                self.match(HPC16Parser.REG)
                self.state = 44
                self.match(HPC16Parser.T__1)
                self.state = 45
                self.match(HPC16Parser.T__3)
                self.state = 46
                self.match(HPC16Parser.STK_PTR)
                self.state = 47
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 7:
                localctx = HPC16Parser.Ld_reg_sp_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 7)
                self.state = 48
                self.match(HPC16Parser.T__2)
                self.state = 49
                self.match(HPC16Parser.REG)
                self.state = 50
                self.match(HPC16Parser.T__1)
                self.state = 51
                self.match(HPC16Parser.T__3)
                self.state = 52
                self.match(HPC16Parser.STK_PTR)
                self.state = 53
                self.match(HPC16Parser.T__5)
                self.state = 54
                self.match(HPC16Parser.IMM)
                self.state = 55
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 8:
                localctx = HPC16Parser.St_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 8)
                self.state = 56
                self.match(HPC16Parser.T__6)
                self.state = 57
                self.match(HPC16Parser.REG)
                self.state = 58
                self.match(HPC16Parser.T__1)
                self.state = 59
                self.match(HPC16Parser.T__3)
                self.state = 60
                self.match(HPC16Parser.REG)
                self.state = 61
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 9:
                localctx = HPC16Parser.St_reg_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 9)
                self.state = 62
                self.match(HPC16Parser.T__6)
                self.state = 63
                self.match(HPC16Parser.REG)
                self.state = 64
                self.match(HPC16Parser.T__1)
                self.state = 65
                self.match(HPC16Parser.T__3)
                self.state = 66
                self.match(HPC16Parser.REG)
                self.state = 67
                self.match(HPC16Parser.T__5)
                self.state = 68
                self.match(HPC16Parser.IMM)
                self.state = 69
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 10:
                localctx = HPC16Parser.St_reg_spContext(self, localctx)
                self.enterOuterAlt(localctx, 10)
                self.state = 70
                self.match(HPC16Parser.T__6)
                self.state = 71
                self.match(HPC16Parser.REG)
                self.state = 72
                self.match(HPC16Parser.T__1)
                self.state = 73
                self.match(HPC16Parser.T__3)
                self.state = 74
                self.match(HPC16Parser.STK_PTR)
                self.state = 75
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 11:
                localctx = HPC16Parser.St_reg_sp_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 11)
                self.state = 76
                self.match(HPC16Parser.T__6)
                self.state = 77
                self.match(HPC16Parser.REG)
                self.state = 78
                self.match(HPC16Parser.T__1)
                self.state = 79
                self.match(HPC16Parser.T__3)
                self.state = 80
                self.match(HPC16Parser.STK_PTR)
                self.state = 81
                self.match(HPC16Parser.T__5)
                self.state = 82
                self.match(HPC16Parser.IMM)
                self.state = 83
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 12:
                localctx = HPC16Parser.Lbzx_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 12)
                self.state = 84
                self.match(HPC16Parser.T__7)
                self.state = 85
                self.match(HPC16Parser.REG)
                self.state = 86
                self.match(HPC16Parser.T__1)
                self.state = 87
                self.match(HPC16Parser.T__3)
                self.state = 88
                self.match(HPC16Parser.REG)
                self.state = 89
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 13:
                localctx = HPC16Parser.Lbzx_reg_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 13)
                self.state = 90
                self.match(HPC16Parser.T__7)
                self.state = 91
                self.match(HPC16Parser.REG)
                self.state = 92
                self.match(HPC16Parser.T__1)
                self.state = 93
                self.match(HPC16Parser.T__3)
                self.state = 94
                self.match(HPC16Parser.REG)
                self.state = 95
                self.match(HPC16Parser.T__5)
                self.state = 96
                self.match(HPC16Parser.IMM)
                self.state = 97
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 14:
                localctx = HPC16Parser.Lbsx_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 14)
                self.state = 98
                self.match(HPC16Parser.T__8)
                self.state = 99
                self.match(HPC16Parser.REG)
                self.state = 100
                self.match(HPC16Parser.T__1)
                self.state = 101
                self.match(HPC16Parser.T__3)
                self.state = 102
                self.match(HPC16Parser.REG)
                self.state = 103
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 15:
                localctx = HPC16Parser.Lbsx_reg_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 15)
                self.state = 104
                self.match(HPC16Parser.T__8)
                self.state = 105
                self.match(HPC16Parser.REG)
                self.state = 106
                self.match(HPC16Parser.T__1)
                self.state = 107
                self.match(HPC16Parser.T__3)
                self.state = 108
                self.match(HPC16Parser.REG)
                self.state = 109
                self.match(HPC16Parser.T__5)
                self.state = 110
                self.match(HPC16Parser.IMM)
                self.state = 111
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 16:
                localctx = HPC16Parser.Sb_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 16)
                self.state = 112
                self.match(HPC16Parser.T__9)
                self.state = 113
                self.match(HPC16Parser.REG)
                self.state = 114
                self.match(HPC16Parser.T__1)
                self.state = 115
                self.match(HPC16Parser.T__3)
                self.state = 116
                self.match(HPC16Parser.REG)
                self.state = 117
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 17:
                localctx = HPC16Parser.Sb_reg_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 17)
                self.state = 118
                self.match(HPC16Parser.T__9)
                self.state = 119
                self.match(HPC16Parser.REG)
                self.state = 120
                self.match(HPC16Parser.T__1)
                self.state = 121
                self.match(HPC16Parser.T__3)
                self.state = 122
                self.match(HPC16Parser.REG)
                self.state = 123
                self.match(HPC16Parser.T__5)
                self.state = 124
                self.match(HPC16Parser.IMM)
                self.state = 125
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 18:
                localctx = HPC16Parser.Li_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 18)
                self.state = 126
                self.match(HPC16Parser.T__10)
                self.state = 127
                self.match(HPC16Parser.REG)
                self.state = 128
                self.match(HPC16Parser.T__1)
                self.state = 129
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 19:
                localctx = HPC16Parser.Li_sp_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 19)
                self.state = 130
                self.match(HPC16Parser.T__10)
                self.state = 131
                self.match(HPC16Parser.STK_PTR)
                self.state = 132
                self.match(HPC16Parser.T__1)
                self.state = 133
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 20:
                localctx = HPC16Parser.Inc_regContext(self, localctx)
                self.enterOuterAlt(localctx, 20)
                self.state = 134
                self.match(HPC16Parser.T__11)
                self.state = 135
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 21:
                localctx = HPC16Parser.Dec_regContext(self, localctx)
                self.enterOuterAlt(localctx, 21)
                self.state = 136
                self.match(HPC16Parser.T__12)
                self.state = 137
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 22:
                localctx = HPC16Parser.Sub_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 22)
                self.state = 138
                self.match(HPC16Parser.T__13)
                self.state = 139
                self.match(HPC16Parser.REG)
                self.state = 140
                self.match(HPC16Parser.T__1)
                self.state = 141
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 23:
                localctx = HPC16Parser.And_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 23)
                self.state = 142
                self.match(HPC16Parser.T__14)
                self.state = 143
                self.match(HPC16Parser.REG)
                self.state = 144
                self.match(HPC16Parser.T__1)
                self.state = 145
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 24:
                localctx = HPC16Parser.Add_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 24)
                self.state = 146
                self.match(HPC16Parser.T__15)
                self.state = 147
                self.match(HPC16Parser.REG)
                self.state = 148
                self.match(HPC16Parser.T__1)
                self.state = 149
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 25:
                localctx = HPC16Parser.Adc_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 25)
                self.state = 150
                self.match(HPC16Parser.T__16)
                self.state = 151
                self.match(HPC16Parser.REG)
                self.state = 152
                self.match(HPC16Parser.T__1)
                self.state = 153
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 26:
                localctx = HPC16Parser.Sbb_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 26)
                self.state = 154
                self.match(HPC16Parser.T__17)
                self.state = 155
                self.match(HPC16Parser.REG)
                self.state = 156
                self.match(HPC16Parser.T__1)
                self.state = 157
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 27:
                localctx = HPC16Parser.Or_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 27)
                self.state = 158
                self.match(HPC16Parser.T__18)
                self.state = 159
                self.match(HPC16Parser.REG)
                self.state = 160
                self.match(HPC16Parser.T__1)
                self.state = 161
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 28:
                localctx = HPC16Parser.Xor_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 28)
                self.state = 162
                self.match(HPC16Parser.T__19)
                self.state = 163
                self.match(HPC16Parser.REG)
                self.state = 164
                self.match(HPC16Parser.T__1)
                self.state = 165
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 29:
                localctx = HPC16Parser.Not_regContext(self, localctx)
                self.enterOuterAlt(localctx, 29)
                self.state = 166
                self.match(HPC16Parser.T__20)
                self.state = 167
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 30:
                localctx = HPC16Parser.Sub_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 30)
                self.state = 168
                self.match(HPC16Parser.T__13)
                self.state = 169
                self.match(HPC16Parser.REG)
                self.state = 170
                self.match(HPC16Parser.T__1)
                self.state = 171
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 31:
                localctx = HPC16Parser.And_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 31)
                self.state = 172
                self.match(HPC16Parser.T__14)
                self.state = 173
                self.match(HPC16Parser.REG)
                self.state = 174
                self.match(HPC16Parser.T__1)
                self.state = 175
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 32:
                localctx = HPC16Parser.Add_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 32)
                self.state = 176
                self.match(HPC16Parser.T__15)
                self.state = 177
                self.match(HPC16Parser.REG)
                self.state = 178
                self.match(HPC16Parser.T__1)
                self.state = 179
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 33:
                localctx = HPC16Parser.Adc_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 33)
                self.state = 180
                self.match(HPC16Parser.T__16)
                self.state = 181
                self.match(HPC16Parser.REG)
                self.state = 182
                self.match(HPC16Parser.T__1)
                self.state = 183
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 34:
                localctx = HPC16Parser.Sbb_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 34)
                self.state = 184
                self.match(HPC16Parser.T__17)
                self.state = 185
                self.match(HPC16Parser.REG)
                self.state = 186
                self.match(HPC16Parser.T__1)
                self.state = 187
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 35:
                localctx = HPC16Parser.Or_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 35)
                self.state = 188
                self.match(HPC16Parser.T__18)
                self.state = 189
                self.match(HPC16Parser.REG)
                self.state = 190
                self.match(HPC16Parser.T__1)
                self.state = 191
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 36:
                localctx = HPC16Parser.Xor_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 36)
                self.state = 192
                self.match(HPC16Parser.T__19)
                self.state = 193
                self.match(HPC16Parser.REG)
                self.state = 194
                self.match(HPC16Parser.T__1)
                self.state = 195
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 37:
                localctx = HPC16Parser.Add_sp_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 37)
                self.state = 196
                self.match(HPC16Parser.T__15)
                self.state = 197
                self.match(HPC16Parser.STK_PTR)
                self.state = 198
                self.match(HPC16Parser.T__1)
                self.state = 199
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 38:
                localctx = HPC16Parser.Sub_sp_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 38)
                self.state = 200
                self.match(HPC16Parser.T__13)
                self.state = 201
                self.match(HPC16Parser.STK_PTR)
                self.state = 202
                self.match(HPC16Parser.T__1)
                self.state = 203
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 39:
                localctx = HPC16Parser.Cmp_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 39)
                self.state = 204
                self.match(HPC16Parser.T__21)
                self.state = 205
                self.match(HPC16Parser.REG)
                self.state = 206
                self.match(HPC16Parser.T__1)
                self.state = 207
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 40:
                localctx = HPC16Parser.Test_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 40)
                self.state = 208
                self.match(HPC16Parser.T__22)
                self.state = 209
                self.match(HPC16Parser.REG)
                self.state = 210
                self.match(HPC16Parser.T__1)
                self.state = 211
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 41:
                localctx = HPC16Parser.Cmp_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 41)
                self.state = 212
                self.match(HPC16Parser.T__21)
                self.state = 213
                self.match(HPC16Parser.REG)
                self.state = 214
                self.match(HPC16Parser.T__1)
                self.state = 215
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 42:
                localctx = HPC16Parser.Test_reg_imm16Context(self, localctx)
                self.enterOuterAlt(localctx, 42)
                self.state = 216
                self.match(HPC16Parser.T__22)
                self.state = 217
                self.match(HPC16Parser.REG)
                self.state = 218
                self.match(HPC16Parser.T__1)
                self.state = 219
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 43:
                localctx = HPC16Parser.Sll_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 43)
                self.state = 220
                self.match(HPC16Parser.T__23)
                self.state = 221
                self.match(HPC16Parser.REG)
                self.state = 222
                self.match(HPC16Parser.T__1)
                self.state = 223
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 44:
                localctx = HPC16Parser.Slr_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 44)
                self.state = 224
                self.match(HPC16Parser.T__24)
                self.state = 225
                self.match(HPC16Parser.REG)
                self.state = 226
                self.match(HPC16Parser.T__1)
                self.state = 227
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 45:
                localctx = HPC16Parser.Sal_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 45)
                self.state = 228
                self.match(HPC16Parser.T__25)
                self.state = 229
                self.match(HPC16Parser.REG)
                self.state = 230
                self.match(HPC16Parser.T__1)
                self.state = 231
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 46:
                localctx = HPC16Parser.Sar_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 46)
                self.state = 232
                self.match(HPC16Parser.T__26)
                self.state = 233
                self.match(HPC16Parser.REG)
                self.state = 234
                self.match(HPC16Parser.T__1)
                self.state = 235
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 47:
                localctx = HPC16Parser.Rol_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 47)
                self.state = 236
                self.match(HPC16Parser.T__27)
                self.state = 237
                self.match(HPC16Parser.REG)
                self.state = 238
                self.match(HPC16Parser.T__1)
                self.state = 239
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 48:
                localctx = HPC16Parser.Ror_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 48)
                self.state = 240
                self.match(HPC16Parser.T__28)
                self.state = 241
                self.match(HPC16Parser.REG)
                self.state = 242
                self.match(HPC16Parser.T__1)
                self.state = 243
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 49:
                localctx = HPC16Parser.Rcl_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 49)
                self.state = 244
                self.match(HPC16Parser.T__29)
                self.state = 245
                self.match(HPC16Parser.REG)
                self.state = 246
                self.match(HPC16Parser.T__1)
                self.state = 247
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 50:
                localctx = HPC16Parser.Rcr_reg_regContext(self, localctx)
                self.enterOuterAlt(localctx, 50)
                self.state = 248
                self.match(HPC16Parser.T__30)
                self.state = 249
                self.match(HPC16Parser.REG)
                self.state = 250
                self.match(HPC16Parser.T__1)
                self.state = 251
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 51:
                localctx = HPC16Parser.Sll_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 51)
                self.state = 252
                self.match(HPC16Parser.T__23)
                self.state = 253
                self.match(HPC16Parser.REG)
                self.state = 254
                self.match(HPC16Parser.T__1)
                self.state = 255
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 52:
                localctx = HPC16Parser.Slr_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 52)
                self.state = 256
                self.match(HPC16Parser.T__24)
                self.state = 257
                self.match(HPC16Parser.REG)
                self.state = 258
                self.match(HPC16Parser.T__1)
                self.state = 259
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 53:
                localctx = HPC16Parser.Sal_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 53)
                self.state = 260
                self.match(HPC16Parser.T__25)
                self.state = 261
                self.match(HPC16Parser.REG)
                self.state = 262
                self.match(HPC16Parser.T__1)
                self.state = 263
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 54:
                localctx = HPC16Parser.Sar_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 54)
                self.state = 264
                self.match(HPC16Parser.T__26)
                self.state = 265
                self.match(HPC16Parser.REG)
                self.state = 266
                self.match(HPC16Parser.T__1)
                self.state = 267
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 55:
                localctx = HPC16Parser.Rol_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 55)
                self.state = 268
                self.match(HPC16Parser.T__27)
                self.state = 269
                self.match(HPC16Parser.REG)
                self.state = 270
                self.match(HPC16Parser.T__1)
                self.state = 271
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 56:
                localctx = HPC16Parser.Ror_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 56)
                self.state = 272
                self.match(HPC16Parser.T__28)
                self.state = 273
                self.match(HPC16Parser.REG)
                self.state = 274
                self.match(HPC16Parser.T__1)
                self.state = 275
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 57:
                localctx = HPC16Parser.Rcl_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 57)
                self.state = 276
                self.match(HPC16Parser.T__29)
                self.state = 277
                self.match(HPC16Parser.REG)
                self.state = 278
                self.match(HPC16Parser.T__1)
                self.state = 279
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 58:
                localctx = HPC16Parser.Rcr_reg_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 58)
                self.state = 280
                self.match(HPC16Parser.T__30)
                self.state = 281
                self.match(HPC16Parser.REG)
                self.state = 282
                self.match(HPC16Parser.T__1)
                self.state = 283
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 59:
                localctx = HPC16Parser.Push_regContext(self, localctx)
                self.enterOuterAlt(localctx, 59)
                self.state = 284
                self.match(HPC16Parser.T__31)
                self.state = 285
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 60:
                localctx = HPC16Parser.PushfContext(self, localctx)
                self.enterOuterAlt(localctx, 60)
                self.state = 286
                self.match(HPC16Parser.T__32)
                pass
 
            elif la_ == 61:
                localctx = HPC16Parser.Pop_regContext(self, localctx)
                self.enterOuterAlt(localctx, 61)
                self.state = 287
                self.match(HPC16Parser.T__33)
                self.state = 288
                self.match(HPC16Parser.REG)
                pass
 
            elif la_ == 62:
                localctx = HPC16Parser.PopfContext(self, localctx)
                self.enterOuterAlt(localctx, 62)
                self.state = 289
                self.match(HPC16Parser.T__34)
                pass
 
            elif la_ == 63:
                localctx = HPC16Parser.Acall_regContext(self, localctx)
                self.enterOuterAlt(localctx, 63)
                self.state = 290
                self.match(HPC16Parser.T__35)
                self.state = 291
                self.match(HPC16Parser.T__3)
                self.state = 292
                self.match(HPC16Parser.REG)
                self.state = 293
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 64:
                localctx = HPC16Parser.Call_regContext(self, localctx)
                self.enterOuterAlt(localctx, 64)
                self.state = 294
                self.match(HPC16Parser.T__36)
                self.state = 295
                self.match(HPC16Parser.T__3)
                self.state = 296
                self.match(HPC16Parser.REG)
                self.state = 297
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 65:
                localctx = HPC16Parser.Call_imm11Context(self, localctx)
                self.enterOuterAlt(localctx, 65)
                self.state = 298
                self.match(HPC16Parser.T__36)
                self.state = 299
                self.match(HPC16Parser.T__3)
                self.state = 300
                self.match(HPC16Parser.IMM)
                self.state = 301
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 66:
                localctx = HPC16Parser.RetContext(self, localctx)
                self.enterOuterAlt(localctx, 66)
                self.state = 302
                self.match(HPC16Parser.T__37)
                pass
 
            elif la_ == 67:
                localctx = HPC16Parser.IretContext(self, localctx)
                self.enterOuterAlt(localctx, 67)
                self.state = 303
                self.match(HPC16Parser.T__38)
                pass
 
            elif la_ == 68:
                localctx = HPC16Parser.ClcContext(self, localctx)
                self.enterOuterAlt(localctx, 68)
                self.state = 304
                self.match(HPC16Parser.T__39)
                pass
 
            elif la_ == 69:
                localctx = HPC16Parser.StcContext(self, localctx)
                self.enterOuterAlt(localctx, 69)
                self.state = 305
                self.match(HPC16Parser.T__40)
                pass
 
            elif la_ == 70:
                localctx = HPC16Parser.CmcContext(self, localctx)
                self.enterOuterAlt(localctx, 70)
                self.state = 306
                self.match(HPC16Parser.T__41)
                pass
 
            elif la_ == 71:
                localctx = HPC16Parser.CliContext(self, localctx)
                self.enterOuterAlt(localctx, 71)
                self.state = 307
                self.match(HPC16Parser.T__42)
                pass
 
            elif la_ == 72:
                localctx = HPC16Parser.StiContext(self, localctx)
                self.enterOuterAlt(localctx, 72)
                self.state = 308
                self.match(HPC16Parser.T__43)
                pass
 
            elif la_ == 73:
                localctx = HPC16Parser.Int_imm4Context(self, localctx)
                self.enterOuterAlt(localctx, 73)
                self.state = 309
                self.match(HPC16Parser.T__44)
                self.state = 310
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 74:
                localctx = HPC16Parser.IntoContext(self, localctx)
                self.enterOuterAlt(localctx, 74)
                self.state = 311
                self.match(HPC16Parser.T__45)
                pass
 
            elif la_ == 75:
                localctx = HPC16Parser.AjmpContext(self, localctx)
                self.enterOuterAlt(localctx, 75)
                self.state = 312
                self.match(HPC16Parser.T__46)
                self.state = 313
                self.match(HPC16Parser.T__3)
                self.state = 314
                self.match(HPC16Parser.REG)
                self.state = 315
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 76:
                localctx = HPC16Parser.Jmp_regContext(self, localctx)
                self.enterOuterAlt(localctx, 76)
                self.state = 316
                self.match(HPC16Parser.T__47)
                self.state = 317
                self.match(HPC16Parser.T__3)
                self.state = 318
                self.match(HPC16Parser.REG)
                self.state = 319
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 77:
                localctx = HPC16Parser.Jmp_imm11Context(self, localctx)
                self.enterOuterAlt(localctx, 77)
                self.state = 320
                self.match(HPC16Parser.T__47)
                self.state = 321
                self.match(HPC16Parser.T__3)
                self.state = 322
                self.match(HPC16Parser.IMM)
                self.state = 323
                self.match(HPC16Parser.T__4)
                pass
 
            elif la_ == 78:
                localctx = HPC16Parser.NopContext(self, localctx)
                self.enterOuterAlt(localctx, 78)
                self.state = 324
                self.match(HPC16Parser.T__48)
                pass
 
            elif la_ == 79:
                localctx = HPC16Parser.HaltContext(self, localctx)
                self.enterOuterAlt(localctx, 79)
                self.state = 325
                self.match(HPC16Parser.T__49)
                pass
 
            elif la_ == 80:
                localctx = HPC16Parser.Jo_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 80)
                self.state = 326
                self.match(HPC16Parser.T__50)
                self.state = 327
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 81:
                localctx = HPC16Parser.Jno_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 81)
                self.state = 328
                self.match(HPC16Parser.T__51)
                self.state = 329
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 82:
                localctx = HPC16Parser.Jb_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 82)
                self.state = 330
                self.match(HPC16Parser.T__52)
                self.state = 331
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 83:
                localctx = HPC16Parser.Jnae_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 83)
                self.state = 332
                self.match(HPC16Parser.T__53)
                self.state = 333
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 84:
                localctx = HPC16Parser.Jnb_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 84)
                self.state = 334
                self.match(HPC16Parser.T__54)
                self.state = 335
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 85:
                localctx = HPC16Parser.Jae_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 85)
                self.state = 336
                self.match(HPC16Parser.T__55)
                self.state = 337
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 86:
                localctx = HPC16Parser.Je_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 86)
                self.state = 338
                self.match(HPC16Parser.T__56)
                self.state = 339
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 87:
                localctx = HPC16Parser.Jz_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 87)
                self.state = 340
                self.match(HPC16Parser.T__57)
                self.state = 341
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 88:
                localctx = HPC16Parser.Jne_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 88)
                self.state = 342
                self.match(HPC16Parser.T__58)
                self.state = 343
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 89:
                localctx = HPC16Parser.Jnz_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 89)
                self.state = 344
                self.match(HPC16Parser.T__59)
                self.state = 345
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 90:
                localctx = HPC16Parser.Jbe_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 90)
                self.state = 346
                self.match(HPC16Parser.T__60)
                self.state = 347
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 91:
                localctx = HPC16Parser.Jna_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 91)
                self.state = 348
                self.match(HPC16Parser.T__61)
                self.state = 349
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 92:
                localctx = HPC16Parser.Jnbe_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 92)
                self.state = 350
                self.match(HPC16Parser.T__62)
                self.state = 351
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 93:
                localctx = HPC16Parser.Ja_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 93)
                self.state = 352
                self.match(HPC16Parser.T__63)
                self.state = 353
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 94:
                localctx = HPC16Parser.Js_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 94)
                self.state = 354
                self.match(HPC16Parser.T__64)
                self.state = 355
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 95:
                localctx = HPC16Parser.Jns_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 95)
                self.state = 356
                self.match(HPC16Parser.T__65)
                self.state = 357
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 96:
                localctx = HPC16Parser.Jl_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 96)
                self.state = 358
                self.match(HPC16Parser.T__66)
                self.state = 359
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 97:
                localctx = HPC16Parser.Jnge_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 97)
                self.state = 360
                self.match(HPC16Parser.T__67)
                self.state = 361
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 98:
                localctx = HPC16Parser.Jnl_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 98)
                self.state = 362
                self.match(HPC16Parser.T__68)
                self.state = 363
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 99:
                localctx = HPC16Parser.Jge_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 99)
                self.state = 364
                self.match(HPC16Parser.T__69)
                self.state = 365
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 100:
                localctx = HPC16Parser.Jle_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 100)
                self.state = 366
                self.match(HPC16Parser.T__70)
                self.state = 367
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 101:
                localctx = HPC16Parser.Jng_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 101)
                self.state = 368
                self.match(HPC16Parser.T__71)
                self.state = 369
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 102:
                localctx = HPC16Parser.Jnle_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 102)
                self.state = 370
                self.match(HPC16Parser.T__72)
                self.state = 371
                self.match(HPC16Parser.IMM)
                pass
 
            elif la_ == 103:
                localctx = HPC16Parser.Jg_imm7Context(self, localctx)
                self.enterOuterAlt(localctx, 103)
                self.state = 372
                self.match(HPC16Parser.T__73)
                self.state = 373
                self.match(HPC16Parser.IMM)
                pass
 
 
        except RecognitionException as re:
            localctx.exception = re
            self._errHandler.reportError(self, re)
            self._errHandler.recover(self, re)
        finally:
            self.exitRule()
        return localctx
 
 
 
 
 
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.