From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13690 invoked by alias); 9 Apr 2004 18:01:18 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 13590 invoked by uid 48); 9 Apr 2004 18:01:17 -0000 Date: Fri, 09 Apr 2004 18:01:00 -0000 Message-ID: <20040409180117.13589.qmail@sources.redhat.com> From: "fjahanian at apple dot com" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20040409073632.14899.bonzini@gnu.org> References: <20040409073632.14899.bonzini@gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug target/14899] [3.5 Regression] wrong code due to change in compatibility rules for vector types X-Bugzilla-Reason: CC X-SW-Source: 2004-04/txt/msg00844.txt.bz2 List-Id: ------- Additional Comments From fjahanian at apple dot com 2004-04-09 18:01 ------- I have tried following patch and it seems to work in my very limited testing. Index: c-typeck.c ============================================================ ======= RCS file: /cvs/gcc/gcc/gcc/c-typeck.c,v retrieving revision 1.196.2.43.2.3 diff -c -p -r1.196.2.43.2.3 c-typeck.c *** c-typeck.c 7 Apr 2004 22:09:14 -0000 1.196.2.43.2.3 --- c-typeck.c 9 Apr 2004 18:00:03 -0000 *************** comptypes (tree type1, tree type2, int f *** 577,583 **** /* The target might allow certain vector types to be compatible. */ val = targetm.vector_opaque_p (t1) || targetm.vector_opaque_p (t2) ! || TYPE_MODE (t1) == TYPE_MODE (t2); break; default: --- 577,584 ---- /* The target might allow certain vector types to be compatible. */ val = targetm.vector_opaque_p (t1) || targetm.vector_opaque_p (t2) ! || (TYPE_MODE (t1) == TYPE_MODE (t2) ! && TREE_UNSIGNED(t1) == TREE_UNSIGNED(t2)); break; default: -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14899