ISA et assembleur
Dans la convention d'appel standard de RISC-V, quels registres servent à transmettre les arguments entiers et la valeur de retour ?
- AArguments dans s0 à s7, valeur de retour dans ra
- BArguments dans a0 à a7, valeur de retour dans a0 (et a1)
- CTous les arguments sur la pile, valeur de retour dans sp
Afficher la réponse et l'explication
Réponse : B. Arguments dans a0 à a7, valeur de retour dans a0 (et a1)
Dans la convention d'appel standard de RISC-V, jusqu'à 8 arguments entiers sont passés dans a0 à a7 (x10 à x17), et la valeur de retour est renvoyée dans a0, ou dans a0 et a1 pour une valeur de 64 bits par exemple. Le passage par registres, plus rapides que la mémoire, réduit le coût des appels de fonction. Les arguments au-delà de 8 sont placés sur la pile. Les arguments flottants utilisent fa0 à fa7.