Skip to content

Releases: MediaTek-Labs/nanomips-gnu-toolchain

nanoMIPS-2024.07-02

28 Aug 12:30
818736e
Compare
Choose a tag to compare

![MTK Logo]    nanoMIPS GNU toolchain v2024.07-02

        Published on August 28, 2024

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.

Release Notes

New Features

  • Provide dummy interfaces for floating point (fenv/cfenv) headers. Thor/nanoMIPS processor does not have hardware floating point capability. The library support provides is just sufficient to satisfy compile/link requirements for projects that refer to the interface.

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.28
GCC 6.3.0
musl 1.1.16
newlib 2.5.0
GDB 8.0
QEMU 2.5.0
gold 2.30
smallClib Internal
Python 2.7.16

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x64 (.tgz) [156M] md5: cef4a004eb27de3cdc92b62b17c8665c
sha256: c6b0b53b4807ad0b72827f3e5be2aeb012cbec91ee4ca8f07c5d75eacb0443e2

Source Components

Component Size Checksum
binutils-2024.07-02.src.tgz [53M] md5: 6688ae14f20bcc408a6f7876ff55030e
sha256: 0f4156530642462ff69283eefd61b8912b6879611ffc991513a61d4d8531d828
gdb-2024.07-02.src.tgz [52M] md5: b6b535320bea76757624d64b5fb553fd
sha256: 7d848df549cd77925100ea463014df9f4300be81cf11c4ccceaf3ac1fbc76b52
gold-2024.07-02.src.tgz [54M] md5: 5f26d3c5dbf4b22f28181e3b88471951
sha256: a4330d1a2284dfd1b74e2b51d3fdb9b629c7d9d8386dbf06c7d55193a91dc231
newlib-2024.07-02.src.tgz [20M] md5: a3fc02c828b54eecd6fc93a4188c74db
sha256: eff32c1a3eca3bb29101e9dd76a509df07115a5ecb021d49004080a0f0d9239e
gcc-2024.07-02.src.tgz [125M] md5: 0a04c83ea3b307ed5690cd5db840a6da
sha256: 82a36166151c03660cd321ecfe202fe8939bde03a0ce827438efd6e823ec0ff3
smallclib-2024.07-02.src.tgz [1M] md5: d6e233f37bd9185a91647e5e95fbb487
sha256: bdb068f911075e9d13033aaabe3cf9997a957936dd6c41b91da97212ec1f5fa6
qemu-2024.07-02.src.tgz [90M] md5: ca75037b3ffcb2316f3b0dac6b5d48d4
sha256: 68e2e9f031149b0880fa6b78f594a88950d9038a4ebf6b8f34812be452424f8e
musl-2024.07-02.src.tgz [1M] md5: 150a0867c52ec68b87631e9473a13847
sha256: 800b7b653a7aa7d77df828ebf85cd4d1b8acbdcfd990c12416d94a21888b2087
packages-2024.07-02.src.tgz [192M] md5: fbb919ed81766b5fc12e3da9c0228dd7
sha256: edc0e3b24cbd480144bda356b3c593532ba98fc5690c3ffcc2b0effd13716f9c
python-2024.07-02.src.tgz [22M] md5: 457dddfcae2a08e7b346db3289d576f8
sha256: 168a676797a6750df556739c40bc91efbd97b9a5db9e251f3b62e6cc1d6e7c82

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.1 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncurses
  • zlib - zlib-libpng license
  • PSFL v2 - python

To refer to the complete license text for any component, check the corresponding sources above.

Disclaimer of Warranties and Limitation of Liability

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

TO THE FULLEST EXTENT ALLOWED AND PERMITTED BY APPLICABLE LAWS AND REGULATIONS, MEDIATEK SHALL NOT, UNDER ANY CIRCUMSTANCES, BE LIABLE TO YOU OR ANY THIRD PARTY THROUGH YOU FOR PERSONAL INJURY OR ANY CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, PUNITIVE OR SPECIAL DAMAGES WHATSOEVER, INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, LOSS OF DATA, BUSINESS INTERRUPTION OR ANY OTHER COMMERCIAL DAMAGES OR LOSSES, ARISING OUT OF OR IN RELATION TO THIS AGREEMENT, YOUR USE OF THE Software Package and DOCUMENTATION, OR YOUR DEVELOPMENT OF APPLICATIONS, WHETHER BASED ON BREACH OF CONTRACT, BREACH OF WARRANTY, TORT (INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR OTHERWISE, EVEN IF MEDIATEK HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

License Agreements

GPL v3.1

The source code is distributed under the GNU General Public License version 3,
with the addition under section 7 of an exception described in the "GCC
Runtime Library Exception, version 3.1" as follows (or see the file
COPYING.RUNTIME):

GCC RUNTIME LIBRARY EXCEPTION

Version 3.1, 31 March 2009

Copyright (C) 2009 Free Software Foundation, Inc.

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

This GCC Runtime Library Exception ("Exception") is an additional
permission under section 7 of the GNU General Public License, version
3 ("GPLv3"). It applies to a given file (the "Runtime Library") that
bears a notice placed by the copyright holder of the file stating that
the file is governed by GPLv3 along with this Exception.

When you use GCC to compile a program, GCC may combine portions of
certain GCC header files and runtime libraries with the compiled
program. The purpose of this Exception is to allow compilation of
non-GPL (including proprietary) programs to use, in this way, the
header files and runtime libraries covered by this Exception.

  1. Definitions.

