Mozilla heeft onder de naam Rr een debugger uitgebracht die het mogelijk maakt om draaiende programmacode 'op te nemen' om deze vervolgens stap voor stap af te spelen. Volgens Mozilla maakt Rr het debugproces minder vervelend en kunnen er meer bugs mee gevonden worden.
De Rr-debugger is door Mozilla-ontwikkelaars geschreven als hulpje bij het debuggen van Firefox-code die is geschreven in C en C++. Rr maakt tijdens het starten van de code een opname, waarbij onder andere geheugentransacties en breakpoints meegenomen worden. De 'opnames' kunnen vervolgens afgespeeld worden, waarbij net als een videorecorder stap voor stap vooruit en achteruit kan worden 'gespoeld'.
Volgens Mozilla maakt Rr het debuggen van code samen met GNU gdb een minder vervelende klus. Bovendien zou Rr, waarbij code op een deterministische wijze wordt gedebugd, het vinden van moeilijk te reproduceren bugs kunnen vergemakkelijken. Bij het maken van opnames en het afspelen met de Rr-debugger vertraagt de software wel; bij Firefox meldt Mozilla vertragingen tot driemaal de normale executiesnelheid en een gemiddelde vertraging met een factor 1,2.
Mozilla denkt dat Rr nuttig kan zijn voor andere programmeurs die met C++- en C-code werken en heeft de debugger onder een MIT-licentie op GitHub geplaatst. Toch zijn er de nodige beperkingen aan de tool. Zo werkt deze momenteel voor single threaded 32bit-code op x86-processors samen met het Linux-besturingssysteem. Of er een port komt naar bijvoorbeeld Windows is de vraag, omdat dit veel extra werk zou kosten. Wel zou een x64-versie voor Linux worden overwogen. Een andere beperking is dat de tool niet geschikt is voor ARM-socs omdat deze architectuur de benodigde performance counter features niet zou bieden.