예제 #1
0
        m = re.search('^ *([0-9A-F]+)-([0-9A-F]+); *(.*) *$', l)
        if m:
            start = int(m.group(1), 0x10)
            end   = int(m.group(2), 0x10)
            desc  = m.group(3)
            trans.append([start, end - start + 1, desc, [t]])
        else:
            m = re.search('^ *([0-9A-F]+); *(.*) *$', l)
            if m:
                trans.append([int(m.group(1), 0x10), 1, m.group(2), [t]])

trans = stringprep.sort_merge_trans(trans)

for x in trans:
    (start, length, description, tables) = x
    symbols = stringprep.symbols(error_list, tables)
    if len(symbols) == 0:
        print "no symbol for %s" % description
        sys.exit(1)
    errorlist_c.file.write("  {0x%x, 0x%x, %s}, /* %s: %s */\n"
                % (start, length, symbols, ",".join(tables), description))

errorlist_c.file.write(
'''};

''')

errorlist_c.file.write(
    "const size_t _wind_errorlist_table_size = %u;\n" % len(trans))

errorlist_h.close()
예제 #2
0
    if x[0] == 0xad:
        print("fooresult %s" % ",".join(x[3]))

for x in trans:
    (key, value, description, table) = x
    v = value.split()
    i = util.subList(valTable, v)
    if i:
        offsetTable[key] = i
    else:
        offsetTable[key] = len(valTable)
        valTable.extend(v)

for x in trans:
    (key, value, description, tables) = x
    symbols = stringprep.symbols(map_list, tables)
    if len(symbols) == 0:
        print("no symbol for %s %s (%s)" % (key, description, tables))
        sys.exit(1)
    v = value.split()
    map_c.file.write("  {0x%x, %u, %u, %s}, /* %s: %s */\n" %
                     (key, len(v), offsetTable[key], symbols, ",".join(tables),
                      description))

map_c.file.write('''
};

''')

map_c.file.write("const size_t _wind_map_table_size = %u;\n\n" % len(trans))
예제 #3
0
        m = re.search('^ *([0-9A-F]+)-([0-9A-F]+); *(.*) *$', l)
        if m:
            start = int(m.group(1), 0x10)
            end   = int(m.group(2), 0x10)
            desc  = m.group(3)
            trans.append([start, end - start + 1, desc, [t]])
        else:
            m = re.search('^ *([0-9A-F]+); *(.*) *$', l)
            if m:
                trans.append([int(m.group(1), 0x10), 1, m.group(2), [t]])

trans = stringprep.sort_merge_trans(trans)

for x in trans:
    (start, length, description, tables) = x
    symbols = stringprep.symbols(error_list, tables)
    if len(symbols) == 0:
        print("no symbol for %s" % description)
        sys.exit(1)
    errorlist_c.file.write("  {0x%x, 0x%x, %s}, /* %s: %s */\n"
                % (start, length, symbols, ",".join(tables), description))

errorlist_c.file.write(
'''};

''')

errorlist_c.file.write(
    "const size_t _wind_errorlist_table_size = %u;\n" % len(trans))

errorlist_h.close()
예제 #4
0
파일: gen-map.py 프로젝트: Henauxg/minix
    if x[0] == 0xad:
        print "fooresult %s" % ",".join(x[3])

for x in trans:
    (key, value, description, table) = x
    v = value.split()
    i = util.subList(valTable, v)
    if i:
        offsetTable[key] = i
    else:
        offsetTable[key] = len(valTable)
        valTable.extend(v)

for x in trans:
    (key, value, description, tables) = x
    symbols = stringprep.symbols(map_list, tables)
    if len(symbols) == 0:
        print "no symbol for %s %s (%s)" % (key, description, tables)
        sys.exit(1)
    v = value.split()
    map_c.file.write("  {0x%x, %u, %u, %s}, /* %s: %s */\n"
                % (key, len(v), offsetTable[key], symbols, ",".join(tables), description))

map_c.file.write(
'''
};

''')

map_c.file.write(
    "const size_t _wind_map_table_size = %u;\n\n" % len(trans))