GCC ARM Embedded

Скріншот програми:
GCC ARM Embedded
Дані програми:
Версія: 7-2018-q2 оновлений
Дата завантаження: 17 Aug 18
Розробник: GCC ARM Embedded Developers
Ліцензія: Безкоштовно
Популярність: 67

Rating: 2.5/5 (Total Votes: 2)

GCC ARM Embedded - це програмне забезпечення з відкритим кодом та вільно розподіленим програмним забезпеченням, яке містить попередньо побудований набір інструментів GNU для процесорів ARM Cortex-R та Cortex-M. Проект спрямований на залучення інструментів GNU для вбудованих процесорів ARM, допомагаючи розробникам виконувати різні завдання з компіляції.


Підтримує всі важливі процесори Cortex ARM

Програмне забезпечення було створено з нуля для підтримки всіх важливих процесорів Cortex ARM, включаючи Cortex-R4, Cortex-R5, Cortex-R7, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M0 + і Cortex-M0.

За підтримки співробітників ARM, програмне забезпечення GCC ARM Embedded є частиною постійного зобов'язання щодо покращення та підтримки підтримки колекції GNU Compiler Collection (GCC) для архітектури ARM.


Початок роботи з GCC ARM Embedded

Щоб використовувати програмне забезпечення GCC ARM Embedded на комп'ютері GNU / Linux, потрібно завантажити бінарний пакет, який містить усі попередньо встановлені бінарні файли, необхідні для початку роботи. Збережіть архів десь на вашому комп'ютері, бажано в домашній директорії, скористайтеся засобом архівного менеджера, щоб витягнути його вміст.

Потім відкрийте додаток терміналу та перейдіть до місця, де ви витягли архівний файл (наприклад, cd / home / softoware / gcc-arm-none-eabi-4_9-2014q4). Усі бінарні файли розміщені на & lsquo; бенері & rsquo; папка.


Наявність та підтримувані апаратні платформи

GCC ARM Embedded поширюється як двійкові та вихідні архіви, а також репозиторій PPA для останніх версій операційної системи Ubuntu Linux, що підтримує як 32, так і 64-бітні архітектури. Зверніть увагу, що програмне забезпечення також сумісно з операційними системами Mac OS X і Microsoft Windows.

Що нового в цьому випуску:

  • Виправлена ​​регресія ефективності powf / expf / exp2f / logf / log2f
  • Додана підтримка Arm Cortex-M33 без DSP через -mcpu = cortex-m33 + nodsp
  • Додано архівації Multilibs у форматі Armv8-R
  • Виправте вимоги до збирання для підтримки TUI GDB
  • Увімкнено специфікатор формату C99 у форматі newlib
  • Виправлено cmse_nonsecure_caller Внутрішній захист Armv8-M
  • Виправлено помилку в __builtin_arm_set_fpscr вбудованій GCC
  • Помилка LTO https://bugs.launchpad.net/gcc-arm-embedded/+bug/1747966 була виправлена ​​в попередньому випуску. Відомості про випуск оновлено, щоб відобразити зміни.
  • Виправлена ​​проблема з будівництвом cmse.c libgcc без заголовків
  • Виправлена ​​проблема з сумісництвом arm_cmse.h C99

    • Підтримка Armv8-R та Cortex-R52

    Що нового у версії 7-2017-q4:

  • Виправлено для https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69866
  • GDB, створений за допомогою C + + для Mac OS X

Що нового у версії 6.2:

  • Особливості:
  • Усі функції GCC 6, а також останні основні функції:
  • Повна підтримка ARMv8-M, включаючи атоміки та розширення безпеки
  • Підтримка ARM PURECODE для базових ліній і магістралей ARMv7-M та ARMv8-M
  • Підтримка сумісних процесорів
  • Підтримка Cortex-M23 та Cortex-M33
  • -однаково необов'язкова для пристроїв Cortex-M
  • Підтримка переміщення ОС за допомогою процедур блокування в newlib
  • Розвинена SIMD оптимізована реалізація memchr в newlib
  • Увімкніть параметри налаштування для інсталятора Windows в командному рядку
  • Важливі зміни у випуску 6 оновлення 2:
  • GCC неправильно припускає, що Cortex-r [578] має 64-бітний однокопійний атомний LDRD: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80082
  • Псевдо-оп LDR створює MOVS https://bugs.launchpad.net/gcc-arm-embedded/+bug/1682620
  • Фіксовані вбудовані пристрої для отримання та встановлення FPSCR
  • Бібліотеки імпорту SG, які були створені як виконувані, тепер виправлено для переміщення
  • Увімкніть параметри налаштування для інсталятора Windows в командному рядку
  • Підтримка PURECODE для ARMv8-M.Baseline
  • Розвинена SIMD оптимізована реалізація memchr в newlib

