From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7576 invoked by alias); 16 Feb 2006 11:42:07 -0000 Received: (qmail 7568 invoked by uid 22791); 16 Feb 2006 11:42:06 -0000 X-Spam-Check-By: sourceware.org Received: from dair.pair.com (HELO dair.pair.com) (209.68.1.49) by sourceware.org (qpsmtpd/0.31) with SMTP; Thu, 16 Feb 2006 11:42:00 +0000 Received: (qmail 89080 invoked by uid 20157); 16 Feb 2006 11:41:57 -0000 Date: Thu, 16 Feb 2006 11:42:00 -0000 From: Hans-Peter Nilsson To: DJ Delorie cc: tnt@246tNt.com, gcc@gcc.gnu.org Subject: Re: Design a microcontroller for gcc In-Reply-To: <200602160321.k1G3LHVm032715@greed.delorie.com> Message-ID: References: <43F2666E.70703@246tNt.com> <43F3C6F8.7080007@246tNt.com> <200602160321.k1G3LHVm032715@greed.delorie.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2006-02/txt/msg00294.txt.bz2 On Wed, 15 Feb 2006, DJ Delorie wrote: I wrote: > > Anyway, at least keep a way to add reg+reg and reg+integer, load and > > store of memory and load of integer and address without condition > > code effects and your port has a chance to avoid the related bloat. > > At least, move/load/store shouldn't touch flags. I may have listed more operations than necessary, but the important bit is that you need to form arbitrary addresses in the stack frame without touching flags. If for any const_int N, (plus reg N) is a valid address for moves to and from memory that doesn't touch flags, then I suppose you don't *need* an "add" that doesn't touch flags. brgds, H-P