From: jbs30000 AT aol DOT com (Joel) Newsgroups: comp.os.msdos.djgpp Subject: Re: Quick and Easy DJGPP extended inline assembly question. Date: 22 Jul 2003 22:51:20 -0700 Organization: http://groups.google.com/ Lines: 26 Message-ID: <84e4e2a9.0307222057.2b678b5d@posting.google.com> References: <84e4e2a9 DOT 0307211839 DOT 3b86f7d0 AT posting DOT google DOT com> <200307221324 DOT h6MDOhLl019991 AT envy DOT delorie DOT com> NNTP-Posting-Host: 205.188.208.170 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: posting.google.com 1058939480 16851 127.0.0.1 (23 Jul 2003 05:51:20 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: 23 Jul 2003 05:51:20 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com DJ Delorie wrote in message news:<200307221324 DOT h6MDOhLl019991 AT envy DOT delorie DOT com>... > > But I'm wondering if there's more, for example, are there any for the > > segment registers? Thank you. > > GCC doesn't generally care about segment registers, so it doesn't have > constraints for them. The rest of the constraints are documented in > the gcc internals doc (gccint.info) under "machine descriptions" -> > "operand constraints" > > http://www.delorie.com/gnu/docs/gcc/gccint_76.html One more quick question. Looking at the source for _farpokeb extern __inline__ void _farpokeb(unsigned short selector, unsigned long offset, unsigned char value) { __asm__ __volatile__( "movw %w0, %%fs\n" ".byte 0x64 \n" "movb %b1, (%k2)" : : "rm" (selector), "qi" (value), "r" (offset)); } Looking at the "rm" (selector) and "movw %w0, %%fs" parts, I assume that this allows selector to be placed directly into the fs register, right? Also, "qi" (value) moves value directly into al? Thanks.