From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3988 invoked by alias); 8 Apr 2013 23:40:58 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 3962 invoked by uid 48); 8 Apr 2013 23:40:54 -0000 From: "xanclic at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug middle-end/56888] New: memcpy implementation optimized as a call to memcpy Date: Mon, 08 Apr 2013 23:40:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: middle-end X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: xanclic at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-SW-Source: 2013-04/txt/msg00699.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D56888 Bug #: 56888 Summary: memcpy implementation optimized as a call to memcpy Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned@gcc.gnu.org ReportedBy: xanclic@gmail.com Created attachment 29833 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=3D29833 Naive memcpy implementation Compiling the attached trivial memcpy implementation with -O3 -ffreestanding -fno-builtin -nodefaultlibs -nostdlib yields a memcpy which calls itself. Although the man page explicitly supports this behavior (=E2=80=9CThe compi= ler may generate calls to "memcmp", "memset", "memcpy" and "memmove".=E2=80=9D), I = find it hard to write a working compiler-optimized memcpy under these circumstances. Using -O2 instead of -O3 =E2=80=9Cfixes=E2=80=9D this. Everything worked for me up until GCC 4.7.3, I'm using Arch Linux, my GCC h= as been configured with: /build/src/gcc-4.8.0/configure --prefix=3D/usr --libdir=3D/usr/lib --libexecdir=3D/usr/lib --mandir=3D/usr/share/man --infodir=3D/usr/share/info --with-bugurl=3Dhttps://bugs.archlinux.org/ --enable-languages=3Dc,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=3Dposix --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=3Dgnu --disable-libstdcxx-p= ch --enable-gnu-unique-object --enable-linker-build-id --enable-cloog-backend= =3Disl --disable-cloog-version-check --enable-lto --enable-gold --enable-ld=3Ddefa= ult --enable-plugin --with-plugin-ld=3Dld.gold --with-linker-hash-style=3Dgnu --disable-install-libiberty --enable-multilib --disable-libssp --disable-we= rror --enable-checking=3Drelease. >>From gcc-bugs-return-419555-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Apr 09 01:14:22 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 16310 invoked by alias); 9 Apr 2013 01:14:22 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 16246 invoked by uid 48); 9 Apr 2013 01:14:18 -0000 From: "xyqi at marvell dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/54338] internal compiler error: in find_costs_and_classes, at ira-costs.c:1711 Date: Tue, 09 Apr 2013 01:14:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Keywords: ice-on-valid-code X-Bugzilla-Severity: normal X-Bugzilla-Who: xyqi at marvell dot com X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-SW-Source: 2013-04/txt/msg00700.txt.bz2 Content-length: 770 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54338 Xinyu Qi changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED --- Comment #5 from Xinyu Qi 2013-04-09 01:14:16 UTC --- Fixed by the commit r197576 | ramana | 2013-04-08 20:19:02 +0800 (Mon, 08 Apr 2013) | 10 lines Fix PR target/54338 - Include IWMMXT_GR_REGS in ALL_REGS. For Xinyu Qi. 2013-04-08 Xinyu Qi PR target/54338 * config/arm/arm.h (REG_CLASS_CONTENTS): Include IWMMXT_GR_REGS in ALL_REGS.