aboutsummaryrefslogtreecommitdiffstats
path: root/zahl-internals.h
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2016-04-30 02:20:20 +0200
committerMattias Andrée <maandree@kth.se>2016-04-30 02:20:20 +0200
commit599a71a058b8913a4d166485fff6b964247763e9 (patch)
tree99334b6a64ffaa4c926b4e72df87df555d5479b3 /zahl-internals.h
parentSpecify optimisation level on functions in zahl-inlines.h (diff)
downloadlibzahl-599a71a058b8913a4d166485fff6b964247763e9.tar.gz
libzahl-599a71a058b8913a4d166485fff6b964247763e9.tar.bz2
libzahl-599a71a058b8913a4d166485fff6b964247763e9.tar.xz
Some optimisations
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
-rw-r--r--zahl-internals.h18
1 files changed, 10 insertions, 8 deletions
diff --git a/zahl-internals.h b/zahl-internals.h
index 83fd2e6..4901b6d 100644
--- a/zahl-internals.h
+++ b/zahl-internals.h
@@ -105,16 +105,18 @@ struct zahl {
void libzahl_realloc(struct zahl *, size_t);
-ZAHL_O3 static inline void
-libzahl_memcpy(zahl_char_t *restrict d, const zahl_char_t *restrict s, register size_t n)
+ZAHL_O2 static inline void
+libzahl_memcpy(register zahl_char_t *restrict d, register const zahl_char_t *restrict s, size_t n)
{
- while (n--)
- d[n] = s[n];
+ size_t i;
+ for (i = 0; i < n; i++)
+ d[i] = s[i];
}
-ZAHL_O3 static inline void
-libzahl_memset(zahl_char_t *a, register zahl_char_t v, register size_t n)
+ZAHL_O2 static inline void
+libzahl_memset(register zahl_char_t *a, register zahl_char_t v, size_t n)
{
- while (n--)
- a[n] = v;
+ size_t i;
+ for (i = 0; i < n; i++)
+ a[i] = v;
}