From patchwork Sun May 15 17:43:06 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Uros Bizjak X-Patchwork-Id: 95657 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 EEF9BB6EF1 for ; Mon, 16 May 2011 03:43:29 +1000 (EST) Received: (qmail 21121 invoked by alias); 15 May 2011 17:43:27 -0000 Received: (qmail 21096 invoked by uid 22791); 15 May 2011 17:43:25 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL, BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, RFC_ABUSE_POST, TW_ZJ, T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from mail-pw0-f47.google.com (HELO mail-pw0-f47.google.com) (209.85.160.47) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 15 May 2011 17:43:07 +0000 Received: by pwj9 with SMTP id 9so2076516pwj.20 for ; Sun, 15 May 2011 10:43:07 -0700 (PDT) MIME-Version: 1.0 Received: by 10.142.78.12 with SMTP id a12mr2347849wfb.268.1305481386959; Sun, 15 May 2011 10:43:06 -0700 (PDT) Received: by 10.143.158.12 with HTTP; Sun, 15 May 2011 10:43:06 -0700 (PDT) Date: Sun, 15 May 2011 19:43:06 +0200 Message-ID: Subject: [PATCH, i386]: Simplify movdf_internal insn condition a bit From: Uros Bizjak To: gcc-patches@gcc.gnu.org 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 Hello! optimize_size clears TARGET_INTEGER_DFMODE_MOVES, so we can simplify movdf_internal insn condition a bit. 2011-05-15 Uros Bizjak * config/i386/i386.md (*movdf_internal): Simplify insn condition. Tested on x86_64-pc-linux-gnu {,-m32}, committed to mainline SVN. Uros. Index: config/i386/i386.md =================================================================== --- config/i386/i386.md (revision 173771) +++ config/i386/i386.md (working copy) @@ -3050,15 +3050,14 @@ && (!can_create_pseudo_p () || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE) || GET_CODE (operands[1]) != CONST_DOUBLE - || (optimize_function_for_size_p (cfun) + || (!TARGET_INTEGER_DFMODE_MOVES && ((!(TARGET_SSE2 && TARGET_SSE_MATH) && standard_80387_constant_p (operands[1]) > 0) || (TARGET_SSE2 && TARGET_SSE_MATH && standard_sse_constant_p (operands[1]))) && !memory_operand (operands[0], DFmode)) || ((TARGET_INTEGER_DFMODE_MOVES - || (optimize_function_for_size_p (cfun) - && !TARGET_MEMORY_MISMATCH_STALL)) + || !TARGET_MEMORY_MISMATCH_STALL) && memory_operand (operands[0], DFmode)))" { switch (which_alternative)