From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1409 invoked by alias); 25 Jul 2006 13:39:19 -0000 Received: (qmail 1395 invoked by uid 22791); 25 Jul 2006 13:39:18 -0000 X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.45.12) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 25 Jul 2006 13:39:14 +0000 Received: from stewie.corp.google.com (stewie.corp.google.com [172.24.0.49]) by smtp-out.google.com with ESMTP id k6PDd8ZX024158; Tue, 25 Jul 2006 06:39:08 -0700 Received: from smtp.corp.google.com (mordor.corp.google.com [192.168.15.226]) by stewie.corp.google.com with ESMTP id k6PDd3aG017679 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 25 Jul 2006 06:39:05 -0700 Received: from localhost.localdomain.google.com (adsl-71-133-8-30.dsl.pltn13.pacbell.net [71.133.8.30]) (authenticated bits=0) by smtp.corp.google.com (8.13.7/8.13.7) with ESMTP id k6PDd2os017283 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 25 Jul 2006 06:39:02 -0700 To: "Petar Bajic" Cc: Subject: Re: adding movz to machine description References: <001c01c6acab$dac77e50$4900a8c0@niit.micronasnit.com> <00d601c6afd2$a6f38d10$4900a8c0@niit.micronasnit.com> From: Ian Lance Taylor Date: Tue, 25 Jul 2006 13:39:00 -0000 In-Reply-To: <00d601c6afd2$a6f38d10$4900a8c0@niit.micronasnit.com> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-IsSubscribed: yes Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org X-SW-Source: 2006-07/txt/msg00320.txt.bz2 "Petar Bajic" writes: > > It may be correct for the pattern to not be matched with expand. It's > > OK if the if-conversion pass picks it up, which seems to be what is > > happening for you. > > > > If the generated code you are getting is wrong, then problem is likely > > in the define_insn patterns somewhere. They don't correct represent > > what the instruction does, or they don't correctly implement it. > > > > Ian > > After some modifications, I managed to make gcc use my define_expand - > I see it in debug.11.ce1 and following files, but then it disapears in > debug.17.combine, and in the end it does not appear in asm code. How > to find out what kills it? :) That means that the combine pass has replaced it with something else which is equivalent which the combine pass thought would be cheaper. Look at the generated RTL to see what it turned into. If the resulting code is less efficient to run, then you need to adjust your costs (the TARGET_RTX_COSTS hook). Ian