Comment faire une macro en ASM A68k pour optimiser automatiquement une instruction utilisant une constante ? exemple: mov #TAILLE_X,d0 donne move.w ou moveq selon la valeur de TAILLE_X |
hum... pas une bonne idée ça... les octets de poids fort et de poids faible, ça te dit quelquechose? - Fred whipple, 1960 *** Ne sous-estimez pas la puissance de la Marmotte *** © Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina |
je sais, c'est pourquoi j'ai parlé d'une macro que s'appellerais mov par exemple, pas move, donc l'optimisation ne se ferait que sur des instructions où je le veux. |
tu veux dire changer le .l, .w ou.b? mov MACRO move.1 2,d0 endm mov l,#my_value,d0 La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork. |
ben en fait, je pense pas que ce soit très "automatique" ta méthode - Fred whipple, 1960 *** Ne sous-estimez pas la puissance de la Marmotte *** © Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina |
en fait, même si à mon avis ça ne sert STRICTEMENT à rien, sinon à ralentir, il faudrait faire des tests pour savoir quel format utiliser... dc c nul. - Fred whipple, 1960 *** Ne sous-estimez pas la puissance de la Marmotte *** © Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina |
Tout à fait d'accord mais je ne saisis pas bien la question... La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork. |
Il faut attendre que la pseudo-instruction movef soit implémentée. (C'est dans le TODO de A68k.) |
euhhhh mais encore? La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork. |
mov macro
ifgt \1-127
move.w #\1,\2
endif
iflt \1+128
move.w #\1,\2
endif
ifgt \1+128
ifle \1-127
moveq #\1,\2
endif
endif
endm
Avec les pre, ca marche mieux ? [edit]Edité par PpHd le 28-11-2001 à 14:53:00[/edit] |
on peut faire ifgt 1-127? La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork. |
Non, la mise en forme automatique detruit tous les '' (devinez le symbole detruit). C'est le symetrique de '/' Sinon, a vous de trouver on c'est |
1-127 et 1+128 à l'origine c t /1-127 et 1/+128 si je me trompe pas :D
|
Il faut rentrer \\ pour obtenir \. Apparemment, yAro n'arrive pas à contourner ce problème. |
Et pour la macro de PpHd, ça marchera, mais le problème est qu'il faudra l'appeler par mov 1234,d1 plutôt que mov #1234,d1. |
oups en fait j'avais bien mis \ La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork. |
On ne peut pas tout avoir, Kevin |
n'est-ce pas « What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall |