From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8456 invoked by alias); 22 Jun 2009 16:19:21 -0000 Received: (qmail 8448 invoked by uid 22791); 22 Jun 2009 16:19:21 -0000 X-SWARE-Spam-Status: No, hits=-0.1 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, 22 Jun 2009 16:19:14 +0000 Received: from sspiff.sspiff.org (seba.sebabeach.org [10.8.159.10]) by sebabeach.org (Postfix) with ESMTP id C59416E3C4; Mon, 22 Jun 2009 09:19:12 -0700 (PDT) Message-ID: <4A3FAF00.7040701@sebabeach.org> Date: Mon, 22 Jun 2009 16:19:00 -0000 From: Doug Evans User-Agent: Thunderbird 2.0.0.21 (X11/20090320) MIME-Version: 1.0 To: Dave Brolley CC: cgen@sourceware.org Subject: Re: CGEN_BITSET References: <4A3D6504.5010203@sebabeach.org> <4A3FAA79.3050203@redhat.com> In-Reply-To: <4A3FAA79.3050203@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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-q2/txt/msg00060.txt.bz2 Hi. Thanks. More than 32 ISAs? Yikes! Going forward, we could add a vbitset attribute kind (or some such), or we could convert all bitsets to use CGEN_BITSET. I guess I'm leaning toward the latter, but I can imagine situations where one would rather just have an unsigned int. Dave Brolley wrote: > Hi Doug, > > The mep port required an inderminate and configurable number of ISA's > to be possible, so we needed something that could represent an > unspecified number of bits (more then 32 or 64 possibly) in a mask. > The intent was not to treat isa specially. It just turned out to be > the first bit mask to require this treatment. > > CGEN_BITSET is simply a bit mask represented by character strings as > opposed to integers. > > Dave > > Doug Evans wrote: >> Treating "isa" specially is a bit of a hack. What's the story behind >> CGEN_BITSET? >> >> (define (gen-attr-type attr) >> (if (string=? (string-downcase (gen-sym attr)) "isa") >> "CGEN_BITSET" >> (case (attr-kind attr) >> ((boolean) "int") >> ((bitset) "unsigned int") >> ((integer) "int") >> ((enum) (string-append "enum " (string-downcase (gen-sym >> attr)) "_attr")) >> )) >> ) >>