delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2003/03/04/09:46:43

From: Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: What does this error message mean?
Date: 4 Mar 2003 14:30:30 GMT
Organization: Aachen University of Technology (RWTH)
Lines: 18
Message-ID: <b42da6$51k$1@nets3.rz.RWTH-Aachen.DE>
References: <17548N740 AT web2news DOT com>
NNTP-Posting-Host: acp3bf.physik.rwth-aachen.de
X-Trace: nets3.rz.RWTH-Aachen.DE 1046788230 5172 137.226.32.75 (4 Mar 2003 14:30:30 GMT)
X-Complaints-To: abuse AT rwth-aachen DOT de
NNTP-Posting-Date: 4 Mar 2003 14:30:30 GMT
Originator: broeker@
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Joel_S <jbs30000 DOT news DOT invalid AT web2news DOT net> wrote:
> I solved my earlier SVGA problem that I had, but now I have a new one. 
> I get this error message:
> Error: can't find a register in class `DREG' while reloading `asm'

This means your inline assembly code is buggy.  Looking at it, my
first suspect is having %edx in the clobber list, but also "d" in the
inputs.  This can't work.  Same for "b" vs. %ebx, I guess.  Anyway, if
you're going to mark practically everything as clobbered anyway,
there's not much point using extended assembly syntax.  A simpler

	asm volatile ("movx %edi, _bank_number\n\
	     call *_pm_bank_switcher");

(syntax unchecked) would work just as well.
-- 
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019