Das hört sich ja mal gut an, d.h. ich spar mir dem Umweg über die Libs.
Das mit den Interrupts ist aber eigentlich auch logisch; der Compiler weiss ja nicht, ob denn irgendwann mal eine Interrupt-Bedingung auftritt oder nicht. Er könnte höchstens rauslesen, ob sie scharfgeschaltet sind. Darum sicherheitshalber dazu.

Gerade auch mal probiert: Haut wunderbar hin; von 51442 Bytes auf 36020 runter. Erster Gedanke: "Man, was hab ich denn da überall für nen Schei* drin?" 15kB unnötiges Zeugs.