Utiliser une instruction MMX
Bonjour
Je cherche a effectuer un ROL (rotation vers la gauche) d'un registre MMX.
La doc Intel nous dit que c'est possible (mais malheureusement par d'intrinsic!) , par ex:
ROL r/m64, 1
Ok alors j'essaye d'inclure une ligne assmleur en C sous GCC:
Code:
1 2 3
| __m64 A; // initialisation d'un registre MMX
A = _mm_set_pi8(0x01, 0x01, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff); // charge des valeurs dans A
asm(" ROL %mm0,1\n\t"); // sense faire un rol |
et là l'assembleur me dit :
Citation:
Error: suffix or operands invalid for `rol'
Quelqu'un peut m'aider???
Merci
Rotation d'un registre 64 bits
Merci pour vos reponses.
C'est bien un ROL que je veux faire, et non un SHIFT. Car sinon j'utiliserais les intrinsics.
D'autre part, j'appelle registre MMX celui qu'on initialise avec __m64, mais le nom m'importe peu...
Et la doc intel nous dit bien qu'on peut faire un ROL r/m64, 1
C'est tout ce que j'espere arriver a faire...