From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14456 invoked by alias); 13 Feb 2007 21:12:02 -0000 Received: (qmail 14448 invoked by uid 22791); 13 Feb 2007 21:12:02 -0000 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 13 Feb 2007 21:11:57 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.1/8.13.1) with ESMTP id l1DLBtBk006962; Tue, 13 Feb 2007 16:11:55 -0500 Received: from pobox.toronto.redhat.com (pobox.toronto.redhat.com [172.16.14.4]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id l1DLBrRO024247; Tue, 13 Feb 2007 16:11:54 -0500 Received: from touchme.toronto.redhat.com (IDENT:postfix@touchme.toronto.redhat.com [172.16.14.9]) by pobox.toronto.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id l1DLBrYY004558; Tue, 13 Feb 2007 16:11:53 -0500 Received: from ton.toronto.redhat.com (ton.toronto.redhat.com [172.16.14.15]) by touchme.toronto.redhat.com (Postfix) with ESMTP id 6D0388001CA; Tue, 13 Feb 2007 16:11:53 -0500 (EST) Received: from ton.toronto.redhat.com (localhost.localdomain [127.0.0.1]) by ton.toronto.redhat.com (8.13.1/8.13.1) with ESMTP id l1DLBroD027003; Tue, 13 Feb 2007 16:11:53 -0500 Received: (from fche@localhost) by ton.toronto.redhat.com (8.13.1/8.13.1/Submit) id l1DLBqbE027002; Tue, 13 Feb 2007 16:11:52 -0500 Date: Tue, 13 Feb 2007 21:12:00 -0000 From: "Frank Ch. Eigler" To: Joern Rennecke Cc: cgen@sources.redhat.com Subject: Re: delayed branches and zero overhead loops Message-ID: <20070213211152.GD20088@redhat.com> References: <20070213153717.GA12710@elsdt-razorfish.arc.com> <20070213185118.GA20088@redhat.com> <20070213205905.GB16492@elsdt-razorfish.arc.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070213205905.GB16492@elsdt-razorfish.arc.com> User-Agent: Mutt/1.4.1i X-IsSubscribed: yes Mailing-List: contact cgen-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cgen-owner@sourceware.org X-SW-Source: 2007-q1/txt/msg00042.txt.bz2 Hi - > The problem is that long immediates are available to a lot of different > instruction formats by using an encoding that looks like 'core register 62'. > Most of the instructions have two fields that can specify that. > Trying to express this with separate formats is not feasible, a this would > only quadruple the number of insn definition (double the number of formats > but awkward decoding), This part does not look that scary. It's milder than m68k addressing modes. You can use cgen macros to generate instruction variants like that. We have processed ports with hundreds or maybe even thousands of instructions, and while it ain't fast to run through, it still works. > but also cause trouble making the decoder generator comprehend where > the boundaries between the different formats are. The decoder generator is fully automatic. If you represent decodable bits without cheating, it will do a reasonable job. - FChE