3.18.18 Параметры IA-64
Это параметры ‘-m’, определённые для архитектуры Intel IA-64.
-mbig-endian-
Генерировать код для целевой системы с порядком байтов «большая эндианность». По умолчанию используется для HP-UX.
-mlittle-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-7.5.0/gcc/IA-64-Options.html