This is the mail archive of the
cgen@sourceware.org
mailing list for the CGEN project.
bitset attribute handling reorg
- From: Doug Evans <dje at sebabeach dot org>
- To: cgen at sourceware dot org
- Date: Sun, 25 Oct 2009 18:00:50 -0700 (PDT)
- Subject: bitset attribute handling reorg
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 <dje@sebabeach.org>
Record bitset attributes internally as a list.
Record rtx attribute values internally as ((rtx-expr)).
* attr.scm (bitset-attr?): Delete, unused.
(<bitset-attribute> 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 (<hardware-base> '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.