new version
authorTobias Girstmair <t@thi3nkpad.lan>
Tue, 13 Nov 2018 17:54:46 +0000 (18:54 +0100)
committerTobias Girstmair <t@thi3nkpad.lan>
Tue, 13 Nov 2018 17:54:46 +0000 (18:54 +0100)
foo.c

diff --git a/foo.c b/foo.c
index a9b356b5a6262a542812db847958dbc146b4313a..4f8d74cb18036220a94b5f1d05eef7ec75528e5d 100644 (file)
--- a/foo.c
+++ b/foo.c
@@ -45,6 +45,7 @@ void mod3(void) {
        BRPL    (skip)
        SUBI    (Ml, 3)
        skip:;
        BRPL    (skip)
        SUBI    (Ml, 3)
        skip:;
+       RET
        #undef tmp
 }
 void g(void) {
        #undef tmp
 }
 void g(void) {
@@ -68,7 +69,7 @@ void g(void) {
        t >>= o; //NOTE: o == {1, 2, 4}
        AND     (t, x)
        ANDI    (t, 3)
        t >>= o; //NOTE: o == {1, 2, 4}
        AND     (t, x)
        ANDI    (t, 3)
-       RET
+       RET //TODO: CALL/RET is expensive; store PC in register and RJMP, then JRMP back
 };
 
 int main(void) {
 };
 
 int main(void) {
Imprint / Impressum