On Dec 7, 5:04 pm, waxinwaxout <waxinwax...@hotmail.comwrote:
Quote:
On Dec 7, 4:34 pm, Matthias Buelow <m...@incubus.dewrote:
>
Quote:
waxinwaxout wrote:
Quote:
I can understand there's a difference between RISC and CISC code (more
RISC instructions for the equivalent operation on a CISC
architecture). I can't understand that this difference is this large.
I was hoping this was due to compiler differences or I'm missing some
(not so) obvious optimization switch. Or maybe the linker is somewhat
different for MIPS.
>
Quote:
I don't consider it that large. You obviously haven't seen Alpha AXP
code. :) Does it really matter?
>
3.5 HD floppy size for a binary matters a lot for embedded devices
with limited storage space.
>
WRT Alpha AXP, you've made me curious !
>
I'm currently rebuilding my toolchain without math support.
Didn't help at all. The mips binaries are still large.
objdump -D <binary>
produces 351466 lines for the (-Os) mips binary and 275415 lines for
the (unoptimized) x86 binary. Both binaries were stripped.
This means (poor man's calculation approaching):
961600/275415 = 3.49 bytes per instruction for x86 and
1414612/351466 = 4.02 bytes per instruction for mips, give or take
some garnish produced by objdump. Note this is really weak calculation
as the binary sizes includes non-instructions as well. But the x86
hasn't even eliminated duplicate strings which the mips build is
doing, and still there's this big/huge difference between the two
which I can't ascribe to CISC-RISC differences.
Are the mips instructions larger than the x86 instructions? Seems like
something else is going on. What is it?
Thanks,
Miyagi