Що нового в версії 5.4:

  • Нові функції:
  • Підтримка бета-версії ARMv8-M Baseline і Mainline:
  • ARMv8-M підтримка базових атомів
  • Підтримка ARM PureCode
  • Типограф-візерунок з довгим відділенням
  • Важкі помилки, виправлені в 5 версії 3 оновлення:
  • Вилучені спеціальні регістри MSP_S та PSP_S MRS / MSR
  • Визначення версії фіксованого пакунка в покоління шпону
  • Виправлена ​​документація про newlib-nano у файлі release.txt

Що нового в версії 5.3:

  • Особливості
  • Усі функції GCC 5, а також останні основні функції:
  • Підтримка Cortex-R8
  • Налаштування продуктивності Cortex-M7
  • Оптимізація ручних операцій з маленьким endian та великими завантаженнями endian
  • вдосконалений стрибок, видаливши необхідність для швидкого перемикання
  • ARMv8-M Базова лінія та основна альфа-підтримка:
  • атоми не включені для базової лінії ARMv8-M
  • Підтримка розширень ARMv8-M Alpha
  • Оптимізація бібліотеки Thumb-1:
  • https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
  • Оптимізація CRC:
  • https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html
  • Менший обробник обробки завершує для newlib-nano

Що нового у версії 5.2:

  • Усі функції GCC 5, а також останні основні функції:
  • Налаштування продуктивності Cortex-M7
  • Оптимізація ручних операцій з маленьким endian та великими завантаженнями endian
  • вдосконалений стрибок, видаливши необхідність для швидкого перемикання
  • ARMv8-M Базова лінія та основна альфа-підтримка:
  • атоми не включені для базової лінії ARMv8-M
  • Розширення безпеки ARMv8-M підтримуються лише для зборки та базового з'єднання
  • Оптимізація бібліотеки Thumb-1
  • https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
  • Оптимізація CRC
  • https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html

Що нового в версії 4.9 Оновлення 3:

  • Особливості:
  • Усі функції GCC 4.9, а також останні основні функції
  • Підтримка Cortex-M7
  • Невелика підтримка множення з параметрами:
  • . -mcpu = cortex-m1.small-multiply
  • . -mcpu = cortex-m0.small-multiply
  • . -mcpu = cortex-m0plus.small-multiply
  • Виділений multilib для Cortex-M7
  • - cortex-m7
  • - cortex-m7 / fpu / fpv5-d16
  • - cortex-m7 / fpu / fpv5-sp-d16
  • - cortex-m7 / softfp / fpv5-d16
  • - cortex-m7 / softfp / fpv5-sp-d16
  • Визначте підказки aeabi_memcpy та aeabi_memcpy4 у новому списку.
  • Визначте підказки aeabi_memmove, aeabi_memset та aeabi_memclr у новому списку.
  • Оптимізація бібліотеки Thumb-1.
  • Додаткові оптимізації розміру коду.
  • Додати gdb python build (arm-none-eabi-gdb-py).
  • Файл об'єкта без розділу атрибутів може бути пов'язаний з будь-якими іншими.
  • Параметри -mapcs, -mapcs-frame, -mtpcs-frame і -mtpcs-leaf-frame буде застарілим в gcc 5.0, отже рекомендуємо уникати їх.
  • Важливі помилки, виправлені в версії 4.9 оновлення 3:
  • Виправлення невідповідності специфікатора формату Newlib. https://anwers.launchpad.net/gcc-arm-embedded/+question/269083
  • Виправлення невідповідності макросу Newlib. https://answers.launchpad.net/gcc-arm-embedded/+question/269177
  • Виправлена ​​помилка агрегатора кодування. https://sourceware.org/ml/binutils/2015-08/msg00028.html

Що нового в версії 4.9 Оновлення 2:

  • Особливості:
  • Усі функції GCC 4.9, а також останні основні функції
  • Підтримка Cortex-M7
  • Невелика підтримка множення з параметрами:
  • -mcpu = cortex-m1.small-multiply
  • -mcpu = cortex-m0.small-multiply
  • -mcpu = cortex-m0plus.small-multiply
  • Спеціальний Multilib для Cortex-M7:
  • cortex-m7
  • cortex-m7 / fpu / fpv5-d16
  • cortex-m7 / fpu / fpv5-sp-d16
  • cortex-m7 / softfp / fpv5-d16
  • cortex-m7 / softfp / fpv5-sp-d16
  • Визначте підказки aeabi_memcpy та aeabi_memcpy4 у новому списку.
  • Визначте підказки aeabi_memmove, aeabi_memset та aeabi_memclr у новому списку.
  • Оптимізація бібліотеки Thumb-1.
  • Додаткові оптимізації розміру коду.
  • Додати gdb python build (arm-none-eabi-gdb-py).
  • Файл об'єкта без розділу атрибутів може бути пов'язаний з будь-якими іншими.
  • Параметри -mapcs, -mapcs-frame, -mtpcs-frame і -mtpcs-leaf-frame буде застарілим в gcc 5.0, отже рекомендуємо уникати їх.
  • Важливі помилки, виправлені в версії 4.9 оновлення 2:
  • Оновлений деякий початковий код збірки в Newlib для роботи зі старими цілями https://www.sourceware.org/ml/newlib/2015/msg00386.html
  • Уникайте витрат, пов'язаних із заохоченням розміру розділу https://anwers.launchpad.net/gcc-arm-embedded/+question/262160
  • Локальні змінні регістрів не працюють коректно з вбудованими операційними асистами https://bugs.launchpad.net/gcc-arm-embedded/+bug/1411655

