Hi, All, I have noticed that the latest ports of GCC (e.g. i386) use a pseudo-register (argp in i386) defined as fixed in FIXED_REGISTERS. When I implement it similarly in msp430 port (instead of hardware register r5, add a pseudo-register marked as fixed), GCC perfectly works in -O2 mode, however, crashes in -O0 mode by trying to generate instruction setting the pseudo-register (argp) explicitly from SP.
My question is whether there is a way of telling GCC that a certain register is a pseudo-register and should always be eliminated to either SP or FP. The ELIMINABLE_REGS macro is set accordingly, however, the actual elimination happens only with optimization turned on. If there is an article describing register elimination vs pseudo-registers, I would appreciate a link. -- Best Regards, Ivan Shcherbakov mailto:shcherba...@eit.uni-kl.de TU Kaiserslautern, Germany Department of Real-Time Systems