Summary: * Linaro binary toolchain 2012.04 release. * Code size benchmark analysis.
Details: 1. Validate and bug fix for linaro binary toolchain 2012.04 release. 2. Investigate code size regressions in 4.7 Find more regression cases due to loop invariant hoisting, and tests should we can reduce some codesize with option -fno-move-loop-invariants. Some regressions are due to pass_reorder_blocks, which is disabled for -Os in 4.7. For some cases, ivopt will introduce to more codes and function inline might lead to more spilling. We also try linaro 2012.04 baremetal build. But there is a few bytes regression compared with 4.7 trunk. 3. Setup the qemu env following Michael’s instructions (https://wiki.linaro.org/MichaelHope/Sandbox/QEMUCrossTest) and tests show it work. 4. Try to build gcc-linaro-2012.04 configured with "--with-fpu=neon --with-float=hard" based on a precise sysroot (precise-sysroot-armhf-r0.tar.bz2) from http://people.linaro.org/~michaelh/incoming * Linux build is OK without any change. * Mingw32 build reports error. After removing the code, the build PASS. [ERROR] .../libc/usr/include/arm-linux-gnueabihf/sys/types.h:117:19: error: two or more data types in declaration specifiers
Plans: * Investigate other code size regressions in 4.7.
Planed leaves: * Labor Day holiday: April 30 and May 1.
Best regards! -Zhenqiang