diff options
author | Alex AUVOLAT <alex.auvolat@ens.fr> | 2013-12-25 23:19:14 +0100 |
---|---|---|
committer | Alex AUVOLAT <alex.auvolat@ens.fr> | 2013-12-25 23:19:14 +0100 |
commit | 62d931b6b52bbb952a2c280823dcc8bb5bd591bd (patch) | |
tree | 1afdbb73acd089f7b38ec47ea4f2d4047e549bde /doc.txt | |
parent | 7ede04f410c1df7cfe3e96e4101db1570c2a16ae (diff) | |
download | LPC-Projet-62d931b6b52bbb952a2c280823dcc8bb5bd591bd.tar.gz LPC-Projet-62d931b6b52bbb952a2c280823dcc8bb5bd591bd.zip |
Begin code generation (many bugs...)
Diffstat (limited to 'doc.txt')
-rw-r--r-- | doc.txt | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -0,0 +1,19 @@ +Pour une fonction f(x, y) on a sur la pile : + + | ..... | + | y | construit par + | x | l'appelant + ---------------------------------- + | sauv. $fp | construit par + $fp--> | sauv. $ra | l'appelé + | z | + | ..... | + +La valeur renvoyée par une fonction est passée dans le registre a0. + + +--- + +Tous les calculs se font en utilisant a0 comme sommet de pile (les seuls valeurs +plus grosses qu'un registre ne sont jamais manipulées en tant que valeurs mais toujours +en tant qu'adresses... donc tout va bien) |