3.17.23 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, должна рассматриваться как изменчивая. -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-5.5.0/gcc/MeP-Options.html