http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58092
--- Comment #6 from Rafał Miłecki <zajec5 at gmail dot com> --- OK, I've installed "cross-mips-linux-gcc" package from: http://download.opensuse.org/repositories/home:/duwe:/crosstools/openSUSE_12.2/ and it works. After compiling test.c with: > /opt/cross/bin/mips-linux-gcc -v Using built-in specs. COLLECT_GCC=/opt/cross/bin/mips-linux-gcc COLLECT_LTO_WRAPPER=/opt/cross/libexec/gcc/mips-linux/4.5.3/lto-wrapper Target: mips-linux Configured with: ../configure --prefix=/opt/cross --enable-bootstrap=no --build=x86_64-suse-linux --target=mips-linux --enable-languages=c,c++ --with-float=soft --disable-libmudflap --disable-multilib Thread model: posix gcc version 4.5.3 (GCC) I got a correct test.o. So this issue is specific to Linaro or OpenWrt.