Author: marius
Date: Tue Jul 26 13:19:57 2011
New Revision: 224430
URL: http://svn.freebsd.org/changeset/base/224430

Log:
  MFC: r214210
  
  Avoid using memcpy() for copying 32bit chunks. This shrinks
  the resulting code a little.
  
  Approved by:    rpaulo (mentor)
  Reviewed by:    jhb

Modified:
  stable/7/sys/boot/i386/boot2/boot2.c
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/boot/i386/boot2/boot2.c
==============================================================================
--- stable/7/sys/boot/i386/boot2/boot2.c        Tue Jul 26 13:13:31 2011        
(r224429)
+++ stable/7/sys/boot/i386/boot2/boot2.c        Tue Jul 26 13:19:57 2011        
(r224430)
@@ -349,7 +349,7 @@ load(void)
            return;
        p += hdr.ex.a_data + roundup2(hdr.ex.a_bss, PAGE_SIZE);
        bootinfo.bi_symtab = VTOP(p);
-       memcpy(p, &hdr.ex.a_syms, sizeof(hdr.ex.a_syms));
+       *(uint32_t*)p = hdr.ex.a_syms;
        p += sizeof(hdr.ex.a_syms);
        if (hdr.ex.a_syms) {
            if (xfsread(ino, p, hdr.ex.a_syms))
@@ -386,7 +386,7 @@ load(void)
            if (xfsread(ino, &es, sizeof(es)))
                return;
            for (i = 0; i < 2; i++) {
-               memcpy(p, &es[i].sh_size, sizeof(es[i].sh_size));
+               *(Elf32_Word *)p = es[i].sh_size;
                p += sizeof(es[i].sh_size);
                fs_off = es[i].sh_offset;
                if (xfsread(ino, p, es[i].sh_size))
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to