Hello! x86-specific part of this patch was committed to the trunk recently. There is also target-independent part, which covers memset/memcopy for the smallest sizes (from 1 to ~256 bytes). In contrast to existing implementation, it has a cost model to choose the fastest move-mode (which could be a vector move-mode). This helps to increase the performance on small sizes - these cases are especially important, because libcalls can't be efficiently used here due to call overheads.
Could anyone from middle-end maintainers review it, when I updated it to the latest changes? Thanks! On 27 October 2011 17:24, Uros Bizjak <[email protected]> wrote: > Hello! > >> The GCC trunk is still in stage1. Stage1 will last until >> Nov 7th (including, use your timezone to your advantage) after >> which we will have been in stage1 for nearth 8 months. >> In stage3 the trunk will be open for general bugfixing, no >> new features will be accepted. > > There is a patch that implements usage of vector instructions in > memmov/memset expanding [1]. The patch was not reviewed for quite some > time, but IIRC, we said that patches that were submitted before Stage > 1 closes are still eligible for later stages (after a review of > course). > > I think that this feature certainly improves gcc (also taking into > account recent glibc changes in this area), and IMO implements an > important feature for recent processors. I would like to motivate > middle-end and target maintainers to consider the patch for a review > before stage 1 closes, and ultimately ask Release Managers to decide > how to proceed with this patch. > > [1] http://gcc.gnu.org/ml/gcc-patches/2011-10/msg02392.html > > Thanks, > Uros. > -- --- Best regards, Michael V. Zolotukhin, Software Engineer Intel Corporation.
