www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/02/17/16:13:42

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

- Raw text -


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