Message-ID: <38DC1398.E1B15F0B@ou.edu> From: David Cleaver X-Mailer: Mozilla 4.7 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: I'm Back... References: <38DBF7AF DOT A0786922 AT ou DOT edu> <38DC04C8 DOT 72C075C6 AT bigfoot DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 67 Date: Fri, 24 Mar 2000 19:17:12 -0600 NNTP-Posting-Host: 129.15.140.115 X-Complaints-To: usenet AT ou DOT edu X-Trace: news.ou.edu 953946948 129.15.140.115 (Fri, 24 Mar 2000 19:15:48 CST) NNTP-Posting-Date: Fri, 24 Mar 2000 19:15:48 CST Organization: The University of Oklahoma To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Richard Dawe wrote: > > Hello. > > David Cleaver wrote: > > Ok, I'm now having compiling problems due to the fact that I've updated > > to the new gcc 2.95.2. I know its probably not new to most of you here > > but I just upgraded a day or two ago. > > > > Ok, my problem is that I'm compiling source code that isn't mine and > > that apparently has a ton of 'asm' in it. So, of course, I'm getting > > the error: > > > > farptrx.h:13: Invalid 'asm' statement: > > farptrx.h:13: fixed or forbidden register 2 (cx) was spilled for class > > CREG. > > It might help if you say what you are trying to compile. Posting a portion > of the affected header file would be a start. > > If you're trying to compile libsocket (which has a header file called > farptrx.h), then there is a patch for 0.7.4 beta 3 here: > > http://www.phekda.freeserve.co.uk/richdawe/lsck/lsck_dl.htm > > HTH, bye, > > -- > Richard Dawe > richdawe AT bigfoot DOT com ICQ 47595498 http://www.bigfoot.com/~richdawe/ OK, I'm trying to compile the latest d1x source release. It's a game that has been compiling just fine until the new rule about 'asm' in gcc 2.95.2. I don't think they will mind me posting a small portion of the code, so here's the part that the compiler can't get past right now: extern __inline__ void _farpokex (unsigned short selector, unsigned long offset, void *x, int len) { __asm__ __volatile__ ("pushl %%es\n" "movw %w0, %%es\n" "rep\n" "movsb\n" "popl %%es" : : "rm" (selector), "S" (x), "D" (offset), "c" (len) : "%ecx", "%edi", "%esi"); } Does this make any sense to you (anyone)? I don't really know any assembly so I don't know what's wrong or what would possibly need to be changed. I hope this helps a little bit more. Just to let you know, line number 13 (the compiler error) is the line that goes: : "rm" (selector),... If thats still not enough info (I'm notorious for this) plz let me know what else you might need. Just keep in mind that this isn't my code. If anyone can think of a way to fix this please let me know the method that you use to fix it so that I can try to fix all the rest of the 'asm' problems in the code. Thanks again for your time and your input. -David C.