From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27479 invoked by alias); 24 Sep 2003 18:14:20 -0000 Mailing-List: contact cgen-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cgen-owner@sources.redhat.com Received: (qmail 11991 invoked from network); 24 Sep 2003 17:54:58 -0000 Received: from unknown (HELO zenia.home) (12.223.225.216) by sources.redhat.com with SMTP; 24 Sep 2003 17:54:58 -0000 Received: by zenia.home (Postfix, from userid 5433) id EA0F420766; Wed, 24 Sep 2003 12:51:29 -0500 (EST) To: cgen@sources.redhat.com Subject: RFA: hardware can have ISA attributes, too From: Jim Blandy Date: Wed, 24 Sep 2003 18:15:00 -0000 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2003-q3/txt/msg00066.txt.bz2 I don't really feel like I understand CGEN's data model well enough to know whether this is really appropriate, or just a kludge. Here's the motivation. We have a toolchain that supports several different machines within a family; some register sets are present on some machines, but not on others. Given an ISA, we want to be able to traverse the hardware list and see which register sets are available on that ISA. So along with this will come another patch that produces an extern declaration for @arch@_cgen_hw_table, so we can traverse it. What's the best way to do this? 2003-07-22 Jim Blandy * mach.scm (def-isa-attr!): hardware can have ISA attributes, too. Index: cgen/mach.scm =================================================================== RCS file: /cvs/cvsfiles/devo/cgen/mach.scm,v retrieving revision 1.47.34.1 diff -c -r1.47.34.1 mach.scm *** cgen/mach.scm 5 Jun 2002 22:18:35 -0000 1.47.34.1 --- cgen/mach.scm 22 Jul 2003 16:47:16 -0000 *************** *** 501,507 **** ; for it. (if (= (length isas) 1) '(for) ! '(for ifield operand insn)) (cons 'values isa-enums)) ) --- 501,507 ---- ; for it. (if (= (length isas) 1) '(for) ! '(for ifield operand insn hardware)) (cons 'values isa-enums)) )