diff options
Diffstat (limited to 'newlib/libc/machine/h8300/reg_memset.S')
-rw-r--r-- | newlib/libc/machine/h8300/reg_memset.S | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/newlib/libc/machine/h8300/reg_memset.S b/newlib/libc/machine/h8300/reg_memset.S new file mode 100644 index 0000000..8e58c5e --- /dev/null +++ b/newlib/libc/machine/h8300/reg_memset.S @@ -0,0 +1,32 @@ +#include "defines.h" + +#ifdef __H8300H__ + .h8300h +#endif + +#ifdef __H8300S__ + .h8300s +#endif + + + ; dst A0 + ; src A1 + ; len A2 + + .global ___reg_memset +___reg_memset: + MOVP A0P,A3P + MOVP A2P,A2P + beq noset + +memloop: + mov.b A1L,@A0P + adds #1,A0P + subs #1,A2P + MOVP A2P,A2P + bne memloop + +noset: + MOVP A3P,A0P + rts + |