"Schmidt, Steffen (EXT)" <steffenschmidt.ext@xxxxxxxxxxx> writes: > As can be seen in the example, MIPS register $20 is the global > variable register. The variable is modified in the function and the > register should therefore not be saved and restored. GCC 4.3.2 seems > to be correct here. GCC 4.4.1, however, stores and restores the > register $20 content. In my understanding this behaviour is > incorrect. This certainly looks like a serious bug. Please report it following the guidelines at http://gcc.gnu.org/bugs/ . Sorry about the trouble. Ian