diff options
author | Paul Eggert <[email protected]> | 2013-10-04 00:36:22 -0700 |
---|---|---|
committer | Paul Eggert <[email protected]> | 2013-10-04 00:36:22 -0700 |
commit | 4eed3157327f8406921658442a11af7e9d84d603 (patch) | |
tree | e727a3017628ce840707d71998d4f6423a8fbde3 /admin | |
parent | 157fec2e190a84345138a0cc69e35f177c4d4a56 (diff) |
Use hardware support for byteswapping on glibc x86 etc.
On Fedora 19 x86-64, the new bswap_64 needs 1 instruction,
whereas the old swap64 needed 30.
* admin/merge-gnulib (GNULIB_MODULES): Add byteswap.
* lib/byteswap.in.h, m4/byteswap.m4: New files, copied from Gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* src/fringe.c (init_fringe_bitmap) [WORDS_BIGENDIAN]:
* src/sound.c (le2hl, le2hs, be2hl) [!WINDOWSNT]:
Use byteswap.h's macros to swap bytes.
* src/lisp.h (swap16, swap32, swap64): Remove.
All uses replaced by bswap_16, bswap_32, bswap_64.
Diffstat (limited to 'admin')
-rw-r--r-- | admin/ChangeLog | 5 | ||||
-rwxr-xr-x | admin/merge-gnulib | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/admin/ChangeLog b/admin/ChangeLog index 29118deba7..837a0a2e6d 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog @@ -1,3 +1,8 @@ +2013-10-04 Paul Eggert <[email protected]> + + Use hardware support for byteswapping on glibc x86 etc. + * merge-gnulib (GNULIB_MODULES): Add byteswap. + 2013-08-28 Paul Eggert <[email protected]> * unidata/Makefile.in (SHELL): Now @SHELL@, not /bin/sh, diff --git a/admin/merge-gnulib b/admin/merge-gnulib index 97126704d1..aba0fa67a1 100755 --- a/admin/merge-gnulib +++ b/admin/merge-gnulib @@ -26,7 +26,7 @@ GNULIB_URL=git://git.savannah.gnu.org/gnulib.git GNULIB_MODULES=' - alloca-opt c-ctype c-strcase + alloca-opt byteswap c-ctype c-strcase careadlinkat close-stream crypto/md5 crypto/sha1 crypto/sha256 crypto/sha512 dtoastr dtotimespec dup2 environ execinfo faccessat fcntl fcntl-h fdatasync fdopendir filemode fstatat fsync |