From bb1bfaa2fbc693a7185226737022d5d74b97a1de Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 15 Jun 2017 13:32:15 +0900 Subject: Add helper functions to use gdb reverse-next. On my machine, gdb reverse-next does not work with memcpy and memset. Add naive implementation of those functions to override. --- include/mruby.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'include/mruby.h') diff --git a/include/mruby.h b/include/mruby.h index bd824ea91..995e1a743 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -1178,6 +1178,33 @@ MRB_API void mrb_show_copyright(mrb_state *mrb); MRB_API mrb_value mrb_format(mrb_state *mrb, const char *format, ...); +#if 0 +/* memcpy and memset does not work with gdb reverse-next on my box */ +/* use naive memcpy and memset instead */ +#undef memcpy +#undef memset +static inline void* +mrbmemcpy(void *dst, const void *src, size_t n) +{ + char *d = dst; + const char *s = src; + while (n--) + *d++ = *s++; + return d; +} +#define memcpy(a,b,c) mrbmemcpy(a,b,c) + +static inline void* +mrbmemset(void *s, int c, size_t n) +{ + char *t = s; + while (n--) + *t++ = c; + return s; +} +#define memset(a,b,c) mrbmemset(a,b,c) +#endif + MRB_END_DECL #endif /* MRUBY_H */ -- cgit v1.2.3