Random #AVR microcontroller thoughts:
In previous AVRs (like the M328) interrupts would just disable the I-bit in the status register, and the return instruction (reti) would enable it.
So nothing that magical about RETI, it was just SEI+RET. And I might've been even so naughty in some code that I've size golfed a word by using reti instead of sei+ret.
Anyways, with the modern xmega-derived cores (AVRxt), entering an interrupt does not disable the I-bit, instead the interrupt controller disables that priority level of interrupts internally until the CPU core signals the execution of a RETI instruction.
This just has made making a super-low-priority interrupt (one that can be interrupted by every other interrupt) a bit trickier. Previously you'd just disable that particular interrupt source and enable the I bit (SEI) and you'd be set.
Now ... I have not tested this yet (i might real soon tho) but i think now the most succint way to "release" the interrupt controller (without actually exiting the interrupt) is to rcall a reti instruction. This is 2+4 = 6 cycles (instead of 1 cycle for SEI previously).
And ofc after that it's proper to just "ret" from the interrupt so that the interrupt controller is not super confused.
(You might think that the fact that you have an interrupt controller that allows some priority levels for interrupts would avoid the need for this, but atleast on the Tiny3217, the interrupt controller has no concept for a "lower than default" priority. It allows one high priority interrupt and the rest are normal priority.)