Paul RÃmer <roemer.paul@xxxxxxxxxxxxxx> writes: > I'm playing around with the gcc and its generated assembler code for > some test applications. I recognized that the gcc prefers the use of > the registers eax, (ebx), ecx and edx (x86) for arithmetic > instructions like lea, add, mul, etc. I know that the gcc uses several > register classes to define which registers can be used for which task > (e.g. FIXED_REGS, GENERAL_REGS). > > Is there also a class that explains the described behavior? Or does > the gcc simply looks for unused registers in a special order? See REG_ALLOC_ORDER. > Another question: What is meant by the Q_REGS class? The Q_REGS are the registers which can be accessed using byte operations. Ian