Результаты поиска по запросу "x86-64"
GCC: putchar (char) в сборке
Переполнение, Как я могу реализовать процедуру putchar (char), используя только встроенную сборку? Я хотел бы сделать это в сборке x86-64. Причина, по которой я это делаю, заключается в реализации моей собственной стандартной библиотеки (или, ...
Вызов функции C в коде сборки (газ)
Я нашел пример и редактировал его для газа. extern printf .global _start .data hello: db "Hello", 0xa, 0 .text _start: mov %rdi, hello mov %rax, 0 call printf mov %rax, 0 retНо это не работает. В чем дело? Что это значит: hello: db "Hello", ...
x86-64: загрузка кеша и инструкция по вытеснению
Для архитектуры x86-64, есть ли инструкция, которая может загружать данные по заданному адресу памяти в кеш? Аналогично, есть ли инструкция, которая может высвободить строку кэша, учитывая адрес памяти, соответствующий этой строке кэша (или ...
Преимущества использования 32-битных регистров / инструкций в x86-64
Иногда gcc использует 32-битный регистр, когда я ожидал, что он будет использовать 64-битный регистр. Например, следующий код C: unsigned long long div(unsigned long long a, unsigned long long b){ return a/b; } скомпилирован с опцией -O2 для ...
SSE: загрузка и сохранение без выравнивания, пересекающие границу страницы
Я где-то читал, что перед выполнением выровненной загрузки или сохраняю рядом с границей страницы (например, используя_mm_loadu_si128 / _mm_storeu_si128 intrinsics), код должен сначала проверить, принадлежит ли весь вектор (в данном случае 16 ...
Как оптимизировать возвращаемые значения функций в C и C ++ на x86-64?
The x86-64 ABI [http://www.x86-64.org/documentation/abi.pdf] определяет два регистра возврата:rax а такжеrdx, размером 64 бита (8 байт). Предполагая, что x86-64 является единственной целевой платформой, какая из этих двух функций: uint64_t ...
Каковы соглашения о вызовах для системных вызовов UNIX и Linux на i386 и x86-64
Следующие ссылки объясняют соглашения о системных вызовах x86-32 для UNIX (BSD-версия) и Linux: http: //www.int80h.org/bsdasm/#system-call [http://www.int80h.org/bsdasm/#system-calls] http: ...
x86-64 Сегментация ошибок сохранения стека указатель
Я сейчас следую вместе с этот учебник [http://web.cecs.pdx.edu/~kstew2/cs533/project/assign1/], но я не учусь в этой школе. GDB дает мне ошибку сегментации вthread_start на линии movq %rsp, (%rdi) # save sp in old thread's tcb Вот ...
x86_64: IMUL быстрее, чем 2x SHL + 2x ADD?
Когда вы смотрите на сборку, созданную Visual Studio (2015U2) в/O2 режиме @ (релиз) я увидел, что этот «оптимизированный вручную» фрагмент кода C переводится обратно в умножение: int64_t calc(int64_t a) { return (a << 6) + (a << 16) - a; ...