mirror of
https://github.com/greatscottgadgets/hackrf.git
synced 2026-03-06 15:30:18 +01:00
Using our newly-defined macros, it's now straightforward to write separate loops for RX and TX, with the idle loop dispatching to them when a new mode setting is written by the M4. This saves some cycles by reducing branches needed within each loop, and makes it simpler to add new modes. For macros which use internal labels, a name parameter is added. This parameter is prefixed to the labels used, so that each mode's use of that macro produces its own label names. Similarly, where branches were taken in the handle_shortfall macro to the "loop" label, these are replaced with the appropriate tx_loop or rx_loop label. The syntax `\name\()_suffix` is necessary to perform concatenation in the GNU assembler.