Hello Jay, Le 03/04/2013 22:30, Jay Carlson a écrit :
I've wanted to do userspace mips16 since around 2002. I've generated a minimum changeset needed to get basic OpenWrt+luci running. This boots and runs on mips/mipsel malta qemu, mipsel malta Imperas sim, and a D-Link DIR-601-A1. It has not been tested on non-mips32r2 (i.e. non-mips16e) at all.
This is very cool stuff! I will give this a try tomorrow and report my progress here.
The benefits are unclear. Squashfs sizes are very similar. Memory/TLB/cache pressure is reduced slightly which might help a little on 16M machines. Wall clock times for things like "/etc/init.d/firewall restart" are slightly slower.
Did you also enable a MIPS16 build of the kernel or just user-space for now?
uclibc remains -mno-mips16 for now. Among other things, gcc does not support thread-local storage in mips16 as of gcc 4.6. (Should there be any TLS symbols with CONFIG_TLS_SUPPORT=n?) Covering more of uclibc would help. Realtek even uses some mips16 in their kernel, but I worry about tickling processor errata. To activate this, add "-minterlink-mips16 -mips16" to CONFIG_TARGET_OPTIMIZATION.
Thanks! -- Florian _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel