Spec-Zone.ru › GCC 7

3.18.24 MeP Параметры

-mabsdiff

Включает инструкцию abs, которая вычисляет абсолютное разность между двумя регистрами.

-mall-opts

Включает все необязательные инструкции — среднее, умножение, деление, операции над битами, ведущий ноль, абсолютное разность, min/max, обрезка и насыщение.

-maverage

Включает инструкцию ave, которая вычисляет среднее двух регистров.

-mbased=n

Переменные размером в n байт или меньше по умолчанию размещаются в разделе .based. Базовые переменные используют регистр $tp в качестве базового регистра, а для раздела .based существует ограничение в 128 байт.

-mbitops

Включает инструкции для работы с битами — проверка бита (btstm), установка (bsetm), очистка (bclrm), инверсия (bnotm) и проверка и установка (tas).

-mc=name

Выбирает раздел, в котором размещаются константы. name может принимать значения ‘tiny’, ‘near’ или ‘far’.

-mclip

Включает инструкцию clip. Обратите внимание, что -mclip бесполезен, если вы не указали также -mminmax.

-mconfig=name

Выбирает одну из встроенных конфигураций ядра. Каждый чип MeP содержит один или несколько модулей; каждый модуль имеет ядро процессора и различные сопроцессоры, необязательные инструкции и периферийные устройства. Инструмент MeP-Integrator, не являющийся частью GCC, предоставляет эти конфигурации с помощью этого параметра; использование этого параметра равносильно использованию всех соответствующих параметров командной строки. По умолчанию используется конфигурация ‘default’.

-mcop

Включает инструкции сопроцессора. По умолчанию используется 32-битный сопроцессор. Обратите внимание, что сопроцессор обычно включается с помощью параметра -mconfig=.

-mcop32

Включает инструкции 32-битного сопроцессора.

-mcop64

Включает инструкции 64-битного сопроцессора.

-mivc2

Включает планирование IVC2. IVC2 — это 64-битный сопроцессор VLIW.

-mdc

Размещает константные переменные в разделе .near.

-mdiv

Включает инструкции div и divu.

-meb

Генерирует код в формате big-endian.

-mel

Генерирует код в формате little-endian.

-mio-volatile

Указывает компилятору, что любая переменная, помеченная атрибутом io, должна рассматриваться как volatile.

-ml

По умолчанию переменные присваиваются разделу .far.

-mleadz

Включает инструкцию leadz (ведущий ноль).

-mm

По умолчанию переменные присваиваются разделу .near.

-mminmax

Включает инструкции min и max.

-mmult

Включает инструкции умножения и умножения-суммирования.

-mno-opts

Отключает все необязательные инструкции, включённые параметром -mall-opts.

-mrepeat

Включает инструкции repeat и erepeat, используемые для циклов с низкой загрузкой.

-ms

По умолчанию все переменные помещаются в раздел .tiny. Обратите внимание, что этот раздел ограничен 65536 байтами. Доступ к этим переменным осуществляется с использованием базового регистра %gp.

-msatur

Включает инструкции насыщения. Обратите внимание, что в настоящее время компилятор их не генерирует сам, но этот параметр включён для совместимости с другими инструментами, такими как as.

-msdram

Подключает исполняемый модуль, основанный на SDRAM, вместо стандартного модуля, основанного на ROM.

-msim

Подключает библиотеки исполнения симулятора.

-msimnovec

Подключает библиотеки исполнения симулятора, исключая встроенную поддержку векторов и таблиц сброса и исключений.

-mtf

По умолчанию все функции помещаются в раздел .far. Без этого параметра функции по умолчанию помещаются в раздел .near.

-mtiny=n

Переменные размером n байт или меньше размещаются в разделе .tiny. Эти переменные используют базовый регистр $gp. По умолчанию для этого параметра значение 4, но обратите внимание, что раздел .tiny имеет ограничение в 65536 байт.

Далее: Параметры MicroBlaze, Предыдущее: Параметры MCore, Вверх: Параметры подмоделей [Оглавление][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.5.0/gcc/MeP-Options.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API