| 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: <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_ENDIAN2 - For bigendian hardware this is "eb", 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. |
| |
| 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". |