This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] New version of libmpx with new memmove wrapper


gcc/testsuite/ChangeLog
2015-10-27  Tsvetkova Alexandra  <aleksandra.tsvetkova@intel.com>

    * gcc.target/i386/mpx/memmove.c: New test for __mpx_wrapper_memmove.

libmpx/ChangeLog
2015-10-28  Tsvetkova Alexandra  <aleksandra.tsvetkova@intel.com>

    * mpxrt/Makefile.am (libmpx_la_LDFLAGS): Add -version-info option.
    * libmpxwrap/Makefile.am (libmpx_la_LDFLAGS): Likewise + includes fixed.
    * libmpx/Makefile.in: Regenerate.
    * mpxrt/Makefile.in: Regenerate.
    * libmpxwrap/Makefile.in: Regenerate.
    * mpxrt/libtool-version: New version.
    * libmpxwrap/libtool-version: Likewise.
    * mpxrt/libmpx.map: Add new version and a new symbol.
    * mpxrt/mpxrt.h: New file.
    * mpxrt/mpxrt.c (NUM_L1_BITS): Moved to mpxrt.h.
    (REG_IP_IDX): Moved to mpxrt.h.
    (REX_PREFIX): Moved to mpxrt.h.
    (XSAVE_OFFSET_IN_FPMEM): Moved to mpxrt.h.
    (MPX_L1_SIZE): Moved to mpxrt.h.
    * libmpxwrap/mpx_wrappers.c: (__mpx_wrapper_memmove): Rewritten.
    (mpx_pointer): New type.
    (mpx_bt_entry): New type.
    (alloc_bt): New function.
    (get_bt): New function.
    (copy_if_possible): New function.
    (copy_if_possible_from_end): New function.
    (move_bounds): New function.

Memmove became 2 times slower on 8 bytes. On bigger lengths (>64 bytes) it became up to 3,5 times better with pointers, up to 21 times better without pointers.

Attachment: patch_v3.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]