A file is an "Independent Module" if it either requires the Runtime
Library for execution after a Compilation Process, or makes use of an
interface provided by the Runtime Library, but is not otherwise based
on the Runtime Library.

"GCC" means a version of the GNU Compiler Collection, with or without
modifications, governed by version 3 (or a specified later version) of
the GNU General Public License (GPL) with the option of using any
subsequent versions published by the FSF.

"GPL-compatible Software" is software whose conditions of propagation,
modification and use would permit combination with GCC in accord with
the license of GCC.

"Target Code" refers to output from any compiler for a real or virtual
target processor architecture, in executable form or suitable for
input to an assembler, loader, linker and/or execution
phase. Notwithstanding that, Target Code does not include data in any
format that is used as a compil...

Read more

nanoMIPS-2024.01-02

05 Mar 08:59
818736e
Compare
Choose a tag to compare
Update README.md

nanoMIPS-2022.03-01

20 Mar 19:39
818736e
Compare
Choose a tag to compare

MTK Logo    nanoMIPS GNU toolchain v2022.03-01

        Published on March 21, 2022

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.
  • GCC Linux (MUSL) Toolchain
       For compiling Linux applications for Linux running on nanoMIPS cores.

Release Notes

New Features

  • Update GCC from v6.3.0 to v11.2.0
    • GCC now defaults to GNU C17 for compiling C code and to C++17 for compiling C++ code.
    • GCC now defaults to DWARF version 5 for debug information structures, excluding line tables. Support libraries are still built with -gdwarf-4 to maintain compatibility with the rest of the toolchain.
    • GCC now defaults to -fno-common. Multiple tentative definitions result in errors at link stage.
    • GCC now preserves auxiliary debug information created by the language front-end when doing LTO which increases final debug information size but eases debugging experience.
    • A new nanomips-elf-lto-dump has been added. It dumps various information about LTO byte-code object files.
    • Various enhancements to existing GCC warnings as well the introduction of the new ones enabled by default as -Wignored-attributes, -Wshift-count-negative, -Wstringop-*, -Wfree-nonheap-object and -Wbuiltin-declaration-mismatch.
  • Update binutils from v2.29 to v2.37
  • Update newlib from v2.5.0 to v4.2.0
  • Update qemu from v2.5 to v6.2.0

Bug Fixes

  • C99 inlining semantics is now properly implemented by the GCC. Non-static functions having inline keyword that do not end up inlined by the GCC, require out of line definition and can cause missing symbol errors at the link stage if one is not provided in another object file. Proper fix in most cases is to apply static keyword to such functions.

Other Changes

  • Internal LTO format has changed. LTO object files created with the prior versions of the toolchain cannot be linked with this release.

Known issues

  • The -fstack-check feature is not supported.
  • The -mfunc-opt-list does not support noipa attribute.
  • Dereferencing a pointer explicitly marked with aligned attribute less than the pointer's natural alignment, may produce unaligned access at runtime if passed as argument to a function.

Refer to the upstream release notes for GCC 11.2 for more details.

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.37
GCC 11.2.0
musl 1.1.16
newlib 4.2.0
GDB 8.0
QEMU 6.2.0
gold 2.30
smallClib Internal
Python 3.7.4

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x64 (.tar.gz) [168M] md5: 16abf95c4909d7d187392ebc6c32e2c4
sha256: 72b700af37e6be7c92a5dc5e9a12f9236023a09866292b93253a956fc9204286
Windows 64 (.tar.gz) [122M] md5: eb5d860f121987a9d11065c395266681
sha256: 2358613dca04daea05cb732a53521f91796199ba76519d4b88417f18d0b33e7f
Linux x86 (.tar.gz) [171M] md5: f21d3316650fb3431981c002312a03d0
sha256: 68c05ac1522dc2c2c64a645b1f490460812ba607bc51a7d144587c6a41b60b23
Windows x86 (.tar.gz) [118M] md5: 764ba0045137afa06dd88d1b3b678f8e
sha256: 8951a500da066b375e747a7e819e0832c4fce44b615dbd3fe02d980b59e79b55
MUSL/Linux Toolchain
Linux x64 (.tar.gz) [184M] md5: 6bb0b8a36b53762441cd5c16878b6fd0
sha256: 26dc4cc9b81d652757e6543f9c3c1f1932a3611e337a6727610c74de8750327e
Windows 64 (.tar.gz) [147M] md5: 9a2576852dda88e3724d297a833e1dc5
sha256: b906c0bd0b624ae7ed5770a3d8da71cb302bde44baa88ce1a7a1c8eae9d917ec
Linux x86 (.tar.gz) [186M] md5: 6859e59668b92ae644bd595712ec8d2a
sha256: 8f487b3016ac8c18e0acf3f5620f4428e255a470dda009c88f9af7d9f21d7f19
Windows x86 (.tar.gz) [142M] md5: 38fd8ae3b0d16519aef947a8d2d8b093
sha256: 8b0aa8d4750af234e08ff544cf1ea1ca426b8dd266990a9c41c60c1467f0683d

Source Components

