From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4153 invoked by alias); 17 Oct 2008 22:20:17 -0000 Received: (qmail 3931 invoked by uid 48); 17 Oct 2008 22:18:56 -0000 Date: Fri, 17 Oct 2008 22:20:00 -0000 Message-ID: <20081017221856.3930.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/37809] [4.2/4.3/4.4 Regression] Incorrect code with MMX right shift __builtin_ia32_psradi In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "suckfish at ihug dot co dot nz" 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: 2008-10/txt/msg01176.txt.bz2 ------- Comment #6 from suckfish at ihug dot co dot nz 2008-10-17 22:18 ------- Pleasantly, my fears that this was just the tip of the iceburg seems to be wrong. Writing some test cases, found another bug involving a shift, and also the ICE below [fixed by some combination of change above and 38707 fix.] Will fix the remaining case & post patches to gcc-patches list. #include typedef int v2si __attribute__ ((vector_size (8))); v2si shiftU (v2si y) { return _m_psrldi (_m_psrldi (y, 0), 0); } $ gcc -O shift2.c shift2.c: In function ‘shiftU’: shift2.c:6: internal compiler error: in trunc_int_for_mode, at explow.c:55 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Preprocessed source stored into /tmp/cckqI2oC.out file, please attach this to your bugreport. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37809