3.18.18 IA-64 Параметры
Это параметры ‘-m’, определённые для архитектуры Intel IA-64.
-mbig-endian-
Генерировать код для целевой системы с порядком байтов big-endian. Это значение по умолчанию для HP-UX.
-mlittle-endian-
Генерировать код для целевой системы с порядком байтов little-endian. Это значение по умолчанию для AIX5 и GNU/Linux.
-mgnu-as-mno-gnu-as-
Генерировать (или нет) код для ассемблера GNU. Это значение по умолчанию.
-mgnu-ld-mno-gnu-ld-
Генерировать (или нет) код для компоновщика GNU. Это значение по умолчанию.
-mno-pic-
Генерировать код, не использующий регистр глобального указателя. Результатом является не независимый от позиции код, и нарушается IA-64 ABI.
-mvolatile-asm-stop-mno-volatile-asm-stop-
Генерировать (или нет) стоп-бит непосредственно перед и после операторов volatile asm.
-mregister-names-mno-register-names-
Генерировать (или нет) имена регистров ‘in’, ‘loc’ и ‘out’ для стековых регистров. Это может сделать вывод ассемблера более читабельным.
-mno-sdata-msdata-
Отключить (или включить) оптимизации, использующие небольшой раздел данных. Это может быть полезно для решения проблем с оптимизатором.
-mconstant-gp-
Генерировать код, использующий одно постоянное значение глобального указателя. Это полезно при компиляции кода ядра.
-mauto-pic-
Генерировать код, способный к самоперемещению. Это подразумевает -mconstant-gp. Это полезно при компиляции кода прошивки.
-minline-float-divide-min-latency-
Генерировать код для встроенных делений с плавающей точкой, используя алгоритм минимальной задержки.
-minline-float-divide-max-throughput-
Генерировать код для встроенных делений с плавающей точкой, используя алгоритм максимальной пропускной способности.
-mno-inline-float-divide-
Не генерировать встроенный код для делений с плавающей точкой.
-minline-int-divide-min-latency-
Генерировать код для встроенных делений целых чисел, используя алгоритм минимальной задержки.
-minline-int-divide-max-throughput-
Генерировать код для встроенных делений целых чисел, используя алгоритм максимальной пропускной способности.
-mno-inline-int-divide-
Не генерировать встроенный код для делений целых чисел.
-minline-sqrt-min-latency-
Генерировать код для встроенных квадратных корней, используя алгоритм минимальной задержки.
-minline-sqrt-max-throughput-
Генерировать код для встроенных квадратных корней, используя алгоритм максимальной пропускной способности.
-mno-inline-sqrt-
Не генерировать встроенный код для
sqrt. -mfused-madd-mno-fused-madd-
Генерировать (не генерировать) код, использующий инструкции fused multiply/add или multiply/subtract. Значение по умолчанию - использовать эти инструкции.
-mno-dwarf2-asm-mdwarf2-asm-
Не генерировать (или генерировать) код ассемблера для отладочной информации о номерах строк DWARF. Это может быть полезно при использовании не ассемблера GNU.
-mearly-stop-bits-mno-early-stop-bits-
Разрешить размещение стоп-битов раньше, чем непосредственно перед инструкцией, вызвавшей стоп-бит. Это может улучшить планирование инструкций, но не всегда.
-mfixed-range=register-range-
Генерировать код, обрабатывая заданный диапазон регистров как фиксированные регистры. Фиксированный регистр — это регистр, который планировщик регистров не может использовать. Это полезно при компиляции кода ядра. Диапазон регистров задается как два регистра, разделенных дефисом. Несколько диапазонов регистров могут быть указаны, разделенных запятыми.
-mtls-size=tls-size-
Указать разрядность офсетов TLS для немедленного значения. Допустимые значения 14, 22 и 64.
-mtune=cpu-type-
Настроить планирование инструкций для конкретного процессора. Допустимые значения ‘itanium’, ‘itanium1’, ‘merced’, ‘itanium2’ и ‘mckinley’.
-milp32-mlp64-
Генерировать код для 32-битной или 64-битной среды. 32-битная среда устанавливает int, long и указатель на 32 бита. 64-битная среда устанавливает int на 32 бита, а long и указатель на 64 бита. Это флаги, специфичные для HP-UX.
-mno-sched-br-data-spec-msched-br-data-spec-
(Отключать/Включать) спекулятивное планирование данных перед загрузкой. Это приводит к генерации
ld.aинструкций и соответствующих проверочных инструкций (ld.c/chk.a). Значение по умолчанию — выключено. -msched-ar-data-spec-mno-sched-ar-data-spec-
(Включать/Отключать) спекулятивное планирование данных после загрузки. Это приводит к генерации
ld.aинструкций и соответствующих проверочных инструкций (ld.c/chk.a). Значение по умолчанию — включено. -mno-sched-control-spec-msched-control-spec-
(Отключать/Включать) спекулятивное планирование управления. Эта функция доступна только во время планирования региона (т. е. до загрузки). Это приводит к генерации
ld.sинструкций и соответствующих проверочных инструкцийchk.s. Значение по умолчанию — выключено. -msched-br-in-data-spec-mno-sched-br-in-data-spec-
(Включать/Отключать) спекулятивное планирование инструкций, зависящих от спекулятивных загрузок данных перед загрузкой. Эффективно только при включенном -msched-br-data-spec. Значение по умолчанию — включено.
-msched-ar-in-data-spec-mno-sched-ar-in-data-spec-
(Включать/Отключать) спекулятивное планирование инструкций, зависящих от спекулятивных загрузок данных после загрузки. Эффективно только при включенном -msched-ar-data-spec. Значение по умолчанию — включено.
-msched-in-control-spec-mno-sched-in-control-spec-
(Включать/Отключать) спекулятивное планирование инструкций, зависящих от спекулятивных загрузок управления. Эффективно только при включенном -msched-control-spec. Значение по умолчанию — включено.
-mno-sched-prefer-non-data-spec-insns-msched-prefer-non-data-spec-insns-
Если включено, спекулятивные инструкции с данными выбираются для планирования только в том случае, если в данный момент других вариантов нет. Это делает использование спекуляции данных более консервативным. Значение по умолчанию — выключено.
-mno-sched-prefer-non-control-spec-insns-msched-prefer-non-control-spec-insns-
Если включено, спекулятивные инструкции с управлением выбираются для планирования только в том случае, если в данный момент других вариантов нет. Это делает использование спекуляции управления более консервативным. Значение по умолчанию — выключено.
-mno-sched-count-spec-in-critical-path-msched-count-spec-in-critical-path-
Если включено, спекулятивные зависимости учитываются при вычислении приоритетов инструкций. Это делает использование спекуляции немного более консервативным. Значение по умолчанию — выключено.
-msched-spec-ldc-
Использовать простую проверку спекуляции данных. Этот параметр включен по умолчанию.
-msched-control-spec-ldc-
Использовать простую проверку спекуляции управления. Этот параметр включен по умолчанию.
-msched-stop-bits-after-every-cycle-
Размещать стоп-бит после каждого такта при планировании. Этот параметр включен по умолчанию.
-msched-fp-mem-deps-zero-cost-
Предполагать, что операции записи и чтения с плавающей точкой вряд ли вызовут конфликт при размещении в одной группе инструкций. Этот параметр выключен по умолчанию.
-msel-sched-dont-check-control-spec-
Генерировать проверки спекуляции управления в выборочном планировании. Этот флаг выключен по умолчанию.
-msched-max-memory-insns=max-insns-
Предел количества инструкций памяти на группу инструкций, который имеет более низкий приоритет для последующих инструкций памяти, пытающихся запланировать в той же группе инструкций. Часто полезно для предотвращения конфликтов с банками кэша. Значение по умолчанию — 1.
-msched-max-memory-insns-hard-limit-
Делает лимит, заданный параметром msched-max-memory-insns, жёстким лимитом, не позволяя больше этого числа в группе инструкций. В противном случае предел является «мягким», что означает, что операции, не связанные с памятью, имеют приоритет при достижении предела, но операции с памятью всё ещё могут планироваться.
Далее: Параметры LM32, Предыдущий: Параметры HPPA, Вверх: Параметры подмодели [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-8.5.0/gcc/IA-64-Options.html