Component Size Checksum
binutils-2022.03-01.src.tar.gz [51M] md5: 9c534173e7323807548babed97cf225e
sha256: eb825018b62e70e666ea2a9abdb35c7354e5abf5229137d6496c173647e57bb6
gdb-2022.03-01.src.tar.gz [51M] md5: f24202cf90d1aae0912eed36432291f7
sha256: 142102f6c5c8a372b641c7ef97ef3386d97acc5080ac2b7f4540955c3820ab89
gold-2022.03-01.src.tar.gz [52M] md5: 90ccdd0fd2c7fde03cf58be032c2a58e
sha256: 0e324dad66f26bd09bdac0cfb7a1eddf42da634f5abd3b2063d220f719ba1ba8
newlib-2022.03-01.src.tar.gz [21M] md5: b6bec7cb08f9dd7b456672b6d82d083a
sha256: 89e71a1053b84df54f7e10d65f3355671f79859d2b97fe3e3a3037e6f9d89ebd
gcc-2022.03-01.src.tar.gz [119M] md5: e1163f1a2032a0ed1799460fd953c1f4
sha256: bae9cf646817ca999db4ef4e2a5929a46abdf0b007a196c1a050228ad5879aad
smallclib-2022.03-01.src.tar.gz [1M] md5: 6e907b59949edbb0bbc72e1339ae4dcd
sha256: 83bb6d15a13a9354a924ad7fbd7ae1e919cc5be003944108a8a88323dedc9b03
qemu-2022.03-01.src.tar.gz [90M] md5: 4f22a3d705255a13edc5145e4d2c74df
sha256: 7d896e824ab64d0608e62731e36778d23a0d89420485245218e153fa7fa87bac
musl-2022.03-01.src.tar.gz [1M] md5: 3f4d763384966fc243e3b0ebeb3cd5bf
sha256: 25127ad0737fad18eb2713c67f04db6ec4aefe2a3281c83e66932fe2381bcf7c
packages-2022.03-01.src.tar.gz [192M] md5: 1fba8e5f262cb60800142a9735d2ac5d
sha256: e227b97c9ba16781559feba47e03d98c17dd169d30fd6769d318f8bec18f46bd
python-2022.03-01.src.tar.gz [22M] md5: 307abaaa75bd376ba1f43cb4e7162f7c
sha256: 8f2206a574854320c1c49d20225b5df3ad673ea673afc2d0d8c098509232138c

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.0 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncu...
Read more

nanoMIPS-2021.11-05.2-nongnulibs

23 Aug 15:46
818736e
Compare
Choose a tag to compare

MTK Logo    nanoMIPS GNU toolchain v2021.11-05.2-nongnulibs

        Published on August 23, 2024

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores. This is the nongnulibs variant of the GNU toolchain with some GNU library/runtime components replaced with non-GPL'd counterparts from LLVM13. This is a support release based on 2021.11-05.1-nongnulibs with minor changes to newlib.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.

Release Notes

This is a minor update on top of

New Features

  • Provide dummy interfaces for floating point (fenv/cfenv) headers. The i7200 processor does not have hardware floating point capability. The library support provided here is just enough to satisfy compile/link requirements for projects that refer to the interface.

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.28
GCC 6.3.0
musl 1.1.16
newlib 2.5.0
GDB 8.0
QEMU 2.5.0
gold 2.30
smallClib Internal
Python 2.7.16

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x64(.tar.gz) [155M] md5: e0863900285443084db72ead1e31df64
sha256: 1bdc82a5305c6ff0130feff1d59b30192709338fa1a820e60ad127620828cb37

Source Components

Component Size Checksum
llvm-project-2021.11-05-nongnulibs.src.tgz [147M] md5:32e3455149a6fbfac657332334a949e9
sha256:578185a05ee96afe7aced721bf3bfda7c693ba3003ae8eebbcf6b0e7c56b176c
binutils-2021.11-02.src.tar.gz [51M] md5: cac44dcf275f91e86bd7800e8f822c47
sha256: 03bb8e1ea8c77132a8fb31cd347f70b82493d4fb4566b1d9e6858eb503a28166
gdb-2021.11-02.src.tar.gz [51M] md5: cd7dc7bccec345094e50f21703b3ac13
sha256: 3e870a666c349c929aa0cd4119c28fd67ce8ab28fc6dbee8d941081f9766306f
gold-2021.11-02.src.tar.gz [52M] md5: 7cced0c043df3a8bbc245d8759e3a296
sha256: 6cfa0f352db00eaedf9fbb894ce45eb43edcb0c641f1716f66d3044c64256717
newlib-2021.11-05.2-nongnulibs.src.tar.gz [19M] md5:139c344c55cc72449e280629a72c93a1
sha256: 639711e41d1818125aa6bcc8db24cdad199dc7d5a5a7651512fdcafe4f02cb9e
gcc-2021.11-02.src.tar.gz [112M] md5: 1e713b424de80d767f97c99023b46afc
sha256: 78d83b7af01f51b229109eae2f4bef223b9cd3165d1d411aa7078572f2ca768b
smallclib-2021.11-02.src.tar.gz [1M] md5: 8308f78c9323e5d9f9ab37dffc02d010
sha256: 2f4970fc839ed54ea78a1c5ee930b77274d61ca3f087bbf06ab506a68bd468f4
qemu-2021.11-02.src.tar.gz [11M] md5: 7862126d82e0c7a6d3bf7e72afff4e91
sha256: c98eddb3cf4a0f5ac06f46cf421a7931b305f41d3434c3e0c7e6f1f50a1caf6a
musl-2021.11-02.src.tar.gz [1M] md5: 35df398c20c588f113e9993d2650e6d9
sha256: 006092876cc271989225be1a860ca3772625be162ed33daae08f1e23d9f7d2da
packages-2021.11-02.src.tar.gz [189M] md5: ef2c4d8a50d453e60f314712262e4127
sha256: 23e9034041da67457635c3da370a29c45120d8557159d226db096505c4bcee45
python-2021.11-02.src.tar.gz [16M] md5: 23be3057efc8e0d39b89321cb6866b98
sha256: 9e80d55a898ca685ce8e31e029ba7a248d75df5e99f3b3d7cdfe68d2e3119787

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.1 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncurses
  • zlib - zlib-libpng license
  • PSFL v2 - python
  • LLVM - Apache License v2.0 with LLVM Exceptions

