Главная » Просмотр файлов » GCC - The Complete Reference

GCC - The Complete Reference (537669), страница 119

Файл №537669 GCC - The Complete Reference (GCC - The Complete Reference) 119 страницаGCC - The Complete Reference (537669) страница 1192015-07-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 119)

Приложение Г. Опции командной строки компилятора ОСС 535 -Май С++ Выводит статистику обработки программы верхним уровнем компилятора. Эта информация относится к внутренним действиям компилятора, Опция не влияет на вырабатываемый компилятором код. -й1оге-сЬес!( )ача Действует ло умолчанию. Указание обратной опции -йпо-веоге-с)тес)к удаляет код, проверяющий во время выполнения программы соответствие типов объектов при их сохранении в массив. -Й1геп9Ф-ге(Ьсе Применяет такую оптимизацию циклов, которая сокра(цает их код и исключает избыточные переменные внутри цикла.

Также происходит замена медленно выполняемых операций, таких как умножение и деление, на более простые и быстрые операции, такие как сложение и вычитание. Эта опция всегда автоматически применяется лри использовании опций -йцпго11-1оорв и -1ппго11-а11-1оорв. Ее автоматически устанавливают также опции оптимизации -о2, -ОЗ и -ов. При необходимости данную опцию можно отключить обратной опцией — бпо-вггепдг)т-ге()цсе. Вот простой пример. В цикле используется временная переменная для хранения вычисляемого значения индекса массива и ее значение вычисляется из переменной цикла умножением на 2: лог (1пс 1=от 1<10( 1++) ( 1поех = 3. а Зт егапкп1в (ха1агг(1пдех)) ) Здесь внутренняя переменная цикла 1п()ех можно исключить. Кроме того, лля умножения на 2 можно применить простую операцию логического сдвига.

В результате получается такой код; еог (1пс (=От 1<10( 1++) ( кгаякя1в (ха1агг(1 « 1))к ) Сдвиг на одну двоичную позицию счетчика цикла умножает его значение на 2 и результат выражения непосредственно используется в качестве индекса массива без его хранения во временной переменной. -(ь1ПС1-а!)аь)П9 При атой опции применяются наиболее строгие правила использования синонимов при адресации данных и функций (а))аз!пя). Синонимами (а))аз) считаются различные имена программных символов, прямо или косвенно адресующиеся к одному расположению памяти.

