From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8227 invoked by alias); 23 Nov 2012 07:51:02 -0000 Received: (qmail 7224 invoked by uid 48); 23 Nov 2012 07:49:42 -0000 From: "ubizjak at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/53071] Wrong instruction replacement when compiling for xop Date: Fri, 23 Nov 2012 07:51: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: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: ubizjak at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: 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 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 X-SW-Source: 2012-11/txt/msg02170.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53071 --- Comment #1 from Uros Bizjak 2012-11-23 07:49:41 UTC --- Resulting asm is quite different w/ current mainline: _Z4testU8__vectorxS_S_: vmovdqa %xmm2, -24(%rsp) vpsrlq $32, %xmm0, %xmm3 vpmuldq %xmm1, %xmm0, %xmm2 vpmuldq %xmm1, %xmm3, %xmm1 vpand .LC0(%rip), %xmm1, %xmm1 vpsrlq $32, %xmm2, %xmm2 vmovd -24(%rsp), %xmm4 vpor %xmm1, %xmm2, %xmm1 vpaddd %xmm0, %xmm1, %xmm1 vpsrad $31, %xmm0, %xmm0 vpsrad %xmm4, %xmm1, %xmm1 vpsubd %xmm0, %xmm1, %xmm0 ret _Z5test2U8__vectorxS_S_: vpxor %xmm3, %xmm3, %xmm3 vmovdqa %xmm2, -24(%rsp) vpmuldq %xmm1, %xmm0, %xmm2 vpsrlq $32, %xmm2, %xmm2 vpmacsdqh %xmm3, %xmm1, %xmm0, %xmm1 vpand .LC0(%rip), %xmm1, %xmm1 vmovd -24(%rsp), %xmm4 vpor %xmm1, %xmm2, %xmm1 vpaddd %xmm0, %xmm1, %xmm1 vpsrad $31, %xmm0, %xmm0 vpsrad %xmm4, %xmm1, %xmm1 vpsubd %xmm0, %xmm1, %xmm0 ret