To refer to the complete license text for any component, check the corresponding sources above.

Disclaimer of Warranties and Limitation of Liability

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

TO THE FULLEST EXTENT ALLOWED AND PERMITTED BY APPLICABLE LAWS AND REGULATIONS, MEDIATEK SHALL NOT, UNDER ANY CIRCUMSTANCES, BE LIABLE TO YOU OR ANY THIRD PARTY THROUGH YOU FOR PERSONAL INJURY OR ANY CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, PUNITIVE OR SPECIAL DAMAGES WHATSOEVER, INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, LOSS OF DATA, BUSINESS INTERRUPTION OR ANY OTHER COMMERCIAL DAMAGES OR LOSSES, ARISING OUT OF OR IN RELATION TO THIS AGREEMENT, YOUR USE OF THE Software Package and DOCUMENTATION, OR YOUR DEVELOPMENT OF APPLICATIONS, WHETHER BASED ON BREACH OF CONTRACT, BREACH OF WARRANTY, TORT (INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR OTHERWISE, EVEN IF MEDIATEK HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

License Agreements

GPL v3.1

The source code is distributed under the GNU General Public License version 3,
with the addition under section 7 of an exception described in the "GCC
Runtime Library Exception, version 3.1" as follows (or see the file
COPYING.RUNTIME):

GCC RUNTIME LIBRARY EXCEPTION

Version 3.1, 31 March 2009

Copyright (C) 2009 Free Software Foundation, Inc.

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

This GCC Runtime Library Exception ("Exception") is an additional
permission under section 7 of the GNU General Public License, version
3 ("GPLv3"). It applies to a given file (the "Runtime Library") that
bears a notice placed by the copyright holder of the file stating that
the file is governed by GPLv3 along with this Exception.

When you use GCC to compile a program, GCC may combine portions of
certain GCC header files and runtime libraries with the compiled
program. The purpose of this Exception is to allow compilation of
non-GPL (including proprietary) programs to use, in this way, the
header files and runtime libraries covered by this Exception.

  1. Definitions.

A file is an "Independent Module" if it either requires the Runtime
Library for execution after a Compilation Process, or makes use of an
inte...

Read more

nanoMIPS-2021.11-05.1-nongnulibs

31 May 12:20
818736e
Compare
Choose a tag to compare

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores. This is the nongnulibs variant of the GNU toolchain with some GNU library/runtime components replaced with non-GPL counter-parts from LLVM13. This is a support release based on v2021.11-05-nongnulibs with linker updates.

Component Description

GCC Bare Metal Toolchain

This is a software engineer’s cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.

Release Notes

Software work-arounds

  • Enabled via linker option --fix-nmips-hw113064. Linker will expand b[al]c[32] with specific bit patterns into lapc[48] + j[al]rc.
  • Enabled via linker option --fix-nmips-hw142543. Linker will expand b[al]c[32] with specific bit patterns into lapc[48] + j[al]rc. It will also expand move.balc with specific bit patterns into move + balc[32].

Changes to generate nongnulibs variant

  • Replace GCC builtins ( libgcc ) with the builtins library from CompilerRT.
  • Replace C-runtime components from GCC (crtbegin.o, crtend.o) with corresponding versions from CompilerRT.
  • Replace GNU standard C++ library ( libstdc++ ) with LLVM LibC++.
  • Replace low-level headers from GCC with LLVM/Clang headers.
  • The run-time library and headers are publicly available in MediaTek-labs llvm-project repository on branch mtk/nanomips-nongnu

Usage

  • The default library/header/object paths in the toolchain have been replaced with symbolic links to the new components. One can use this toolchain as a drop-in replacement for GNU toolchain v2021.11-02.
  • C++ clock interfaces, std::time() and std::steady_clock() required an implementation of gettimeofday() at the link step. This is not included in the toolchain and must be provided by the user.

nanoMIPS-2021.11-05-nongnulibs

24 Apr 19:45
818736e
Compare
Choose a tag to compare

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores. This is the nongnulibs variant of the GNU toolchain, based on v2021.11-02 with some GNU library/runtime components replaced with non-GPL counter-parts from LLVM13.

Component Description

GCC Bare Metal Toolchain

This is a software engineer’s cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.

Release Notes

Changes to generate nongnulibs variant

  • Replace GCC builtins ( libgcc ) with the builtins library from CompilerRT.
  • Replace C-runtime components from GCC (crtbegin.o, crtend.o) with corresponding versions from CompilerRT.
  • Replace GNU standard C++ library ( libstdc++ ) with LLVM LibC++.
  • Replace low-level headers from GCC with LLVM/Clang headers.
  • The run-time library and headers are publicly available in MediaTek-labs llvm-project repository on branch mtk/nanomips-nongnu

