llvm-project

Форк
0
/
merge-stats.py 
32 строки · 788.0 Байт
1
#!/usr/bin/env python3
2
"""
3
Merge .stats files generated by llvm tools
4

5
merge-stats.py takes as argument a list of stats files to merge
6
and output the result on stdout
7

8
Usage:
9
  merge-stats.py $(find ./builddir/ -name "*.stats") > total.stats
10
"""
11

12
import json
13
import sys
14

15
result = {}
16

17
for arg in range(1, len(sys.argv)):
18
    with open(sys.argv[arg], "r", encoding="utf-8", errors="ignore") as f:
19
        text = f.read()
20
        try:
21
            data = json.loads(text)
22
        except:
23
            print("ignored %s: failed to parse" % sys.argv[arg], file=sys.stderr)
24
            continue
25
        for key in data:
26
            if key in result:
27
                result[key] += data[key]
28
            else:
29
                result[key] = data[key]
30

31
out = json.dumps(result, indent=2)
32
print(out)
33

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.