> Testing: > * Crossbuild for target arm-none-eabi with cpu cortex-a9 neon softfp and > tested in three configuration: -marm (default), -mthumb, -mapcs-frame. No > regression on qemu. > * Crossbuild for target arm-none-eabi thumb2 with cpu cortex-m3. No > regression on qemu. > * Crossbuild for target arm-none-eabi thumb1 with cpu arm7tdmi and > arm1136jf-s. No regression on qemu. > * Crossbuild for target arm-linux-gnueabi with cpu cortex-a9 with eglibc > and used this compiler to build AEL linux kernel. It boots successfully. * > Bootstrap the compiler on cortex-a8 successfully for > --languages=c,c++,fortran and used this compiler to build gdb. No > regression with check-gcc and check-gdb.
What other testing have you done? Thate's a good number of combinations not covered by your above list. In particular: - Coverage of old cores looks pretty thin. In particular ARMv4t has different interworking requirements. - iWMMXT has special alignment requirements. - Interrupt functions with special prologue/epilogue. Both traditional ARM and Cortex-M3. - -mtpcs-frame and -mtpcs-leaf-frame Some of these options are orthogonal. As you've proved with -mapcs-frame it's near impossible to get these right without actually testing them. I'm not saying you have to do a full testrun in every combination, but it's worth testing a representative selection of functions (large and small frame, leaf or not, with and without frame pointer, uses alloca, etc). Also worth explicitly clobbering a selection (both odd and even numbers) of callee saved registers to make sure we get that right. Any difference in the output should be manually verified (ideally the assembly output would be identical). > * The patches have not been explicitly tested with any FPA variants (which > are deprecated in 4.7 and expected to become obsolete in 4.8). I'm not keen on breaking these without actually removing them. Paul