* broken since: commit ae5073c4abd8935c01d14d3e6395124f815bd10b Author: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Date: Fri Sep 23 15:28:08 2016 +0100 arch-mips: Add mips64-o32 tunes * fixes: scripts/tune/log.fake-mips-24k.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32r2.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32r6.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64r2.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64r6.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips-74k.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-octeon.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 (From OE-Core rev: f8f07d1249a9a86307c1121edd4df3b64162c61b) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016/09/30 - Zubair Lutfullah Kakakhel Zubair.Kakakhel@imgtec.com
- Add Release 6 support
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
Release 6 of the ISA is a major revision and doesn't build up on previous releases of the ISA.
For more details about tuples, check https://wiki.debian.org/Multiarch/Tuples
TUNE_ARCH, the GNU canonical arch, is defined as:
"mips${MIPSPKGSFX_32R6}${MIPSPKGSFX_64R6}${MIPSPKGSFX_BYTE}${MIPSPKGSFX_R6}${MIPSPKGSFX_ENDIAN}"
The package arch is defined in such a way to generated a standard naming scheme. The scheme is: [-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_ENDIAN2 - For bigendian hardware this is "eb", otherwise it's defined as "el".
MIPSPKGSFX_VARIANT_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.
MIPSPKGSFX_R6 - This is used to specify the presence of release 6. "r6" is added in the tuple for release 6 of the isa.
MIPSPKGSFX_64R6 - This is used to specify "isa" in the tuple. Release 6 onwards we use "mipsisa64" instead of just "mips64".
MIPSPKGSFX_32R6 - This is used to specify "isa32" in the tuple. Release 6 onwards we use "mipsisa32" instead of just "mips".