17#ifndef SBL_PROFILING_DWT_HPP
18#define SBL_PROFILING_DWT_HPP
26inline volatile uint32_t&
DEMCR = *
reinterpret_cast<volatile uint32_t*
>(0xE000EDFC);
27inline volatile uint32_t&
DWT_CTRL = *
reinterpret_cast<volatile uint32_t*
>(0xE0001000);
28inline volatile uint32_t&
DWT_CYCCNT = *
reinterpret_cast<volatile uint32_t*
>(0xE0001004);
29inline volatile uint32_t&
DWT_LAR = *
reinterpret_cast<volatile uint32_t*
>(0xE0001FB0);
static constexpr uint32_t CYCCNTENA_BIT
static constexpr uint32_t TRCENA_BIT
static constexpr uint32_t LAR_UNLOCK
volatile uint32_t & DWT_CYCCNT
volatile uint32_t & DWT_CTRL
volatile uint32_t & DWT_LAR
volatile uint32_t & DEMCR
void dwt_init()
Initialize DWT cycle counter. Call once after clock configuration.
CycleScope(volatile uint32_t &out)
volatile uint32_t & result_