3.20.17 Параметры FRV
-
-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: хотя он может уменьшить размер таблицы глобальных смещений, за это приходится платить заменой одной инструкции на четыре. При указании -fPIC или -fPIE он заменяет три инструкции на четыре, причём одну из них могут совместно использовать несколько символов; кроме того, отпадает необходимость в записи 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 -
Выводить статистику tomcat с помощью gas.
-
-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-15.3.0/gcc/FRV-Options.html