3.19.17 FRV Options ¶
-mgpr-32-
Использовать только первые 32 универсальных регистра.
-mgpr-64-
Использовать все 64 универсальных регистра.
-mfpr-32-
Использовать только первые 32 регистра с плавающей точкой.
-mfpr-64-
Использовать все 64 регистра с плавающей точкой.
-mhard-float-
Использовать аппаратные инструкции для операций с плавающей точкой.
-msoft-float-
Использовать библиотечные функции для операций с плавающей точкой.
-malloc-cc-
Динамически выделять регистры кода условия.
-mfixed-cc-
Не пытаться динамически выделять регистры кода условия, использовать только
icc0иfcc0. -mdword-
Изменить ABI для использования инструкций с двойными словами.
-mno-dword-
Не использовать инструкции с двойными словами.
-mdouble-
Использовать инструкции с плавающей точкой двойной точности.
-mno-double-
Не использовать инструкции с плавающей точкой двойной точности.
-mmedia-
Использовать инструкции для обработки медиаданных.
-mno-media-
Не использовать инструкции для обработки медиаданных.
-mmuladd-
Использовать инструкции умножения и сложения/вычитания.
-mno-muladd-
Не использовать инструкции умножения и сложения/вычитания.
-mfdpic-
Выбрать ABI FDPIC, который использует описатели функций для представления указателей на функции. Без каких-либо опций, связанных с PIC/PIE, это подразумевает -fPIE. С -fpic или -fpie предполагается, что записи GOT и небольшие данные находятся в пределах 12-битного диапазона от базового адреса GOT; с -fPIC или -fPIE смещения GOT вычисляются с 32 битами. С целевым параметром «bfin-elf» этот параметр подразумевает -msim.
-minline-plt-
Включить инлайнинг записей PLT в вызовах функций для функций, которые не известны как локальные. Без -mfdpic он не оказывает никакого эффекта. Он включён по умолчанию, если оптимизируется скорость и компилируется для динамически подключаемых библиотек (т.е., -fPIC или -fpic), или когда в командной строке присутствует опция оптимизации, такая как -O3 или выше.
-mTLS-
Предполагать большой сегмент TLS при генерации кода для потоков.
-mtls-
Не предполагать большой сегмент TLS при генерации кода для потоков.
-mgprel-ro-
Включить использование перемещений
GPRELв ABI FDPIC для данных, которые, как известно, находятся в секциях только для чтения. По умолчанию включено, за исключением -fpic или -fpie: хотя это может помочь уменьшить таблицу глобальных смещений, это обменивает 1 инструкцию на 4. С -fPIC или -fPIE это обменивает 3 инструкции на 4, одна из которых может быть общей для нескольких символов, и это избегает необходимости записи в GOT для указанного символа, поэтому это скорее всего принесёт выгоду. Если нет, -mno-gprel-ro можно использовать для отключения этой опции. -multilib-library-pic-
Подключаться с библиотеками pic (не FD). Подразумевается -mlibrary-pic, а также -fPIC и -fpic без -mfdpic. Вам никогда не нужно использовать его явно.
-mlinked-fp-
Следовать требованию EABI о всегда создании указателя на кадр, когда выделяется кадр стека. Этот параметр включен по умолчанию и может быть отключен с помощью -mno-linked-fp.
-mlong-calls-
Использовать косвенную адресацию для вызова функций за пределами текущей единицы компиляции. Это позволяет разместить функции в любом месте в 32-битной адресном пространстве.
-malign-labels-
Пытаться выровнять метки до 8-байтовой границы, вставляя NOP в предыдущий пакет. Этот параметр имеет эффект только при включенной упаковке VLIW. Он не создаёт новых пакетов, а только добавляет NOP в существующие.
-mlibrary-pic-
Сгенерировать позиционно-независимый код EABI.
-macc-4-
Использовать только первые четыре регистра аккумуляторов медиа.
-macc-8-
Использовать все восемь регистров аккумуляторов медиа.
-mpack-
Упаковать инструкции VLIW.
-mno-pack-
Не упаковывать инструкции VLIW.
-mno-eflags-
Не помечать переключения ABI в e_flags.
-mcond-move-
Включить использование инструкций условного перемещения (по умолчанию).
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-cond-move-
Отключить использование инструкций условного перемещения.
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mscc-
Включить использование инструкций условной установки (по умолчанию).
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-scc-
Отключить использование инструкций условной установки.
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mcond-exec-
Включить использование условного выполнения (по умолчанию).
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-cond-exec-
Отключить использование условного выполнения.
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mvliw-branch-
Выполнить проход для упаковки ветвлений в инструкции VLIW (по умолчанию).
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-vliw-branch-
Не выполнять проход для упаковки ветвлений в инструкции VLIW.
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mmulti-cond-exec-
Включить оптимизацию
&&и||в условном выполнении (по умолчанию).Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-multi-cond-exec-
Отключить оптимизацию
&&и||в условном выполнении.Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mnested-cond-exec-
Включить оптимизации вложенного условного выполнения (по умолчанию).
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-mno-nested-cond-exec-
Отключить оптимизации вложенного условного выполнения.
Этот параметр в основном используется для отладки компилятора и, вероятно, будет удален в будущей версии.
-moptimize-membar-
Этот параметр удаляет из сгенерированного кода лишние инструкции
membar. Он включен по умолчанию. -mno-optimize-membar-
Этот параметр отключает автоматическое удаление лишних инструкций
membarиз сгенерированного кода. -mtomcat-stats-
Вызывает gas для вывода статистики tomcat.
-mcpu=cpu-
Выбор типа процессора, для которого генерируется код. Возможные значения: ‘frv’, ‘fr550’, ‘tomcat’, ‘fr500’, ‘fr450’, ‘fr405’, ‘fr400’, ‘fr300’ и ‘simple’.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.5.0/gcc/FRV-Options.html