aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/lisp.h7
2 files changed, 10 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 960639af152..ffd706a9a82 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
12012-08-21 Paul Eggert <eggert@cs.ucla.edu>
2
3 * lisp.h (vcopy): Use memcpy rather than our own loop.
4 This fixes a performance regression introduced by the recent
5 addition of vcopy. This means 'vcopy' will need to be modified
6 for a copying collector, but that's OK. Also, tighten the
7 checking in the assertion.
8
12012-08-21 Eli Zaretskii <eliz@gnu.org> 92012-08-21 Eli Zaretskii <eliz@gnu.org>
2 10
3 * w32uniscribe.c (uniscribe_shape): Fix producing gstring 11 * w32uniscribe.c (uniscribe_shape): Fix producing gstring
diff --git a/src/lisp.h b/src/lisp.h
index 587e584b091..30bbb65f4fa 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -2349,11 +2349,8 @@ gc_aset (Lisp_Object array, ptrdiff_t idx, Lisp_Object val)
2349LISP_INLINE void 2349LISP_INLINE void
2350vcopy (Lisp_Object v, ptrdiff_t offset, Lisp_Object *args, ptrdiff_t count) 2350vcopy (Lisp_Object v, ptrdiff_t offset, Lisp_Object *args, ptrdiff_t count)
2351{ 2351{
2352 ptrdiff_t i; 2352 eassert (0 <= offset && 0 <= count && offset + count <= ASIZE (v));
2353 2353 memcpy (XVECTOR (v)->contents + offset, args, count * sizeof *args);
2354 eassert (offset + count <= ASIZE (v));
2355 for (i = 0; i < count; i++)
2356 ASET (v, offset + i, args[i]);
2357} 2354}
2358 2355
2359/* Functions to modify hash tables. */ 2356/* Functions to modify hash tables. */