From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16120 invoked by alias); 26 Oct 2009 01:00:56 -0000 Received: (qmail 15916 invoked by uid 22791); 26 Oct 2009 01:00:55 -0000 X-SWARE-Spam-Status: No, hits=-0.4 required=5.0 tests=AWL,BAYES_00,DNS_FROM_RFC_BOGUSMX X-Spam-Check-By: sourceware.org Received: from sebabeach.org (HELO sebabeach.org) (64.165.110.50) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 26 Oct 2009 01:00:52 +0000 Received: by sebabeach.org (Postfix, from userid 500) id 9B0226E3D5; Sun, 25 Oct 2009 18:00:50 -0700 (PDT) From: Doug Evans To: cgen@sourceware.org Subject: bitset attribute handling reorg Message-Id: <20091026010050.9B0226E3D5@sebabeach.org> Date: Mon, 26 Oct 2009 01:00:00 -0000 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: 2009-q4/txt/msg00022.txt.bz2 Hi. I changed how the bitset attribute is represented. Internally it's no longer "a,b,c" and is instead (a b c). Externally one can still use "a,b,c" in description files but the preferred way is now (a b c). a,b,c (i.e. a symbol, no quotes) is still supported but it is deprecated, a,b,c is not a valid R6RS symbol. Tested by regenerating the world, no changes. [world: opcodes, sim, sid, intrinsics, docs] 2009-10-25 Doug Evans Record bitset attributes internally as a list. Record rtx attribute values internally as ((rtx-expr)). * attr.scm (bitset-attr?): Delete, unused. ( parse-value): Rewrite. (/attr-parse): Rewrite bitset default value processing. (/attr-read): Pick out values of scalar attributes to distinguish them from bitset values which are a list. Fix spelling errors for processing of default values. Handle string attributes. (bitset-attr->list): Delete, all callers updated. (/bitset-attr->charmask): Renamed from bitset-attr->charmask. All callers updated. (atlist-source-form): Rewrite. * hardware.scm ( 'get-isas): Update recognition of all isas. (hardware-builtin!): Update spec of ISA attribute, (ISA foo,bar) -> (ISA foo bar). * intrinsics.scm (target:belongs-to-group?): Update, bitset attribute values are now lists. * mach.scm (def-isa-attr!): Update, bitset attribute values, including the default, are now lists. (all-isas-attr-value): Result is now a list. * doc/rtl.texi: Clean up pass over attribute docs. Change internal representation of rtx attribute values. * attr.scm (/attr-val-is-rtx?): New function. (attr-value): Call it. (atlist-attr-value-no-default, attr-lookup-default): Ditto. (/attr-parse): Use /attr-val-is-rtx? to detect rtx values. Disallow rtx values for bitset attributes. (/attr-read): Record rtx in default value as ((rtx-expr)). (/attr-eval): Update.