Bonjour à tous,
Voici quelques jours que je n'arrive pas a résoudre ce problème. Lorsque je compile le programme suivant (gcc 3.4.4, Linux redhat), j'obtiens systématiquement l'erreur suivante (sur la ligne en gras):
error: impossible constraint in `asm'
Le seul registre qui ne génère pas d'erreur, c'est le registre ebx.
Si quelqu'un a une idée, ce serait vraiment super.
Merci.
Code:void my_memcpy(void *d,void *s,int length) { __asm__ __volatile__ ( " movl %%ecx,%%edx\n" " andl $3,%%ecx\n" " rep movsb\n" " movl %%edx,%%ecx\n" " shrl $2,%%ecx\n" " rep movsl\n" : // ouput : "esi"(s),"edi"(d),"ecx"(length) // input : "ecx","edx","edi","esi" // modify ); }
-----