> Versuch mal [...]

Das ist dann gleichbeutend mit R6 = 0

> 2. register ist und war immer nur eine Empfehlung an den Compiler.

Nein, hier ist es keine "Empfehlung". Globale Register sind eine GNU-Erweiterung. Guckst du im GCC-Handbuch bei

Extensions to the C Language Family -> Variables in Specified Registers ->Defining Global Register Variables

Die Frage des OP bezüglich globaler Register wird hier beantwortet: http://www.mikrocontroller.net/topic/312598