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-
Генерировать (или не генерировать) код, использующий инструкции слияния умножения/сложения или умножения/вычитания. По умолчанию используются эти инструкции.
-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-6.5.0/gcc/IA-64-Options.html