| 1467 | } |
| 1468 | |
| 1469 | void MainWindow::watchUpdateRow(int row) { |
| 1470 | |
| 1471 | // this is needed in the case of overlapping address spaces |
| 1472 | if (m_watchpoints->item(row, WATCH_LOW_COL)->text() != DEBUG_UNSET_ADDR && |
| 1473 | m_watchpoints->item(row, WATCH_HIGH_COL)->text() != DEBUG_UNSET_ADDR) { |
| 1474 | uint32_t low = static_cast<uint32_t>(hex2int(m_watchpoints->item(row, WATCH_LOW_COL)->text())); |
| 1475 | uint32_t high = static_cast<uint32_t>(hex2int(m_watchpoints->item(row, WATCH_HIGH_COL)->text())); |
| 1476 | |
| 1477 | for (uint32_t addr = low; addr <= high; addr++) { |
| 1478 | debug_watch(addr, DBG_MASK_READ | DBG_MASK_WRITE, false); |
| 1479 | } |
| 1480 | } |
| 1481 | |
| 1482 | watchUpdate(); |
| 1483 | } |
| 1484 | |
| 1485 | bool MainWindow::watchAdd(const QString& label, uint32_t low, uint32_t high, int mask, bool toggle, bool unset) { |
| 1486 | const int row = m_watchpoints->rowCount(); |
nothing calls this directly
no test coverage detected