www.digitalmars.com Home | Search | C & C++ | D | DMDScript | News Groups | index | prev | next
Archives

D Programming
D
D.gnu
digitalmars.D
digitalmars.D.bugs
digitalmars.D.dtl
digitalmars.D.dwt
digitalmars.D.announce
digitalmars.D.learn
digitalmars.D.debugger

C/C++ Programming
c++
c++.announce
c++.atl
c++.beta
c++.chat
c++.command-line
c++.dos
c++.dos.16-bits
c++.dos.32-bits
c++.idde
c++.mfc
c++.rtl
c++.stl
c++.stl.hp
c++.stl.port
c++.stl.sgi
c++.stlsoft
c++.windows
c++.windows.16-bits
c++.windows.32-bits
c++.wxwindows

digitalmars.empire
digitalmars.DMDScript

c++ - inline asm, fpu registers

↑ ↓ ← Mikael Klasson <Mikael_member pathlink.com> writes:
Ok, I'm out of ideas here.

fmul	st(0)
^
proth_sieve.cpp(407) : Warning 13: Illegal type/size of operands for the fmul
instruction

Why the warning? I haven't managed to assemble any fpu instruction that uses a
register explicitly.
The "warning" is a bit strange as well. If you look at the generated code, it
actually gets assembled to d8,08 == fmul   dword [eax]. That's quite wrong.

Regards,
Mikael
Apr 13 2003
↑ ↓ "Walter" <walter digitalmars.com> writes:
try:
    fmul    st, st(0)

"Mikael Klasson" <Mikael_member pathlink.com> wrote in message
news:b7cgn3$22uc$1 digitaldaemon.com...
 Ok, I'm out of ideas here.

 fmul st(0)
 ^
 proth_sieve.cpp(407) : Warning 13: Illegal type/size of operands for the

 instruction

 Why the warning? I haven't managed to assemble any fpu instruction that

 register explicitly.
 The "warning" is a bit strange as well. If you look at the generated code,

 actually gets assembled to d8,08 == fmul   dword [eax]. That's quite

 Regards,
 Mikael

Apr 13 2003
↑ ↓ Mikael Klasson <Mikael_member pathlink.com> writes:
try:
    fmul    st, st(0)

Oh, ok. Thanks for the quick reply! The support around here rocks. =) Don't you think that's a bit of an odd syntax, though?
Apr 13 2003
↑ ↓ → "Walter" <walter digitalmars.com> writes:
"Mikael Klasson" <Mikael_member pathlink.com> wrote in message
news:b7cko8$25a8$1 digitaldaemon.com...
try:
    fmul    st, st(0)

Oh, ok. Thanks for the quick reply! The support around here rocks. =) Don't you think that's a bit of an odd syntax, though?

Intel/Microsoft never quite made up their mind how it should look in the early days, and that confusion has carried forward. The inline assembler does just one of the many variants.
Apr 13 2003