Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!vrdxhq!bms-at!stuart From: stuart@bms-at.UUCP (Stuart D. Gathman) Newsgroups: comp.lang.c Subject: Re: bit-field pointers / arrays Message-ID: <325@bms-at.UUCP> Date: Tue, 23-Dec-86 21:05:01 EST Article-I.D.: bms-at.325 Posted: Tue Dec 23 21:05:01 1986 Date-Received: Wed, 24-Dec-86 00:20:36 EST References: <2937@bu-cs.BU.EDU> <321@bms-at.UUCP> <1170@ucbcad.BERKELEY.EDU> Organization: Business Management Systems, Inc., Fairfax, VA Lines: 28 Summary: and the carry flag too In article <1170@ucbcad.BERKELEY.EDU>, faustus@ucbcad.BERKELEY.EDU (Wayne A. Christopher) writes: > In article <321@bms-at.UUCP>, stuart@bms-at.UUCP (Stuart D. Gathman) writes: > > Unfortunately, a set of macros cannot use hardware bit-field > > instructions. > Yes they can: you can always write asm("..."). But then the code is no longer portable, unless the macros were defined as part of the standard library a la longjmp(). I have no objection to this, but I can't get started on such a package because none of the 'C' compilers we have used have an 'asm()' directive! This includes SCO & IBM XENIX Motorola 6350, 8000, 6600, 2000 (using 68010 & 68020) Not only that, but I am not sure that such a package would be any easier to develop or maintain than adding it to the compiler. BTW, I noticed that 'compress' has asm directives for the VAX. BTW, another hardware feature that I miss in 'C' is the "carry flag". In this case, however, the things that it is good for (like multiprecision arithmetic) are quite naturally defined as functions written in assembler. There have been some cases however . . . -- Stuart D. Gathman <..!seismo!dgis!bms-at!stuart>