This is the mail archive of the
cgen@sourceware.org
mailing list for the CGEN project.
[commit] allow enums as register numbers
- From: Doug Evans <dje at sebabeach dot org>
- To: cgen at sourceware dot org
- Date: Thu, 5 Nov 2009 09:00:39 -0800 (PST)
- Subject: [commit] allow enums as register numbers
Hi.
I checked in this patch.
enums weren't supported as indices to reg, etc. Blech.
Tested with gen-all and make check.
2009-11-05 Doug Evans <dje@sebabeach.org>
* utils.scm (reduce): Delete.
* rtl-traverse.scm (/rtx-canon-rtx-enum): Tweak local name.
* enum.scm (gen-enum-sym): Make consistent with gen-enum-decl
regarding PREFIX attribute handling.
* operand.scm (<hw-index>): Add enum to possible types, all uses
updated.
(hw-index-constant?, hw-index-constant-value): New functions.
(make-enum-hw-index, hw-index-enum-name, hw-index-enum-value,
hw-index-enum-obj): New functions.
(/operand-parse): Handle enum indices.
* intrinsics.scm (md-operand:fixed-register): Use hw-index-constant?,
hw-index-constant-value.
* rtl.scm (rtx-constant-value): Fix handling of enums.
* rtx-funcs.scm (enum): Ditto.
* sid.scm (<hardware-base> cxmake-get): Only ifield indices are
currently supported here.