lock Le 17/12/2002 à 15:21 Je sais que c'est sans doute une question pour PpHd, mais si vous connaissez la réponse n'hésitez pas.
J'aimerai savoir dans quel(s) registre(s) doit être stocké le résultat renvoyé par une méthode écrite en ASM que l'on voudrait appeler en C ?
Je sais déjà que les param. d'entrée sont dans r0, r1, etc...
C'est dans d0 pour une donnée et dans a0 pour une adresse
Ça, c'est sur 68k. On est sur ARM là. Il n'y a pas de d0 et d'a0 sur ARM.
lock Le 19/12/2002 à 07:19 Kevin : Merci pour ta réponse. Par contre il y a bien des registres do, d1 etc... Ce sont des registres du FPU.
PpHd Le 19/12/2002 à 14:33 Lol. y'a pas de virgule flottante, de toute facon faut pas les utiliser, c lent.
Alors:
+ Le resultat est toujours renvoye dans r0
+ Les 4 premiers arguments sont dans r0-r3, le reste est pushe sur la pile.
+ Seuls r0-r3 / lr=r14 / ip=r12 sont detruisible. Le reste doit etre preserve.
j'ai jamais reussi a deriver la pile sans faire tout planter donc je te conseille de ne pas toucher a la pile pour liberer un registre.