Инициализировать список GCOV с использованием Python и GDB на ARM-None-EABI 4.9.3 [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Инициализировать список GCOV с использованием Python и GDB на ARM-None-EABI 4.9.3 [закрыто]

Сообщение Anonymous »

Я хочу опубликовать здесь решение. Разберите функцию, чтобы проверить, включает ли она вызов __gcov_init
**# и только вызывает те конструкторы, которые делают. C: /opt/extend/source/development/devices/prod_dev/blood_gas_board/script/gcov_init_all_v2.py
**# call_filtered_gcov_ctors
callfilteredgcovctors (gdb.comnd):
callfilteredgcovctors (gdb.comnd):
callfilteredgcovctor global__Sub_i_65535_0 * Конструкторы, которые вызывают __GCOV_INIT. "" "

Код: Выделить всё

def __init__(self):
super(CallFilteredGcovCtors, self).__init__("call_filtered_gcov_ctors", gdb.COMMAND_USER)

def invoke(self, arg, from_tty):
print "[gcov-init] Searching for coverage-related constructors..."
functions = gdb.execute("info functions _GLOBAL__sub_I_", to_string=True)
found = 0
called = 0

for line in functions.splitlines():

match = re.search(r'(_GLOBAL__sub_I_65535_0_\w+)', line)

if match:
sym = match.group(1)
found += 1

try:
asm = gdb.execute("disassemble %s" % sym, to_string=True)
if "__gcov_init" in asm:
print "[gcov-init] Calling %s..." % sym
gdb.execute("call %s" % sym)
called += 1
else:
print "[gcov-init] Skipping %s (no __gcov_init)" % sym
except gdb.error as e:
print "[gcov-init] Error calling %s: %s" % (sym, str(e))

print "[gcov-init] Done. %d of %d constructors called." % (called, found)
callfilteredgcovctors ()

Подробнее здесь: https://stackoverflow.com/questions/796 ... eabi-4-9-3
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Исключить стандартные библиотеки из Arm-None-Eabi
    Anonymous » » в форуме C++
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • ПРЕДУПРЕЖДЕНИЕ Python: повторение (повторный (total = 4, connect = none, read = none, redirect = none, nate = none))
    Anonymous » » в форуме Python
    0 Ответы
    73 Просмотры
    Последнее сообщение Anonymous
  • Android Terminal-Ide: Terminal-GCC Ошибка: ARM-EABI-GCC не найден
    Гость » » в форуме Android
    0 Ответы
    13 Просмотры
    Последнее сообщение Гость
  • Используя CMake, сделайте и активируйте-none-eabi-gcc в Windows
    Гость » » в форуме C++
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость
  • Можно ли скомпилировать программное обеспечение ARM Windows C++ на хосте ARM Windows?
    Anonymous » » в форуме C++
    0 Ответы
    69 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»