From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12837 invoked by alias); 30 Nov 2009 21:32:03 -0000 Received: (qmail 12828 invoked by uid 22791); 30 Nov 2009 21:32:02 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 30 Nov 2009 21:31:58 +0000 Received: from int-mx03.intmail.prod.int.phx2.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id nAULVvmq000797 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 30 Nov 2009 16:31:57 -0500 Received: from [172.17.72.2] (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx03.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id nAULVuJD031338; Mon, 30 Nov 2009 16:31:56 -0500 Message-ID: <4B1439CB.6060306@redhat.com> Date: Mon, 30 Nov 2009 21:50:00 -0000 From: Jeff Law User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4pre) Gecko/20090922 Fedora/3.0-3.9.b4.fc12 Thunderbird/3.0b4 MIME-Version: 1.0 To: "Amker.Cheng" CC: gcc@gcc.gnu.org Subject: Re: Question about filling multi delay slots References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-11/txt/msg00839.txt.bz2 On 11/25/09 07:34, Amker.Cheng wrote: > Hi All : > It's possible to define multi delay slots for branch insns by using > define_delay, > and different slot should satisfy its own attribute test "delay-n". > > Here comes question, in function "fill_simple_delay_slots", seems > it only uses > slots_filled to record how many slots needs to fill, and puts slot > insns already found > in delay_list. I can't find any codes keeping the information about > which insn in > delay_list belongs to which slot(defined in "define_delay"). So, how does gcc > make sure that insns in delay_list go into right delay slot? > First, it's worth noting very few targets support multiple delay slots and as a result that code isn't tested nearly as well as handling of single delay slots. I'm pretty sure we assume that the first insn we add to the delay list always goes in the first slot, 2nd insn in the 2nd slot and so-on. Jeff