Usage

  • The default library/header/object paths in the toolchain have been replaced with symbolic links to the new components. One can use this toolchain as a drop-in replacement for GNU toolchain v2021.11-02.
  • C++ clock interfaces, std::time() and std::steady_clock() required an implementation of gettimeofday() at the link step. This is not included in the toolchain and must be provided by the user.

nanoMIPS-2021.11-02.1

31 May 11:58
818736e
Compare
Choose a tag to compare

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores. This is a support release based on v2021.11-02 with linker updates.

Component Description

GCC Bare Metal Toolchain

This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.

Release Notes

Software work-arounds

  • Enabled via linker option --fix-nmips-hw113064. Linker will expand b[al]c[32] with specific bit patterns into lapc[48] + j[al]rc.
  • Enabled via linker option --fix-nmips-hw142543. Linker will expand b[al]c[32] with specific bit patterns into lapc[48] + j[al]rc. It will also expand move.balc with specific bit patterns into move + balc[32].

nanoMIPS-2021.11-02

03 Dec 05:59
818736e
Compare
Choose a tag to compare

MTK Logo    nanoMIPS GNU toolchain v2021.11-02

        Published on December 03, 2021

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.
  • GCC Linux (MUSL) Toolchain
       For compiling Linux applications for Linux running on nanoMIPS cores.

Release Notes

