cvs commit: src/sys/i386/include atomic.h
David Rhodus
drhodus at machdep.com
Fri Feb 13 11:34:28 PST 2004
Doesn't work too well.
cc -c -O -pipe -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-qual -ansi -g -nostdinc -I. -I../.. -I/usr/include
-I../../contrib/dev/acpica -I../../contrib/ipfilter -D_KERNEL -include
opt_global.h -mpreferred-stack-boundary=2 -ffreestanding
. ./../bus/firewire/fwohci.c
{standard input}: Assembler messages:
{standard input}:12934: Error: too many memory references for `or'
{standard input}:13030: Error: too many memory references for `or'
*** Error code 1
Matthew Dillon wrote:
dillon 2004/02/13 10:44:43 PST
DragonFly src repository
Modified files:
sys/i386/include atomic.h
Log:
Use "iq" instead of "ir" for the register constraint. "iq" means 'an
integer constant or one of %ax,%bx,%cx, or %dx. The prior use of "ir"
could cause GCC to attempt to use a 'low byte' accessor on a register
that cannot be accessed that way, such as '%si' (e.g. %sil). I see no
need to get fancy so I am just applying %iq to all the atomic instructions.
It's good enough.
Reported-by: YONETANI Tomokazu <qhwt+dragonfly-bugs at xxxxxxxxxx>
Revision Changes Path
1.5 +9 -51 src/sys/i386/include/atomic.h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/include/atomic.h.diff?r1=1.4&r2=1.5&f=h
More information about the Commits
mailing list