Применение строгих правил синонимов, к примеру, для языка С означает, что символ типа 1пс не может быть синонимом символа типа ()оиЬ1е или указателя, но может быть синонимом символа типа ппв1дпей с)таг. 536 Часть П(. Приложения Даже при строгих правилах совмещения имен могут оставаться проблемы при обращениях к члену объединения (шпон тещЬег) через адрес объединения вместо использования для этого указателя на требуемый член объединения. Вот пример кода, который может вызывать проблемы; 1пс *ърхс ипъоп ( ъпе 1та1иет гтоиЫе гтта1иег ) е1дв( а1дв.1зга1ие = 45г 1рст йп1дв.1та1ие( Епаее(в ("1рсп)г а1дв.огга1ие = 88.бг Гхеппп1в (*1рсх]г В этом примере строгое совмещении имен может не определить возможное изменение значения, адресуемого указателем 1рск, в промежутке между двумя вызовами функции. При прямой адресации членов объединения таких проблем не возникает.

45угпЬО!-са5е-прес гог1гап Поле врес указывает регистр буквенных знаков (строчные/заглавные), используемый в определяемых пользователем символах программы. Возможны следующие значения врес: ° 1п1ссар — Слово начинается с заглавной буквы, остальные буквы — строчные. ° иррег — Все слово должно быть написано заглавными буквами. ° 1оттег — Все слово должно быть написано строчными буквами. ° апу — Допускается любой порядок использования строчных и заглавных букв. Это значение применяется по умолчанию. См. также -х(пас(т-саве-, -хвоиксе-саве-, -х1пех1п-саве- и -хсаве-. -15уп1ах ЕОГ1гап Компилятор только проверяет синтаксис исходного кода.

Больше никаких действий при этой опции не предпринимается. -11егпр!а1е-Йер1(гпитЬег С++ Число пппкгех. устанавливает наибольшую допустимую глубину вложенности экземпляров шаблона для определения ситуаций рекурсивной или циклической подстановки шаблонов кода. При достаточном соответствии программы стандарту нет необходимости указывать допустимую глубину более 17. По умолчанию она равна 500.

Приложение Г. Опции командной строки компилятора ОСС 537 -тте1г-сочегаяе При этой опции компилятор вырабатывает файлы, содержащие информацию для утилиты дсотг. Эти файлы несут то же имя, что и исходный файл, но имеют суффиксы, указывающие на их содержание.

Файлы с суффиксом . ЬЬ содержат информацию о соответствии основных блоков объктного кода номерам строк исходного файла. Эта информация используется дсож для соотношения результатов подсчета проходов выполнения с номерами строк исходного кода. Файлы с суффиксом . ььд содержат список связей графа потока выполнения программы (йоч агар)т). Эта информация используется дсозг для перестроения графа потока выполнения и расчета количества проходов выполнения блоков программы по данным из файлов с суффиксом .ба, вырабатываемых по опции -крхог11е-ахов.

См, также опции -а, -хсеве-со~кехаде и -крхок11е-агсв. -ЙЬгеад-)игпрв Возникают ситуации когда после вычислении условия перехода и его выполнения управление может передаваться в такое расположение программы, где из действуюших на момент первичного перехода значений вычисляется новое условие, которое вызывает новый переход с вполне определенным при таких обстоятельствах назначением. В таких случаях возможна оптимизация последовательных переходов, которая перенаправляет цель первичного перехода в место окончательного предназначения. Эта опция устанавливается автоматически при всех уровнях оптимизации. В отличие от других подобных опций она не может быть замещена опцией -кпо-еЬхеай-эшврв.

-Югпе-герог~ По этой опции после завершения компиляции программы печатается отчет о времени, затраченном на компиляцию. Выводится время использования отведенных пользователю ресурсов, время использования системы и отсчеты времени (тхай с)осй) лля каждого прохода. Выводятся суммарные итоги времени использования.

-йгарр) п9-гпатгз Действует по умолчанию. При установке обратной опции -гпо-кхарр1пд-шаеЬ считается, что ошибки операций с плавающей точкой не могут вызывать исключения, обрабатываемые прерываниями, и порождать сигналы. Обратная опция -гпо-ехаррзпд-калев может привести к генерированию такого кода, который нарушает условия стандартных правил для операций с плавающей точкой. -гтгарч Генерирует код, который перехватывает и обрабатывает ситуации переполнения результата операций сложения чисел с учетом знака, а также операций деления и умножения.

Эта опция может использоваться во время тестирования программы и создавать файлы сохе для каждого случая переполнения результата, которые обычно проходят незамеченными и могут вызывать проблемы. 538 часть ПЬ Приложения По умолчанию действует обратная опция — хцо-скарзг. -Йуре!ехх-Ьог Рог1гап Указывает использование бестипового префикса, определяющего предельное значение (или основание счета, гайх) недесятичных констант вместо применения по умолчанию типа хнтвовк(кхнр=1). Имеются в виду константы наподобие в "Авсп', -сия!у-агях Гог1гап Действует по умолчанию. Обратная опция -Хпо-цд1у-агдв запрещает передачу в аргументах вызова функций бестиповых констант формата "Но!егй)>".

По умолчанию будут допустимыми оба следующих примера вызова; САЬЬ ЯВВП(4НАВСН> САЬЬ ВАН< хгэ О> -1оя!у-а1х(9п При этой опции программа использует общие ячейки для хранения присваиваемых меток (аза)япеб )аЬе)з) и числовых данных (пшпепс дага). Например два оператора следующего примера используют одно и то же расположение ячейки: 1=3 Аввхон хо то х Эту опцию необходимо применять, если программа обращается к присваиваемому значению как элементу данных, потому что по умолчанию для хранения различных типов информации всегда отводятся отдельные ячейки.

-Ь9!у-аыигпес! Еог1гап Массив с указанным размером в один элемент считается объявленным с размером "*". Например, оператор пхмвнтхон х (1) при этой опции воспринимается как рхмвнтхом х('). -1о9!у-соп>п>а Завершающая список аргументов запятая воспринимается как передача подпрограмме дополнительного нулевого аргумента. То есть, при этой опции оператор сАьь вьоа() будет передавать вызываемой подпрограмме один нулевой аргумент, а САьь нхм(, ) — два нулевых аргумента.

Без этой опции завершающая запятая в списке аргументов будет игнорироваться и подпрограммам не будут передаваться нуль-аргументы даже и в случае присутствия в списке других аргументов. -Ь9!у-согпр!ех Гог1гап Допускает использование с встроенными функциями (!пгппз1сз) квдь(ехрх) и АХМАО(ежрк) любых типов комплексных выражений.

По умолчанию допускаются только такие выражения с комплексными числами, которые дают результат типа сомрьвх(кхнп=х). Приложение Г. Опции командной строки компилятора 6СС 539 При совместном ислользовании этой олции с опцией -кк 90 такие встроенные функции не конвертируют возвращаемые ими действительную и мнимую части комллексного аргумента. -Ь9!у-!пав ГОГФгап Действует ло умолчанию. При указании обратной опции -тпо-ид1у-1пз.е не допускается использование данных формата Но!елей в операторах ллтл и вллльглтлл. При этом также не разрешается использование буквенных констант для инициализации числовых типов данных и наоборот, использование числовых констант для инициализации буквенных типов данных.

-1и 9!у-1О91п1 ГОГ1гап Применяет автоматическое конвертирование типов хлтлолл и ьоохсдь лрактически во всех случаях, где это необходимо. Этого достаточно, чтобы лерекрестно использовать два этих типа почти в любых выражениях. 4ые-ЬоеЬп-Яс !ача Опция назначает использование метода "Воейгл" разметки битовых полей в выгружаемой в своп информации в ходе выполнения программы. (Воейш яагЬаяе со11есбол Ы(гоар тагЫля сог(е.) -Йесоп(1-опдегвсоге Действует ло умолчанию. См, опцию -хипбегвсох1пд.

Характеристики

Тип файла
DJVU-файл
Размер
6,08 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6381
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее