0
ответов

Что такое r () и двойной процент %% в языке встроенной ассемблера GCC?

Пример: int main (void) {int x = 10, у; asm ("movl% 1, %% eax;" "movl %% eax,% 0;": "= r" (y) / * y - операнд вывода * /: "r" (x) / * x - ввод операнд * /: "...
вопрос задан: 29 July 2015 20:33
0
ответов

Ручная сборка против GCC

Отказ от ответственности: я только начинаю с сборки x86. Я немного изучил SPIM в университете, но это вряд ли стоит упоминать. Я думал, что начну с того, что, пожалуй, самая простая функция в ...
вопрос задан: 21 July 2015 13:01
0
ответов

yylval undefined с flex и bison

Я искал почти все материалы в Интернете. Но я все еще не понимаю, почему лексер не может идентифицировать yylval. Вот такой случай: Я определил кучу ADT в node.h и реализовал их в node.c, мой ...
вопрос задан: 20 July 2015 14:33
0
ответов

GCC:Запретить использование некоторых регистров

Это странная просьба, но у меня такое ощущение, что это возможно. Я бы хотел вставить некоторые прагмы или директивы в области моего кода (написанного на C), чтобы регистр GCC ...
вопрос задан: 15 July 2015 14:35
0
ответов

Как получить размер функции C из программы C или с помощью встроенного ассемблера?

Предположим, у меня есть функция, как показано ниже:#cat 003.c int foo (int a, int b ){возврат а+б; } И компилируем вот так :gcc -S 003.c Получаем следующий результат сборки :.file "003.c"...
вопрос задан: 15 July 2015 11:22
0
ответов

Как я могу получить то, что вернула моя главная функция?

В программе на C, если мы хотим дать некоторый ввод с терминала, мы можем дать его: int main(int argc, char *argv[]) Таким же образом, если мы хотим получить возвращаемое значение функции main(), то как мы можем ...
вопрос задан: 6 July 2015 19:14
0
ответов

Будет ли strlen вычисляться несколько раз, если используется в условиях цикла?

Я не уверен, может ли следующий код вызывать избыточные вычисления или он специфичен для компилятора -? для (int i = 0; i < strlen (ss ); ++ я ){ // блабла } Будет ли вычисляться strlen ()каждый раз, когда...
вопрос задан: 30 June 2015 22:20
0
ответов

Неожиданная неоднозначность функций суррогатного вызова в C ++

В следующем коде clang и EDG диагностируют неоднозначный вызов функции, в то время как gcc и Visual Studio принимают код. struct s {typedef void (* F) (); оператор F (); // оператор # 1 F () ...
вопрос задан: 30 June 2015 09:20
0
ответов

Почему код с несколькими вложенными циклами может завершиться немедленно в GCC, но может занять вечность в VS?

long long r = 0; длинный длинный k = 0; for (; k < 9999999999999; k++) { for (long long i = 0; i < 9999999999999; i++) { for (long long j = 0; j < 9999999999999; j++) { ...
вопрос задан: 26 June 2015 10:51
0
ответов

Как запретить g ++ оптимизировать цикл, управляемый переменной, которая может быть изменена с помощью IRQ?

Рассмотрим следующий фрагмент кода: unsigned global; в то время как (глобальный); global модифицируется в функции, которая вызывается IRQ. Однако g ++ удаляет тест «не равно нулю» и переводит ...
вопрос задан: 26 June 2015 07:48
0
ответов

Как GCC оптимизирует неиспользуемую переменную, увеличивающуюся внутри цикла?

Я написал эту простую программу на C: int main () {int i; int count = 0; для (я = 0; я <2000000000; я ++) {счетчик = счет + 1; } } Я хотел увидеть, как компилятор gcc оптимизирует ...
вопрос задан: 26 June 2015 06:49
0
ответов

В чем разница между -O3 и (-O2 + флаги, которые, как сообщает man gcc, -O3 добавляет к -O2)?

Недавно я получил отчет об ошибке в программе, которая не компилируется с переключателем -O3 (см. https://github.com/cschwan/sage-on-gentoo/issues/66). В частности, проблема в том, что компиляция ...
вопрос задан: 26 June 2015 06:28
0
ответов

Влияние __attribute __ ((упаковано)) на вложенный массив структур?

Проблема I Я работаю над отправкой необработанной структуры по сети в известную программу на другой стороне, но мне нужно беспокоиться о незаметно введенной памяти, используемой для выравнивания структур (другие ...
вопрос задан: 25 June 2015 15:59
0
ответов

Какая первая (int (*) (…)) 0 запись vtable в выводе g ++ -fdump-class -ierarchy?

Для этого кода: класс B1 { общедоступные: виртуальная void f1 () {}}; class D: public B1 { public: void f1 () {} }; int main () {B1 * b1 = новый B1 (); D * d = новый D (); возврат 0; } После ...
вопрос задан: 25 June 2015 03:09
0
ответов

как мне собрать gcc на Mac?

Я хотел бы собрать последнюю версию gcc на Mac. У меня есть последний xcode, но я ищу некоторые функции c ++ 0x, которые есть в более поздних версиях (лямбда-функции и т. Д.). Есть ...
вопрос задан: 17 June 2015 04:00
0
ответов

Почему GCC std::atomic increment генерирует неэффективную неатомную сборку?

Я довольно долго использовал Intel-совместимые встраиваемые функции gcc (например, __sync_fetch_and_add), используя свой собственный шаблон atomic. Функции "__sync" теперь официально считаются "наследием". C++11 ...
вопрос задан: 16 June 2015 09:18
0
ответов

В чем разница между -std=c++11 и -std=gnu++11?

В чем разница между -std=c++11 и -std=gnu++11 в качестве параметра компиляции для gcc и clang? Тот же вопрос с c99 и gnu99? Я знаю о стандартах C++ и C, это различия в...
вопрос задан: 13 June 2015 02:17
0
ответов

Как добавить несколько каталогов заголовков и библиотек в путь поиска одной командой gcc?

Как добавить несколько каталогов заголовков и библиотек в путь поиска в одной команде gcc?
вопрос задан: 9 June 2015 11:48
0
ответов

Разница между libgcc.a и libgcc_s.a?

Мы установили GCC и libgcc в AIX 6.1 с помощью файлов RPM. Я хотел бы знать, почему "libgcc_s.a" не был создан в следующей папке? /opt/freeware/lib/gcc/powerpc-ibm-aix6.1.0 ....
вопрос задан: 8 June 2015 11:06
0
ответов

Связывание программы на C напрямую с ld fai ls с неопределенной ссылкой на `__libc_csu_fini`

Я пытаюсь скомпилировать программу на C под Linux. Однако из любопытства я пытаюсь выполнить некоторые шаги вручную: я использую: интерфейс gcc для создания кода ассемблера затем запустите ассемблер GNU, чтобы получить ...
вопрос задан: 8 June 2015 10:58
0
ответов

Как clang может управлять оптимизацией кода C / C ++?

Мне сказали, что clang - это драйвер, который работает подобно gcc для выполнения предварительной обработки, компиляции и компоновки. Во время компиляции и компоновки, насколько я знаю, на самом деле это будет ...
вопрос задан: 6 June 2015 19:00
0
ответов

Где в Linux определен PATH_MAX?

Какой заголовочный файл я должен вызвать с #include, чтобы иметь возможность использовать PATH_MAX как int для определения размера строки? Я хочу иметь возможность объявить: char *current_path[PATH_MAX]; Но когда я это делаю, мой компилятор (...
вопрос задан: 6 June 2015 06:30
0
ответов

Почему typeid.name () возвращают странные символы с помощью GCC и как заставить его печатать несвязанные имена?

Почему я запускаю этот main.cpp: #include #include с использованием пространства имен std; struct Blah {}; int main () {cout << typeid (Blah) .name () << endl; return ...
вопрос задан: 5 June 2015 13:01
0
ответов

неопределенная ссылка на 'std :: cout'

Это будет пример: #include < iostream > использование пространства имен std; int main () {cout < < "Привет, moondo. \ N"; } Выдает ошибку: gcc -c main.cpp gcc -o редактировать main.o main.o: In ...
вопрос задан: 4 June 2015 13:28
0
ответов

Проблема типа (вывода) Scala?

Я разрабатываю веб-сервис REST в Scala, используя справочную реализацию Jersey JAX-RS, и получаю странную ошибку. Я пытаюсь создать объект ContentDisposition с помощью...
вопрос задан: 26 May 2015 12:27
0
ответов

Как `({…})` возвращает значение?

Недавно я нашел этот макрос GCC: #define max (a, b) \ ({typeof (a) _a = (a); \ typeof ( b) _b = (b); \ _a> _b? _a: _b;}) Я не осознавал, прежде чем увидел этот код, что блок ...
вопрос задан: 23 May 2015 15:32
0
ответов

Как отключить оптимизацию компилятора в gcc?

Я пытаюсь изучить ассемблер. Я искал и нашел, как разобрать файл .c, но я думаю, что это дает некоторую оптимизированную версию программы. Есть ли способ увидеть ...
вопрос задан: 16 May 2015 20:18
0
ответов

Что делает опция -lm в g++?

Что делает параметр -lm в g++ и когда он нужен? Есть ли полное описание опций g++?
вопрос задан: 15 May 2015 20:27
0
ответов

Как gcc находит as, ld и другие исполняемые файлы binutils?

Их расположение жестко закодировано в коде gcc или gcc просто вызывает as и мы должны иметь расположение as в нашей переменной PATH? И в последнем случае, как мы можем создать два совершенно отдельных gcc ...
вопрос задан: 15 May 2015 16:17
0
ответов

Как мы можем создать PDF-файл с аннотацией

Кто-нибудь может сказать мне, как я могу создать PDF-файл с текстовой аннотацией на нем (чтобы аннотация была видна при открытии PDF-файла с помощью PDF-ридера в Рабочий стол)? В настоящее время я могу создавать ...
вопрос задан: 15 May 2015 08:43