2015-01-05 5 views
9

ССАГПЗ Информация о файле говорится в разделе, посвященном x86-64 конкретных флагов, среди прочего :Что такое опция gcc -march по умолчанию?

 There is no `-march=generic' option because `-march' 
     indicates the instruction set the compiler can use, and there 
     is no generic instruction set applicable to all processors. 
     In contrast, `-mtune' indicates the processor (or, in this 
     case, collection of processors) for which the code is 
     optimized. 

Мой вопрос, то есть то, что инструкция (суб) набор делает GCC компиляции для , когда нет -march опция предоставляется? Существует много связанной информации о -march и -mtune в webosphere, но ничего, что я мог найти , который отвечает на этот простой вопрос. Это не может быть march = native, иначе невозможно было бы скомпилировать общие ядра дистрибутива и бинарные пакеты .

+0

Возможный дубликат [Получение текущей архитектуры GCC] (http://stackoverflow.com/questions/11727855/ get-current-gcc-architecture) – mlt

ответ

10

Флаги по умолчанию для gcc могут быть установлены при компиляции самой gcc. Пробег:

gcc -Q --help=target 

, чтобы узнать, что по умолчанию на вашем компьютере. Вероятно, это будет только x86-64 , хотя справочная страница не документирует это как значение для -march-

+1

Хорошо, выход содержит марш = x86-64. Но поскольку это недокументировано, как вы отметили, это действительно только сдвигает вопрос: что это действительно означает с точки зрения инструкций? – BehemothTheCat

+1

Он должен быть базовым набором команд x86-64, общим для всех процессоров x86-64. – nos

+2

... что-то, о чем говорится в документации, не существует: -P – BehemothTheCat

 Смежные вопросы

  • Нет связанных вопросов^_^