From patchwork Fri Oct 29 16:43:38 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Koning X-Patchwork-Id: 69610 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 84F00B6F11 for ; Sat, 30 Oct 2010 03:44:35 +1100 (EST) Received: (qmail 18396 invoked by alias); 29 Oct 2010 16:44:33 -0000 Received: (qmail 18385 invoked by uid 22791); 29 Oct 2010 16:44:32 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL, BAYES_00, T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from ausxippc101.us.dell.com (HELO ausxippc101.us.dell.com) (143.166.85.207) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 29 Oct 2010 16:44:27 +0000 X-Loopcount0: from 10.152.240.141 From: Paul Koning Subject: [PATCH] pdp11: fix ICE in movdi Date: Fri, 29 Oct 2010 12:43:38 -0400 Message-Id: To: gcc-patches Mime-Version: 1.0 (Apple Message framework v1081) Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org movdi would sometimes move from one CPU register set to another, which wasn't handled. This patch fixes that; this cures a number of testsuite failures. Committed. paul ChangeLog: 2010-10-29 Paul Koning * config/pdp11/pdp11.c (output_move_quad): Fix ICE for CPU register to register move. Index: config/pdp11/pdp11.c =================================================================== --- config/pdp11/pdp11.c (revision 166065) +++ config/pdp11/pdp11.c (working copy) @@ -695,12 +695,6 @@ gcc_assert (optype0 != RNDOP && optype1 != RNDOP); - /* check if we move a CPU reg to an FPU reg, or vice versa! */ - if (optype0 == REGOP && optype1 == REGOP) - /* bogus - 64 bit cannot reside in CPU! */ - gcc_assert (!CPU_REG_P(REGNO(operands[0])) - && !CPU_REG_P (REGNO(operands[1]))); - if (optype0 == REGOP || optype1 == REGOP) { /* check for use of clrd????