3.17.13 Параметры 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; хотя это может помочь уменьшить таблицу глобальных смещений, она меняет 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-4.9.4/gcc/FRV-Options.html