From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7082 invoked by alias); 7 May 2002 21:36:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 7063 invoked by uid 71); 7 May 2002 21:36:01 -0000 Resent-Date: 7 May 2002 21:36:01 -0000 Resent-Message-ID: <20020507213601.7062.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, Jim Wilson Received:(qmail 4042 invoked from network); 7 May 2002 21:28:45 -0000 Received: from unknown (HELO potter.sfbay.redhat.com) (205.180.83.107) by sources.redhat.com with SMTP; 7 May 2002 21:28:45 -0000 Received: from tonopah.toronto.redhat.com (tonopah.toronto.redhat.com [172.16.14.91]) by potter.sfbay.redhat.com (8.11.6/8.11.6) with ESMTP id g47LRcv11704 for ; Tue, 7 May 2002 14:27:38 -0700 Received: (from wilson@localhost) by tonopah.toronto.redhat.com (8.11.6/8.11.6) id g47LSgC31097; Tue, 7 May 2002 17:28:42 -0400 Message-Id:<200205072128.g47LSgC31097@tonopah.toronto.redhat.com> Date: Tue, 07 May 2002 14:36:00 -0000 From: Jim Wilson To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:3.113 Subject: middle-end/6600: i960 toolchain hits abort in c_readstr X-SW-Source: 2002-05/txt/msg00203.txt.bz2 List-Id: >Number: 6600 >Category: middle-end >Synopsis: i960 toolchain hits abort in c_readstr >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Tue May 07 14:36:00 PDT 2002 >Closed-Date: >Last-Modified: >Originator: >Release: 3.2 20020426 (experimental) >Organization: Red Hat >Environment: System: Linux tonopah.toronto.redhat.com 2.4.9-31smp #1 SMP Tue Feb 26 06:55:00 EST 2002 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i960-unknown-coff configured with: ../src/configure --target=i960-coff >Description: If you have a program that calls strcpy/memcpy with a constant string of 16 bytes or more, and you compile with optimization, then gcc aborts in c_readstr in builtins.c. The i960 toolchain has instructions to move 16 bytes (4 registers) at a time. Constant strings get 16 byte alignment so that we can use these instructions. strcpy/memcpy are trying to optimize calls with a constant string as a parameter. Unfortunately, you can only put 8 bytes at a time in a CONST_DOUBLE, so c_readstr aborts when asked to convert 16 bytes of string into a single RTL constant. >How-To-Repeat: Compile gcc.c-torture/execute/20000703-1.c with -O for an i960-coff target. >Fix: >Release-Note: >Audit-Trail: >Unformatted: