xref: /aosp_15_r20/external/mesa3d/src/amd/registers/mergedbs.py (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1#
2# Copyright 2017-2019 Advanced Micro Devices, Inc.
3#
4# SPDX-License-Identifier: MIT
5#
6"""
7Helper script to merge register database JSON files.
8
9  usage: python3 mergedbs.py [FILES...]
10
11Will merge the given JSON files and output the result on stdout.
12"""
13
14from collections import defaultdict
15import json
16import re
17import sys
18
19from regdb import RegisterDatabase, deduplicate_enums, deduplicate_register_types
20
21def main():
22    regdb = RegisterDatabase()
23    for filename in sys.argv[1:]:
24        with open(filename, 'r') as filp:
25            regdb.update(RegisterDatabase.from_json(json.load(filp)))
26
27    deduplicate_enums(regdb)
28    deduplicate_register_types(regdb)
29
30    print(regdb.encode_json_pretty())
31
32
33if __name__ == '__main__':
34    main()
35
36# kate: space-indent on; indent-width 4; replace-tabs on;
37