New Features

  • Recognize __builtin_clz on bitwise complemented operand as the CLO instruction [BZ #5].

  • Emit NOT instruction in compiler for bitwise complement operations instead of NOR. Certain NOT instructions can be 16-bit encoded, depending on the register operands [BZ #3].

  • Enable linker relaxation from 32-bit SAVE/RESTORE instructions to 16-bit variants.

Bug Fixes

  • Use JRC.HB instruction instead of just JR for functions with use_hazard_barrier_return attribute [BZ #1].

  • Fix jump-table optimization in GCC to utilize the full 16-bit jump-table range with scaling and prefer unsigned offset tables over signed [BZ #2].

  • Fix internal error in linker when using --emit-relocs with --gc-sections [BZ #7].

  • Fix assembler relaxation to utilize the full range of 16-bit branches [CR MOLY00715449].

  • Fix -fdebug-prefix-map option for LTO builds. Prevent the option from leaking in to gnu.lto_opts and apply its mapping early to byte-code [BZ #9].

  • Updates calls to stat syscall in MUSL to inspect errno in order to detect failures. Raw syscalls that do not modify errno were replaced with syscall wrappers that do in a previous change, however some call sites were not updated to reflect in change in semantics.

  • Fix simulation of SLTI/SLTIU instructions in gdb simulator to not sign-extend immediate operands.

Other Changes

  • Add linker relaxation from 32-bit B[EQ|NE]ZC instructions to 16-bit [BZ #6].

  • Add a multilib variant of libsupc++ built with -fno-exceptions for the link-time command-line option -nortti-libstdc++ [BZ #4].

Known issues

  • The relocation minimization pass in the assembler results in instructions with invalid branch targets in some cases [BZ #17]. This pass is disabled by default and it is advisable to keep it disabled until further notice.

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.28
GCC 6.3.0
musl 1.1.16
newlib 2.5.0
GDB 8.0
QEMU 2.5.0
gold 2.30
smallClib Internal
Python 2.7.16

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x64 (.tar.gz) [118M] md5: f57a16e8852cbf0e502357aec929d3b9
sha256: 0fe2b84001975910af1b337166a55d2f01eaccbb626fbcb1606f6a45231c0031
Windows 64 (.tar.gz) [94M] md5: 31d17f6daae5e2bedc7d36ee5f46faf4
sha256: 6c4f3055189c82107e2483ef400d372b6fcb04ead94f1afda5e462d58f21200b
Linux x86 (.tar.gz) [121M] md5: 251a924cefada74e88687d4d8cecb138
sha256: 7dba9f8d822a2bceef1b87a64165c3853329e72efe3c129de134c07678c9b5cc
Windows x86 (.tar.gz) [91M] md5: 274718ac718b485c769d89aa3117f167
sha256: fd98dbbaa10708fc221a01bb33e319bed12a6eef8961ac0a375fb46c1c360c8b
MUSL/Linux Toolchain
Linux x64 (.tar.gz) [129M] md5: 5c1a9a5622153d16de4727a01d92af77
sha256: 1d41f03e5c5b641801d1cef0d224a9e10a428434ff76202bb296cba56c3acdf6
Windows 64 (.tar.gz) [110M] md5: dc0566a2c902eea6c981956bbf402004
sha256: fb816f7252231c6d5d453106ff171ac013bf3a36cae1fc746b8256ed893aa9fe
Linux x86 (.tar.gz) [130M] md5: 3c527b8f5c6a3aafc90d5a0ae1432480
sha256: df3e5de28eb280ea08c697d4bfd0b2c2124cad385bd4e54e310c9cad5f7e2b54
Windows x86 (.tar.gz) [106M] md5: cbc21c3f9571d6ced9185f22d30b91e9
sha256: 4ff381cdd0a38c38808bb0e6b2c3f359f8ac2153646b45e9dacde3ea6dd511a5

Source Components

Component Size Checksum
binutils-2021.11-02.src.tar.gz [51M] md5: cac44dcf275f91e86bd7800e8f822c47
sha256: 03bb8e1ea8c77132a8fb31cd347f70b82493d4fb4566b1d9e6858eb503a28166
gdb-2021.11-02.src.tar.gz [51M] md5: cd7dc7bccec345094e50f21703b3ac13
sha256: 3e870a666c349c929aa0cd4119c28fd67ce8ab28fc6dbee8d941081f9766306f
gold-2021.11-02.src.tar.gz [52M] md5: 7cced0c043df3a8bbc245d8759e3a296
sha256: 6cfa0f352db00eaedf9fbb894ce45eb43edcb0c641f1716f66d3044c64256717
newlib-2021.11-02.src.tar.gz [19M] md5: a747f8d9bf6bd05d43a9ada0c83b2316
sha256: cba1fb1184bd39577f77028c5490b0162d75cc2a624112befb43c70cc92dd718
gcc-2021.11-02.src.tar.gz [112M] md5: 1e713b424de80d767f97c99023b46afc
sha256: 78d83b7af01f51b229109eae2f4bef223b9cd3165d1d411aa7078572f2ca768b
smallclib-2021.11-02.src.tar.gz [1M] md5: 8308f78c9323e5d9f9ab37dffc02d010
sha256: 2f4970fc839ed54ea78a1c5ee930b77274d61ca3f087bbf06ab506a68bd468f4
qemu-2021.11-02.src.tar.gz [11M] md5: 7862126d82e0c7a6d3bf7e72afff4e91
sha256: c98eddb3cf4a0f5ac06f46cf421a7931b305f41d3434c3e0c7e6f1f50a1caf6a
musl-2021.11-02.src.tar.gz [1M] md5: 35df398c20c588f113e9993d2650e6d9
sha256: 006092876cc271989225be1a860ca3772625be162ed33daae08f1e23d9f7d2da
packages-2021.11-02.src.tar.gz [189M] md5: ef2c4d8a50d453e60f314712262e4127
sha256: 23e9034041da67457635c3da370a29c45120d8557159d226db096505c4bcee45
python-2021.11-02.src.tar.gz [16M] md5: 23be3057efc8e0d39b89321cb6866b98
sha256: 9e80d55a898ca685ce8e31e029ba7a248d75df5e99f3b3d7cdfe68d2e3119787

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.1 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncurses
  • zlib - zlib-libpng license
  • PSFL v2 - python

To refer to the complete license text for any component, check the corresponding sources above.

*Disclaimer of Warranties ...

Read more

nanoMIPS-2021.07-01

06 Aug 04:37
818736e
Compare
Choose a tag to compare

MTK Logo    nanoMIPS GNU toolchain v2021.07-01

        Published on August 06, 2021

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.
  • GCC Linux (MUSL) Toolchain
       For compiling Linux applications for Linux running on nanoMIPS cores.

Release Notes

New Features

  • Add variation of memcpy (__aligned_memcpy_no_prefetch) for 4-byte aligned pointers and sizes. This does not perform any validation on alignment of the input parameters. It must be explicitly invoked via a source code change where alignment is known. Behavior will be unpredictable if invoked for misaligned pointers or sizes. It also does not prefetch and is intended for sizes of 128 bytes or less. For larger sizes the standard memcpy is typically faster due to prefetch.

Bug Fixes

  • Fix for incorrect branch targets in assembler output due to minimize relocations pass ( CR MOLY00690538, MOLY00690538).
  • Decouple the minimize relocations pass from jump-table optimization. Previously disabling minimize relocations would inhibit jump-table relaxations and could cause link failures if jump vectors overflow their estimated address range due to linker relaxation. The historic behavior can be restored with the new assembler option -mlegacy-minimize-relocs-behavior.
  • Fix incorrect exception-handling information in assembler due to linker relaxation.
  • Fix internal error in linker due to output sections declared in linker script without any input sections.
  • Fix %a translation for formatted output functions.
  • Fix buffer overrun in formatted output functions.

Other Changes

  • The minimize relocations pass in the assembler is now disabled by default. It can be reenabled by the command-line option -mminimize -relocs.

Known issues

  • None

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.28
GCC 6.3.0
musl 1.1.16
newlib 2.5.0
GDB 8.0
QEMU 2.5.0
gold 2.30
smallClib Internal
Python 2.7.16

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x64 (.tar.gz) [118M] md5: cbfc12f1d15c532eee55d4a18711604a
sha256: e7ea63e8071ae7cd6d53f047d93f4288c6f4b00a36242c60b8d7b5863c566344
Windows 64 (.tar.gz) [94M] md5: 0c095293745f6bb4521103c107a1db9f
sha256: 34d000a74765d71d7a3d7acb6519565d060c67d5d462cc20f0cc519781710217
Linux x86 (.tar.gz) [121M] md5: ae869d416e653569cdf0da926c89bba9
sha256: 92fd06ef34ca2e798abeb853c35347518deeaf8893191bcf6a4254b128731eff
Windows x86 (.tar.gz) [91M] md5: d981aee964624c1f8a57352ba1064da4
sha256: 879089b1969fe53dc04b030813683b40c5ad61fc9aee7e8e21df979b3ee6bb37
MUSL/Linux Toolchain
Linux x64 (.tar.gz) [129M] md5: dad69f7ffb39d45b75d9f7948fdda026
sha256: 390a4c04136ae7890bcb74f51ed8c1c55a6a3f812d4ec2c7b77aff78f4718891
Windows 64 (.tar.gz) [109M] md5: bf34c08081787448c0eeb6440685883a
sha256: 0bcb531710e50ddc860980dcdd2bf3f0fee3fb52a7eb9384b8e22d59dea21234
Linux x86 (.tar.gz) [130M] md5: 333203e4847504131ccba0a705084ff4
sha256: e00d7de14040671ac62f47fb7faccb64eccbc0f420fe050e939812a05788a2d2
Windows x86 (.tar.gz) [106M] md5: 83cc14af130f9eb941074fdc22300d7b
sha256: cb55fb6733d194f4c62beaffa2f7010fe8556e1bcfe0d462de35a21bf0e61150

Source Components

Component Size Checksum
binutils-2021.07-01.src.tar.gz [51M] md5: 490a29bd604af80b7465a58121682947
sha256: 629fce274ab436870b678211134cf6ea25e9b1ac10244c041d260039ef9c0ff7
gdb-2021.07-01.src.tar.gz [51M] md5: 8b34265b92a25b05aa521dc482f1b995
sha256: 1aa1715ce14ea0946e2299c082f9795565b9535a42ea2874d272d4a9f4617e13
gold-2021.07-01.src.tar.gz [52M] md5: de69057cebd27d5806cce5d9746075f6
sha256: c867f30946072623f85dc848f940bf8451ea3c3fad83c3ee92b707282329c8c4
newlib-2021.07-01.src.tar.gz [19M] md5: 850fee1d032b31e9cdbf769fb8562196
sha256: 70d5a4e7d0756261449a979ec47e5f9f00c3f676e2df02545328bb0412870bcd
gcc-2021.07-01.src.tar.gz [112M] md5: af3c728d5493e1d55b93af68a03433f8
sha256: 615b84c995c890816bf3e10a05dd441e16e4cd3e4d4d42bea01044b99ebef449
smallclib-2021.07-01.src.tar.gz [1M] md5: 70f972f165a870d1019fcdff5416b3e3
sha256: 60cc8d806dee2fec3a6be4d4dd23a8ba79cd2b01472f3e90f3f17b78b0b490df
qemu-2021.07-01.src.tar.gz [11M] md5: c8be0b015ff0b244de6f77bfaa9fa5d3
sha256: 6527e08ff71ea2062a446c816c078e9cffdd003890c313324caa922ed3db8e42
musl-2021.07-01.src.tar.gz [1M] md5: 09691dbd52a909451769c81e521f4319
sha256: 3b91340d7b71ae8b5251eb5001adaa6efc9cba2b810347478dde96b168664363
packages-2021.07-01.src.tar.gz [189M] md5: 868a3c757312d89fb8b27c9027031915
sha256: 24d489b586bc2edc85eee4b35924eb7cc0d1d3d0cf5af006870aff07d53afb4d
python-2021.07-01.src.tar.gz [16M] md5: 26bc70e2a09ba21e04a1137e4ca68579
sha256: fb1fec7a6769e7d95c88a2be7235a9ce4b3514ff29bb98b668bdc916125444a8

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.1 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncurses
  • zlib - zlib-libpng license
  • PSFL v2 - python

To refer to the complete license text for any component, check the corresponding sources above.

Disclaimer of Warranties and Limitation of Liability

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTA...

Read more

nanoMIPS-2021.04-02

02 May 12:30
818736e
Compare
Choose a tag to compare

MTK Logo    nanoMIPS GNU toolchain v2021.04-02

        Published on May 02, 2021

Introduction

The nanoMIPS Toolchain includes example code, source code, and documentation to facilitate development of bare metal applications on nanoMIPS simulators and development boards. These toolchains provide compilers, linkers, libraries and utilities for building applications to run on nanoMIPS cores.

Component Description

  • GCC Bare Metal Toolchain
       This is a software engineer's cross-development system for nanoMIPS processors, intended for statically linked embedded applications running on bare metal CPUs or light-weight operating systems.
  • GCC Linux (MUSL) Toolchain
       For compiling Linux applications for Linux running on nanoMIPS cores.

Release Notes

New Features

  • Add option -flto-preserve-object-names to re-map temporary LTO object names back to original object names at link time. When this option is used, original object names can be matched directly in linker scripts. The linker map file output shows original object names as if generated without LTO.

  • Improve use of 'INS' instruction in situations where bitfield manipulation is expressed in source code using shifts and masks. This should yield improvements in code size and execution speed.

Bug Fixes

  • None.

Other Changes

  • None.

Known issues

  • None

Documentation

Note These are external links to docunments by MIPS Tech/Wave Computing.

Component Versions

Component Based on upstream version
binutils 2.28
GCC 6.3.0
musl 1.1.16
newlib 2.5.0
GDB 8.0
QEMU 2.5.0
gold 2.30
smallClib Internal
Python 2.7.16

Downloads

Prebuilt Binaries

Variant Size Checksum
Bare Metal Toolchain
Linux x86 (.tar.gz) [120M] md5: c433d6d6fd706a676704015782b96a34
sha256: 16db411b19f3723575363f47c8d86b85041527c18208aa30c98beb4b0b99a097
Windows x86 (.tar.gz) [90M] md5: 7272a91c1a2440151e02d8f89a77a99d
sha256: 13234e85084e9efc9ad877e49aebaac20c7c2376e9c07304179c88e17058b6c7
Linux x64 (.tar.gz) [118M] md5: a7da08cafbf38356ff63d8902bda4c47
sha256: 491fd7070b64db6b88a40e6df6ee301eb44709cc5b9b5d1ad2168da3d82ae520
Windows 64 (.tar.gz) [93M] md5: 194bbca8f1cadb3c009cd46ca9e646f5
sha256: 4b0b2f5a767da9023b5df41a262a762c3c9532354aef051f599d8af6861085c5
MUSL/Linux Toolchain
Linux x86 (.tar.gz) [130M] md5: 079256f03d1f78097b4110017484996e
sha256: 2d1462a70df614766c24f666871cb050614e07c50a38502783868a9d8d32e46a
Windows x86 (.tar.gz) [106M] md5: 0df373185874a2d95ec89b059766034a
sha256: d2d65b5c9da3de95caa1cd3d007357186335ff74128f39342812b931e7fce7b2
Linux x64 (.tar.gz) [129M] md5: a6763a27c133b17b21ff60a343e6afd8
sha256: d32747bbaf5ed667afd34f9d54a08a0260b529e82c34ce4fba20390bdcd76610
Windows 64 (.tar.gz) [109M] md5: 68cc3b826400a4aadd1a4b3bc6295099
sha256: ddfd157c3a6b99ca702616487e0542deae4a356f7758f1ee61290f034dcb8c8c

Source Components

Component Size Checksum
binutils-2021.04-02.src.tar.gz [51M] md5: 68124df44b640c5ea9d19157ce401642
sha256: 530672c1e5081b4027c5baac65e40c6cc64ee6da24aa2bb8b178ede0ba7f0b42
gdb-2021.04-02.src.tar.gz [51M] md5: e753ced58166410ccaef19b0f5d0090f
sha256: c52b9e2d133a4bef01da6ef233de685598a0c979430eb65907489bd71d54c5cb
gold-2021.04-02.src.tar.gz [52M] md5: d52184b77bb73d4470ca05a10d94d552
sha256: 2e16c5f6200aaafbf799c1ea6bb5a7afbea88ecd60ecc4e2bdfc031d376a16f7
newlib-2021.04-02.src.tar.gz [19M] md5: 8df4ff4f734c7a01a554cee5be9486d1
sha256: 3aefca89b7d8c44cd7227afcb64d452ec3a1724a08d477caf6a3d7fb43e16ee5
gcc-2021.04-02.src.tar.gz [112M] md5: d0a0708e608f102417263ba872d817dd
sha256: fa3ed019bcad037f3ed7a70f0226fcbc1441b7287fdb8646e939a433a23749da
smallclib-2021.04-02.src.tar.gz [1M] md5: 5d522e398b4b1d6a5a51dfb57aca2495
sha256: 4e6fd3277cae189d223fa188433cfe1aba8612df39466158ca0aa58da7d44ef3
qemu-2021.04-02.src.tar.gz [11M] md5: a10f5164fd59bcb2f5afb5965c9bfb93
sha256: b0b733f5403e608ea2fcfe9b6dc1de8542f2065f3105cf9faf2fa85f783b7092
musl-2021.04-02.src.tar.gz [1M] md5: 8f3384e434492c0e3dfa76c6b55bec6e
sha256: e609148e052c1f6f559f6f32cce88b2d3fd7a3a763a25b20ef17a9d2166793d7
packages-2021.04-02.src.tar.gz [189M] md5: 12b34bc4cd4489409fad10d46da776f4
sha256: c80e2239cb586de0e47894a92ad47c73f07d32548dd27ecbd25206e08c965f39
python-2021.04-02.src.tar.gz [16M] md5: 75c71facc3c9f9c5a51f1e0da11d6762
sha256: 7389c954cab2d3d460caf917af19550d89439416f592cd4b2ac2c798aaee7dba

Bug Reporting

Report bugs for MediaTek's nanoMIPS GNU toolchain, here.

For reporting issues that are not target-specific, please see instructions provided within the source files of the concerned component.

License Agreements

License Categories

The components included in this toolchain fall under multiple license agreements:

  • GPL v2 - QEMU, Linux
  • GPL v3.1 - GNU toolchain, gdb, gmp, mpfr, libiconv
  • LGPL v3 - mpc
  • MIT / BSD style Licenses - Newlib, smallclib, tinyclib, libgloss/MIPS HAL, musl-libc, libffi, expat, ncurses
  • zlib - zlib-libpng license
  • PSFL v2 - python

To refer to the complete license text for any component, check the corresponding sources above.

Disclaimer of Warranties and Limitation of Liability

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

TO THE FULLEST EXTENT ALLOWED AND PERMITTED BY APPLICABLE LAWS AND REGULATIONS, MEDIATEK SHALL NOT, UNDER ANY CIRCUMSTANCES, BE LIABLE TO YOU OR ANY THIRD PARTY THROUGH YOU FOR PERSONAL INJURY OR ANY CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, PUNITIVE OR SPECIAL DAMAGES WHATSOEVER, INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, LOSS OF DATA, BUSINESS INTERRUPTION OR ANY OTHER COMMERCIAL DAMAGES OR LOSSES, ARISING OUT OF OR IN RELATION TO THIS AGREEMENT, YOUR USE OF THE Software Package and DOCUMENTATION, OR YOUR DEVELOPMENT OF APPLICATIONS, WHETHER BASED ON BREACH OF CONTRACT, BREACH OF WAR...

Read more