3.17.29 Параметры MSP430
Эти параметры определены для MSP430:
-masm-hex-
Принудительно использовать шестнадцатеричные константы в выходных файлах ассемблера. Обычно такие константы являются знаковыми десятичными числами, но этот параметр доступен для целей тестирования и/или эстетики.
-mmcu=-
Выбор МК для целевого устройства. Используется для создания символа препроцессора C, основанного на имени МК, преобразованного в верхний регистр и снабженного префиксом и постфиксом ‘__’. В свою очередь, это используется файлом заголовка msp430.h для выбора файла дополнительного заголовка, специфичного для МК.
Параметр также устанавливает используемую ISA. Если имя МК известно как поддерживающее только ISA 430, то она выбирается, в противном случае выбирается ISA 430X. Также может быть использовано общее имя МК ‘msp430’ для выбора ISA 430. Аналогично, общее имя ‘msp430x’ выбирает ISA 430X.
Кроме того, добавляется скрипт линковщика, специфичный для МК, в командную строку линковщика. Имя скрипта — это имя МК с добавленным расширением .ld. Таким образом, указание -mmcu=xxx в командной строке определяет символ препроцессора C
__XXX__и заставляет линковщик искать скрипт с именем xxx.ld.Этот параметр также передаётся ассемблеру.
-mcpu=-
Указывает используемую ISA. Допустимые значения — ‘msp430’, ‘msp430x’ и ‘msp430xv2’. Этот параметр устарел. Для выбора ISA следует использовать параметр -mmcu=.
-msim-
Связь с библиотеками выполнения симулятора и скриптом линковщика. Переопределяет любые скрипты, которые были бы выбраны параметром -mmcu=.
-mlarge-
Использовать адресацию с большим размером модели (указатели 20-битные,
size_t32-битные). -msmall-
Использовать адресацию с малым размером модели (указатели 16-битные,
size_t16-битные). -mrelax-
Этот параметр передаётся ассемблеру и линковщику, и позволяет линковщику выполнять определённые оптимизации, которые невозможно сделать до окончательной линковки.
mhwmult=-
Описывает тип аппаратного умножения, поддерживаемого целевым устройством. Допустимые значения: ‘none’ — нет аппаратного умножения, ‘16bit’ — исходное 16-битное умножение, поддерживаемое ранними МК, ‘32bit’ — 16/32-битное умножение, поддерживаемое более поздними МК, и ‘f5series’ — 16/32-битное умножение, поддерживаемое МК серии F5. Также может быть задано значение ‘auto’. Это сообщает GCC, чтобы он выводил поддержку аппаратного умножения на основе имени МК, предоставленного параметром -mmcu. Если параметр -mmcu не указан, предполагается поддержка аппаратного умножения ‘32bit’. Значение ‘auto’ является значением по умолчанию.
Аппаратные умножения обычно выполняются путём вызова библиотечной функции. Это экономит место в генерируемом коде. Однако при компиляции с -O3 или выше аппаратный умножитель вызывается встроенным образом. Это создаёт больший, но более быстрый код.
Библиотечные функции аппаратного умножения отключают прерывания во время работы и восстанавливают предыдущее состояние прерывания по завершении. Это позволяет безопасно использовать их как внутри обработчиков прерываний, так и в обычном коде.
-minrt-
Включить использование минимальной среды выполнения — без статических инициализаторов или конструкторов. Предназначено для устройств с ограниченным объёмом памяти. Компилятор включает специальные символы в некоторых объектах, которые сообщают линковщику и среде выполнения, какие фрагменты кода необходимы.
Далее: Параметры NDS32, Предыдущее: Параметры Moxie, Вверх: Параметры Подмодели [Оглавление][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-5.5.0/gcc/MSP430-Options.html