[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[MiNT] fix for falcon.h
Attached is a fix for falcon.h to define the clobbered d0 register.
Alan.
Index: sys/mint/falcon.h
===================================================================
RCS file: /mint/freemint/sys/mint/falcon.h,v
retrieving revision 1.4
diff -u -r1.4 falcon.h
--- sys/mint/falcon.h 7 Apr 2004 22:49:07 -0000 1.4
+++ sys/mint/falcon.h 2 Jun 2006 09:13:39 -0000
@@ -36,7 +36,8 @@
lea sp@(12),sp" \
: "=r"(retvalue) \
: "g"(n), "r"(_a), "r"(_b), "r"(_c), "r"(_d), "r"(_e) \
- : "d0", "d1", "d2", "a0", "a1", "a2", "memory"); \
+ : __CLOBBER_RETURN("d0") \
+ "d1", "d2", "a0", "a1", "a2", "memory"); \
retvalue; \
})
#endif
@@ -62,7 +63,8 @@
lea sp@(18),sp" \
: "=r"(retvalue) \
: "g"(n), "r"(_a), "r"(_b), "r"(_c), "r"(_d) \
- : "d0", "d1", "d2", "a0", "a1", "a2", "memory"); \
+ : __CLOBBER_RETURN("d0") \
+ "d1", "d2", "a0", "a1", "a2", "memory"); \
retvalue; \
})
#endif
@@ -92,7 +94,8 @@
lea sp@(26),sp" \
: "=r"(retvalue) \
: "g"(n), "r"(_a), "r"(_b), "r"(_c), "r"(_d), "r"(_e), "r"(_f) \
- : "d0", "d1", "d2", "a0", "a1", "a2", "memory"); \
+ : __CLOBBER_RETURN("d0") \
+ "d1", "d2", "a0", "a1", "a2", "memory"); \
retvalue; \
})
#endif
@@ -114,7 +117,8 @@
lea sp@(10),sp" \
: "=r"(retvalue) \
: "g"(n), "r"(_a), "r"(_b) \
- : "d0", "d1", "d2", "a0", "a1", "a2", "memory"); \
+ : __CLOBBER_RETURN("d0") \
+ "d1", "d2", "a0", "a1", "a2", "memory"); \
retvalue; \
})
#endif
@@ -138,7 +142,8 @@
lea sp@(12),sp" \
: "=r"(retvalue) \
: "g"(n), "r"(_a), "r"(_b), "r"(_c) \
- : "d0", "d1", "d2", "a0", "a1", "a2", "memory"); \
+ : __CLOBBER_RETURN("d0") \
+ "d1", "d2", "a0", "a1", "a2", "memory"); \
retvalue; \
})
#endif