[Bug middle-end/27567] [4.0/4.1/4.2 Regression] __builtin_memcpy generates redundant stores/moves.
--- Comment #9 from pluto at agmk dot net 2007-02-20 10:25 --- adjust summary ( 4.2 regression status reopened ). -- pluto at agmk dot net changed: What|Removed |Added Summary|[4.0/4.1 Regression]|[4.0/4.1/4.2 Regression] |__builtin_memcpy generates |__builtin_memcpy generates |redundant stores/moves. |redundant stores/moves. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27567
[Bug middle-end/27567] [4.0/4.1/4.2 Regression] __builtin_memcpy generates redundant stores/moves.
--- Comment #6 from jakub at gcc dot gnu dot org 2006-09-02 06:55 --- Subject: Bug 27567 Author: jakub Date: Sat Sep 2 06:55:09 2006 New Revision: 116656 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116656 Log: PR middle-end/27567 * builtins.c (fold_builtin_memcpy, fold_builtin_memmove): Remove. (fold_builtin_mempcpy): Rename to... (fold_builtin_memory_op): ... this. Optimize one element copy into an assignment. (fold_builtin_memset, fold_builtin_bzero, fold_builtin_bcopy): New functions. (expand_builtin_strcpy, expand_builtin_strncpy): Handle COMPOUND_EXPR. (expand_builtin_memcpy, expand_builtin_mempcpy, expand_builtin_memmove): Likewise. Use fold_builtin_memory_op. (fold_builtin_1): Handle BUILT_IN_MEMSET, BUILT_IN_BZERO and BUILT_IN_BCOPY. Use fold_builtin_memory_op for BUILT_IN_MEM{CPY,PCPY,MOVE}. Modified: trunk/gcc/ChangeLog trunk/gcc/builtins.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27567
[Bug middle-end/27567] [4.0/4.1/4.2 Regression] __builtin_memcpy generates redundant stores/moves.
--- Comment #5 from patchapp at dberlin dot org 2006-08-30 15:50 --- Subject: Bug number PR middle-end/27567 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-08/msg01134.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27567
[Bug middle-end/27567] [4.0/4.1/4.2 Regression] __builtin_memcpy generates redundant stores/moves.
--- Comment #4 from jakub at gcc dot gnu dot org 2006-08-29 14:35 --- Playing with fold_builtin_mem*. -- jakub at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jakub at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2006-05-12 08:27:14 |2006-08-29 14:35:31 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27567
[Bug middle-end/27567] [4.0/4.1/4.2 Regression] __builtin_memcpy generates redundant stores/moves.
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-08-27 19:00 --- For PPC, we get: stw 3,-16(1) stw 3,48(1) nop nop lfs 1,-16(1) blr Notice the extra store, that does not need to be there. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|rtl-optimization|middle-end GCC build triplet|x86-*-linux | GCC host triplet|x86-*-linux | GCC target triplet|x86-*-linux | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27567