On Z80 and to an extent 6502 we gain a lot if we can pin some of our
auto variables to static addresses. Clearly this can only be done for
non-re-entrant functions but our architecture means we have plenty of them
6809 is not really so aflicted so uses auto.
extern void *memcpy(void *, void *, size_t);
extern void *memset(void *, int, size_t);
extern size_t strlen(const char *);
+
+#define staticfast static
extern void *memcpy(void *, void *, size_t);
extern void *memset(void *, int, size_t);
-extern size_t strlen(const char *);
\ No newline at end of file
+extern size_t strlen(const char *);
+
+/* 6809 doesn't benefit from making a few key variables in
+ non-reentrant functions static */
+#define staticfast auto
extern int16_t strlen(const char *p);
+#define staticfast static
+
#endif