API gdb python определяет флаг gdb.BP_BREAKPOINT
, который будет использоваться при создании объекта gdb.Breakpoint
, но, кажется, не существует флага, позволяющего установить аппаратную точку останова? Я что-то упустил?
Я хотел бы создать объект gdb.Breakpoint
, чтобы я мог переопределить метод stop
и реагировать на контрольные точки при их срабатывании. Насколько я могу судить, иначе сделать это невозможно.
Интересно, что если я установлю точку останова «нормальным» способом (например, break *0x400123
), то gdb.breakpoints()
вернется объект. Однако, если я установлю аппаратную точку останова таким же образом (hbreak *0x400123
), никакие объекты не будут возвращены. Похоже, это указывает на то, что API python не может напрямую обращаться к точкам останова HW / манипулировать ими?
Использование GDB 8.3.50.20190824-30.fc31 в Fedora 31.