Adafruit M0+ FreeRTOS compilation errors.

I have used the FreeRTOS V10.2.1 download to create a library for the Adafruit M0+ Proto but it generates compiler error when processing a specific assembler insert. I have a fix that replaces the code that doesn't compile with the same function from an earlier version and it does run.

Talking with Richard Barry of FreeRTOS he suggests that the Arduino 1.8.9 toolchain doesn't use the latest Cortex compiler. He assures me that the v10.2.1 release compiles correctly.

I cannot find out which version of the Corte toolchain Arduino 1.8.9 uses furthermore has anyone else had the same problem.

There is no “Arduino 1.8.9 toolchain”. By “Arduino 1.8.9”, they mean the 1.8.9 release of the Arduino IDE. But the Arduino IDE is just a GUI. Toolchains are provided by each hardware core you install and the hardware cores have their own versions (none of which are “1.8.9”). You can install any version of any hardware core with any modern version of the Arduino IDE. So you can now see the term “Arduino 1.8.9 toolchain” is quite silly, especially when referring to the core used by the Adafruit M0+.

For the Adafruit M0+, the relevant version is the version of Adafruit SAMD Boards you have installed. You can check that via Tools > Board > Boards Manager. If you want to know which versions of tools each version of Adafruit SAMD Boards uses, you can check the package index file for Boards Manager that Adafruit provides:
https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
Here’s the entry for the newest version of Adafruit SAMD Boards:

        {
          "name": "Adafruit SAMD Boards",
          "architecture": "samd",
          "version": "1.5.1",
          "category": "Adafruit",
          "url": "https://adafruit.github.io/arduino-board-index/boards/adafruit-samd-1.5.1.tar.bz2",
          "archiveFileName": "adafruit-samd-1.5.1.tar.bz2",
          "checksum": "SHA-256:caaef227963660b9c47bdf407785a02e817be239230796912179e316a6ddf2be",
          "size": "14702608",
          "help": {
            "online": "https://forums.adafruit.com"
          },
          "boards": [
            {
              "name": "Adafruit Feather M0"
            },
            {
              "name": "Adafruit Feather M0 Express"
            },
            {
              "name": "Adafruit Metro M0 Express"
            },
            {
              "name": "Adafruit Circuit Playground Express"
            },
            {
              "name": "Adafruit Gemma M0"
            },
            {
              "name": "Adafruit Trinket M0"
            },
            {
              "name": "Adafruit ItsyBitsy M0"
            },
            {
              "name": "Adafruit pIRkey M0"
            },
            {
              "name": "Adafruit Metro M4"
            },
            {
              "name": "Adafruit Grand Central M4"
            },
            {
              "name": "Adafruit ItsyBitsy M4"
            },
            {
              "name": "Adafruit Grand Central M4"
            },
            {
              "name": "Adafruit Feather M4 Express"
            },
            {
              "name": "Adafruit Hallowing M0"
            },
            {
              "name": "Adafruit NeoTrellis M4"
            },
            {
              "name": "Adafruit PyPortal M4"
            },
            {
              "name": "Adafruit PyBadge M4"
            },
            {
              "name": "Adafruit Metro M4 AirLift"
            }
          ],
          "toolsDependencies": [
            {
              "packager": "arduino",
              "name": "arm-none-eabi-gcc",
              "version": "4.8.3-2014q1"
            },
            {
              "packager": "arduino",
              "name": "bossac",
              "version": "1.7.0"
            },
            {
              "packager": "arduino",
              "name": "bossac",
              "version": "1.8.0-48-gb176eee"
            },
            {
              "packager": "arduino",
              "name": "openocd",
              "version": "0.9.0-arduino"
            },
            {
              "packager": "arduino",
              "name": "CMSIS",
              "version": "4.5.0"
            },
            {
              "packager": "arduino",
              "name": "CMSIS-Atmel",
              "version": "1.2.0"
            }
          ]
        }

You can see it’s using version 4.8.3-2014q1 of arm-none-eabi-gcc.

@mjachapman, do not cross-post. Threads merged.

...and another copy deleted.

DO NOT CROSS-POST, CROSS-POSTING WASTES TIME