linux-mips
[Top] [All Lists]

Re: gcc: mips32 vs mips3

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: gcc: mips32 vs mips3
From: Marian Jancar <m.jancar@satca.net>
Date: Mon, 06 Apr 2009 16:21:23 +0200
Cc: linux-mips@linux-mips.org
In-reply-to: <20090309193902.GA993@linux-mips.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <49B1556E.3030903@satca.net> <20090309193902.GA993@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 2.0.0.12 (X11/20071114)
Ralf Baechle wrote:
On Fri, Mar 06, 2009 at 05:55:10PM +0100, Marian Jancar wrote:

which option is supposed to compile faster code, -mips3 or -mips32?

That question doesn't quite make sense.   A MIPS32 processor can't execute
MIPS III code and a MIPS III processor can't execute MIPS32 code.  Only a
MIPS64 processor could execute code compiled for either MIPS32 or MIPS III.
So choose the option to match the architecture of your processor.

The processor in question is the processos in the Atheros 802.11 SoC AR5312, 4Kc AFAIK.
OpenWRT uses -mips32 for this target but the GPL SDK for NanoStation
uses -march=r4600. Both options produce code that runs without oops
or any other immediately manifested issues.
So you are right, the correct question is "-mips32 vs -march=r4600".
I got confused because I left some bits compiled with -march=4600 when
recompiling with -mips32 and gcc complained about it being compiled
for MIPS III when linking.

Marian

# cat /proc/cpuinfo
system type             : Atheros AR2313
processor               : 0
cpu model               : MIPS 4Kc V0.10
BogoMIPS                : 179.40
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 16
extra interrupt vector  : yes
hardware watchpoint     : yes
ASEs implemented        :
VCED exceptions         : not available
VCEI exceptions         : not available


<Prev in Thread] Current Thread [Next in Thread>