Bug 171 – 'wrong number of operands' for invlpg inline asm instruction

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
x86
OS
Windows
Creation time
2006-05-31T17:03:00Z
Last change time
2015-06-09T05:15:09Z
Keywords
rejects-valid
Assigned to
braddr
Creator
fvbommel

Comments

Comment #0 by fvbommel — 2006-05-31T17:03:42Z
I thought the inline assembler syntax was the same for GDC and DMD? For this file: private void invalidatePage(void* p) { asm { mov EAX, [p]; invlpg [EAX]; // line 6 } } GDC gives the following error: test.d:6: wrong number of operands I use GDC 0.18 (the binary for MinGW GCC 3.4.2 from http://gdcwin.sourceforge.net/) This error does not occur when using DMD 0.157 (tried because it's the base for this GDC version) or 0.159 (the latest). The command line was gdc -c test.d -o test.o -I ..\d\gdc\include\d\3.4.2
Comment #1 by dvdfrdmn — 2006-06-03T14:19:30Z
Fixed in SF subversion. The implementation of the assembler in GDC and DMD is different, but the syntax should be the same.
Comment #2 by thomas-dloop — 2006-12-30T20:09:37Z