Thiemo Seufer wrote: > Could you check what "-march=mips32r2 -smartmips -mtune=4ksd" does? > I expect it to have the same result than "-march=4ksd". > OK, I give it a try and here are some figures: $ mipsel-linux-size mipssde-6.05.00-20061023/vmlinux~* text data bss dec hex filename 1446130 58456 93056 1597642 1860ca mipssde-6.05.00-20061023/vmlinux~4ksd 1472034 58456 93056 1623546 18c5fa mipssde-6.05.00-20061023/vmlinux~mips32r2-smartmips 1446130 58456 93056 1597642 1860ca mipssde-6.05.00-20061023/vmlinux~mips32r2-smartmips-mtune4ksd So you're right "-march=mips32r2 -smartmips -mtune=4ksd" gives the same result as "-march=4ksd" And the extra space given by "-march=mips32r2 -smartmips" is coming from some additional nop instructions: $ mipsel-linux-objdump -D vmlinux~mips32r2-smartmips > vmlinux~mips32r2-smartmips.S $ mipsel-linux-objdump -D vmlinux~4ksd > vmlinux~4ksd.S $ grep -c nop *.S vmlinux~4ksd.S:18708 vmlinux~mips32r2-smartmips.S:27895 It seems that these extra nops are used for load delays. For example: vmlinux~4ksd.S: -------------- <snip> c00008b4: 8fa40040 lw a0,64(sp) c00008b8: 27a40018 addiu a0,sp,24 c00008bc: 0c000148 jal c0000520 <try_name> <snip> vmlinux~mips32r2-smartmips.S: --------------------------- c00008b8: 8fa40040 lw a0,64(sp) c00008bc: 00000000 nop c00008c0: 27a40018 addiu a0,sp,24 c00008c4: 0c000148 jal c0000520 <try_name> Franck