From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4385 invoked by alias); 1 Dec 2005 13:54:10 -0000 Received: (qmail 4375 invoked by uid 48); 1 Dec 2005 13:54:08 -0000 Date: Thu, 01 Dec 2005 13:54:00 -0000 Subject: [Bug c++/25203] New: [4.0] enable checking failure in g++.dg/opt/mmx2.C X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "ghazi at gcc dot gnu dot org" 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 X-SW-Source: 2005-12/txt/msg00053.txt.bz2 List-Id: On i686-pc-linux-gnu with current gcc-4.0.x, I'm getting a failure in g++.dg/opt/mmx2.C: http://gcc.gnu.org/ml/gcc-testresults/2005-11/msg01435.html I think it's triggered by turning on checking, because I don't see other people getting the error. I configured with: --enable-checking=yes,rtl I get an ICE here: Program received signal SIGSEGV, Segmentation fault. memory_operand (op=0xabababab, mode=VOIDmode) at ../../egcc-4.0-SVN20051130/gcc/recog.c:1279 1279 if (GET_CODE (inner) == SUBREG) Here the variable "inner" is set to op which is a parameter to the function memory_operand(). And memory_operand() is passed operands[2] from get_attr_memory(). The value is 0xabababab, i.e. uninitialized garbage. In insn-extract.c, only if checking is enabled, the function insn_extract memsets recog_data.operand ("operands" is a macro for this) to 0xab so that any uninitialized areas get this value. I don't see this failure with 4.1 or mainline. -- Summary: [4.0] enable checking failure in g++.dg/opt/mmx2.C Product: gcc Version: 4.0.3 Status: UNCONFIRMED Keywords: ice-checking, ssemmx Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ghazi at gcc dot gnu dot org GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25203