SWO (Serial Wire Output)
One extra pin on ARM's debug port that streams trace data out while the processor runs at full speed.
SWO complements SWD: where SWD is a two-way channel that halts, reads and writes, SWO is a one-way output. Mostly it carries data from the ITM (Instrumentation Trace Macrocell), which offers 32 stimulus ports a program can write to with a single store. The CMSIS function ITM_SendChar() therefore gives you printf without a UART and without stopping the core, unlike semihosting.
The same wire can carry periodic program-counter samples and events from the DWT unit, which is enough for a crude profiler. The catches: Cortex-M0 and M0+ have no ITM, the pin is often shared with JTAG's TDO, and the baud rate has to match the core clock exactly — get it wrong and you get silence.