summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/Cmm.h18
1 files changed, 2 insertions, 16 deletions
diff --git a/includes/Cmm.h b/includes/Cmm.h
index 779416b6da..3c90307a77 100644
--- a/includes/Cmm.h
+++ b/includes/Cmm.h
@@ -849,14 +849,7 @@
\
dst_p = dst + SIZEOF_StgMutArrPtrs; \
src_p = src + SIZEOF_StgMutArrPtrs + WDS(offset); \
- while: \
- if (n != 0) { \
- n = n - 1; \
- W_[dst_p] = W_[src_p]; \
- dst_p = dst_p + WDS(1); \
- src_p = src_p + WDS(1); \
- goto while; \
- } \
+ prim %memcpy(dst_p, src_p, n * SIZEOF_W, SIZEOF_W); \
\
return (dst);
@@ -931,13 +924,6 @@
\
dst_p = dst + SIZEOF_StgSmallMutArrPtrs; \
src_p = src + SIZEOF_StgSmallMutArrPtrs + WDS(offset); \
- while: \
- if (n != 0) { \
- n = n - 1; \
- W_[dst_p] = W_[src_p]; \
- dst_p = dst_p + WDS(1); \
- src_p = src_p + WDS(1); \
- goto while; \
- } \
+ prim %memcpy(dst_p, src_p, n * SIZEOF_W, SIZEOF_W); \
\
return (dst);