Що нового в версії 4.9 Оновлення 1:

  • Особливості:
  • Усі функції GCC 4.9, а також останні основні функції
  • - підтримка Cortex-M7
  • - Невелика підтримка множення з параметрами:
  • . -mcpu = cortex-m1.small-multiply
  • . -mcpu = cortex-m0.small-multiply
  • . -mcpu = cortex-m0plus.small-multiply
  • Виділений multilib для Cortex-M7
  • - cortex-m7
  • - cortex-m7 / fpu / fpv5-d16
  • - cortex-m7 / fpu / fpv5-sp-d16
  • - cortex-m7 / softfp / fpv5-d16
  • - cortex-m7 / softfp / fpv5-sp-d16
  • Визначте підказки aeabi_memcpy та aeabi_memcpy4 у новому списку.
  • Визначте підказки aeabi_memmove, aeabi_memset та aeabi_memclr у новому списку.
  • Оптимізація бібліотеки Thumb-1.
  • Додаткові оптимізації розміру коду.
  • Додати gdb python build (arm-none-eabi-gdb-py).
  • Файл об'єкта без розділу атрибутів може бути пов'язаний з будь-якими іншими.
  • Параметри -mapcs, -mapcs-frame, -mtpcs-frame і -mtpcs-leaf-frame буде застарілим в gcc 5.0, отже рекомендуємо уникати їх.
  • Важливі помилки, виправлені в версії 4.9 1 випуск:
  • Захист від LD, щоб зберегти розділ нульової довжини у файлі остаточного axf
  • Виправте помилку GDB, викликану відмовою згрупованих розділів налагодження
  • Додайте шаблон Thumb1 insn для легалізації інструкції, яка переміщує комп'ютер до нижнього регістру
  • Оновити GCC для створення Tag_ABI_HardFP_use на останній документ EABI
  • Live high регістр не зберігається в функції prolog з -O
  • - вираз var-info-path-expression не вдається для вкладених структур

Що нового в версії 4.9:

  • Філія до символу, визначеного в сценарії лінкера http: // sourceware .org / bugzilla / show_bug.cgi? id = 15302
  • GDB оновлено до 7.6, щоб краще підтримувати карлик-3 та пізнішої стандартної версії https://answers.launchpad.net/gcc-arm-embedded/+question/234131 https://bugs.launchpad.net/gcc-arm -embedded / + bug / 1248981
  • ICE, коли використовується високий регістр як реєстр бази PIC для цільового об'єкта "великий палець-1"

Що нового в версії 4.7 Оновлення 3:

  • Помилка при складанні додатку з фіксованою точкою за допомогою LTO https : //answers.launchpad.net/gcc-arm-embedded/+question/235582
  • Філія до цілі, вказана символом сценарію лінкера https://sourceware.org/bugzilla/show_bug.cgi?id=15302
  • Хост gdb виявлено в системі Windows на певній точці зупинки https://bugs.launchpad.net/gcc-arm-embedded/+bug/1197615
  • Nano відсутня посилання на _mallopt_r https://mbed.org/forum/mbed/topic/2701/?page=3#comment-22549

Що нового в версії 4.7 Оновлення 2:

  • Оновити doc / *. texi до останнього пакунка texinfo https: // answers.launchpad.net/gcc-arm-embedded/+question/227685
  • Виправте ICE за допомогою опції -mtune https://anwers.launchpad.net/gcc-arm-embedded/+question/227667
  • Виправити --debug параметр у скрипті збірки https://anwers.launchpad.net/gcc-arm-embedded/+question/229127
  • Виправте непотрібний файл lr збереження в функції thumb1 листа

Що нового в версії 4.7 Оновлення 1:

  • Це випуск виправлення виправляє пару проблем, Розділ 4.7:
  • Версія хоста Mac OS має залежність від пітона
  • Відмова LTO при встановленні в каталог з пробілом в назві шляху http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50293
  • Завантажте адреси розділів даних, що містять вирівняні дані, http://sourceware.org/bugzilla/show_bug.cgi?id=15222
  • libnosys не перевіряє переповнення стеків https://anwers.launchpad.net/gcc-arm-embedded/+question/218972
  • libridimon.a не відповідає newlib-nano
  • Також настроюється конфігурація збірки, щоб увімкнути:
  • Основний інтерфейс профілю Cortex-A
  • LTO (оптимізація часу посилання)

Схожі програми

GromJS
GromJS

20 Feb 15

Scala
Scala

17 Feb 15

Ruby
Ruby

17 Aug 18

GCC ARM Embedded

Коментар не знайдено
додати коментар
Включіть картинки!