The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Assembler (assembler example gcc)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: assembler, example, gcc,  (найти похожие документы)
_ RU.LINUX (2:5077/15.22) ___________________________________________ RU.LINUX _ From : Solar Designer 2:5020/400 20 Mar 98 00:21:44 Subj : Re: Assembler ________________________________________________________________________________ From: solar@cannabis.dataforce.net (Solar Designer) Oleg Moroz (Oleg.Moroz@p22.f701.n5020.z2.fidonet.org) wrote: > MV> Там ещё пункт 17.2 есть -- "Double check code, produced by gas". > С другой имеется в виду, что пользуясь gas'ом ты рискуешь ошибиться (написать > "movl 4, %eax" вместо "movl $4, %eax", а то и еще чего похуже) и не получить > ни Это да, x86'ая проблема. Hа большинстве RISC такого не получится. Хуже была другая вещь, тоже только на x86, -- до недавнего времени можно было сказать movb %eax,%ecx и не получить сообщения об ошибке. Hо теперь gas стал на такое проверять, что меня порадовало. > PS А пробовал на gcc-шном inline ассемблере писать когда-нибудь ? Я в свое > время уже готов был поверить в собственную тупость в процессе чтения доки. > Hичего, освоился... Угу, даже удобно. :-) Вот, например, использование MMX при свежем gas'е. #include <stdio.h> int main() { long long a = 0x7777777711111111LL, b = 0x9999999922222222LL, c; asm( "movq %1,%%mm0;" "pxor %2,%%mm0;" "movq %%mm0,%0" : "=g" (c) : "g" (a), "g" (b) ); printf("%llx\n", c); return 0; } /sd --- ifmail v.2.14dev2 * Origin: DataForce ISP (2:5020/400@fidonet)

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру