summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/mips/README
blob: c375f316df224fc4fb7c36fc03c04a27e0d4a590 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2012/03/30 - Mark Hatle <mark.hatle@windriver.com>
  - Initial Version

MIPS currently defines 12 ABIs.  Combinations of:
 *) Big/Little Endian
 *) Hardware/Software Floating Point
 *) o32, n32, n64 ABI

TUNE_ARCH, the GNU canonical arch, is defined as:

mips${MIPSPKGSFX_BYTE}${MIPSPKGSFX_ENDIAN}

The package arch is defined in such a way to generated a standard naming
scheme.  The scheme is: <mips variant>[-nf][-n32]

TUNE_PKGARCH is defined as:

${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}

The following is a list of MIPS specific variables:

MIPSPKGSFX_BYTE - This is defined as either blank and "64" for MIPS64 CPUs.

MIPSPKGSFX_ENDIAN - For bigendian hardware this is blank, otherwise it's
defined as "el".

MIPSPKGSFX_VARIANT_tune-<tune> - In the default tunings it is set to the
same value as TUNE_ARCH.  In custom, optimized tunings, the value should
be modified to more precisely describe the tuning.

MIPSPKGSFX_FPU - The value is set to "" or "-nf", where "-nf" indicates 
that the tune is using a non-floating point ABI.

MIPSPKGSFX_ABI - This is used to specify an alternative ABI when the previous
values are not enough to distringuish the package.  "-n32" is added when
building for N32 ABI.