The document is archived and information here might be outdated
Registers: Availability of Registers
Visual Studio 2005
ANSI 3.5.1 The extent to which objects can actually be placed in registers by use of the register storage-class specifier
The compiler does not honor user requests for register variables. Instead, it makes it own choices when optimizing.