> I do not see that working unfortunately - Thumb-2 codesize increases by a > few percent even with -Os. This is primarily due to replacing a low > register with IP, which often changes a 16-bit instruction like: > > movs r2, #8 > > into a 32-bit one: > > mov ip, #8 > > This will also affect other targets with multiple instruction sizes. So I > think it should check the size of the new instruction patterns and only > accept a rename if it is not larger (certainly with -Os).
I'd rather let the back-end do that, either through preferred_rename_class or another hook. -- Eric Botcazou