| delorie.com/archives/browse.cgi | search |
| Newsgroups: | comp.os.msdos.djgpp |
| From: | gaminer AT undergrad DOT math DOT uwaterloo DOT ca (Gabo) |
| Subject: | Help: extended inline asm |
| Sender: | news AT undergrad DOT math DOT uwaterloo DOT ca (news spool owner) |
| Message-ID: | <E5r97M.G98@undergrad.math.uwaterloo.ca> |
| Date: | Mon, 17 Feb 1997 16:16:34 GMT |
| Nntp-Posting-Host: | lagrange.uwaterloo.ca |
| Organization: | University of Waterloo |
| Lines: | 38 |
| To: | djgpp AT delorie DOT com |
| DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Why doesn't this work?
asm
(
"shlw %cl,%eax"
/* Output */
: "=a" (*((word *)processPtr->osp - 1))
/* Input */
: "a" (*((word *)processPtr->osp - 1)),
"c" (*((byte *)processPtr->osp))
/* Clobbers */
: "%eax"
);
It complains about:
virtual.cpp:944: invalid `asm': operand number missing after %-letter
virtual.cpp:944: invalid `asm': operand number missing after %-letter
When I change the output line to:
: "=a" (tempWord)
it works fine.
Any suggestions appreciated.
Peace
--
===[ Gabo / [ABC] : gaminer AT undergrad DOT math DOT uwaterloo DOT ca ]===================
Latest ABC Shogi: http://www.undergrad.math.uwaterloo.ca/~gaminer/shogi.html
"What Greenpeace spends in a year General Motors spends in four hours" -Moby
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |