On 01/02/12 13:23, Richard Earnshaw wrote: > On 31/01/12 05:15, Richard Henderson wrote: >> Despite how trivial this is, I assume this must wait for stage1. >> Ok? >> >> >> r~ >> >> >> * longlong.h [arm] (umul_ppmm): Use umull. >> [arm] (count_trailing_zeros): Use __builtin_ctz. > > armv3m also has the widening multiply operation (it's what the M stands > for). > > Otherwise ok for stage1 >
And it's a good job we did. I've just noticed that it's broken thumb1 builds of libgcc. 00000000 <__ctzsi2>: 0: b508 push {r3, lr} 2: f7ff fffe bl 0 <__ctzsi2> 2: R_ARM_THM_CALL __ctzsi2 6: bc08 pop {r3} 8: bc02 pop {r1} a: 4708 bx r1 R.