
edit -> ça cartonne ton truc ^^
moveq #1,%d0 lsl.w %d3,%d0 ext.l %d0 and.l %d4,%d0 move.l #.LC1,%d1 tst.l %d0 jbne .L8 move.l #.LC2,%d1

printf("%s:", StrFlag);
if (Flags & (1 << Count))
printf("Enabled\n");
else
printf("Disabled\n");
mais je trouve pas ça propre, on dirait du basic ^^pea .LC1 jbsr (%a2) moveq #1,%d0 lsl.w %d3,%d0 ext.l %d0 and.l %d4,%d0 addq.l #8,%sp jbeq .L6 pea .LC2 jbra .L11 .L6: pea .LC3 .L11:
Folco (./63) :On parie qu'il craque au bout d'une semaine ?
pour ce qui est de la manière de GCC d'écrire de l'assembleur, j'ai décrété que je fermais les yeux

Une optimisation peephole devrait pouvoir régler ce cas.Il faut identifier la séquence de code asesmbleur correspondante au code compilé que j'ai donné ? Puis forcer l'optimisation en faisant un remplacement en dur (au moins au niveau de la séquence d'instructions, pas des registres) ?