[svn r238] use *m for memory input constraints and pass in their address

This commit is contained in:
Christian Kamm
2008-06-06 21:44:17 +02:00
parent b917fe2f00
commit 5ee938ab0a
2 changed files with 5 additions and 7 deletions

View File

@@ -256,7 +256,7 @@ AsmStatement::toIR(IRState * irs)
static std::string i_cns = "i";
static std::string p_cns = "p";
static std::string m_cns = "m";
static std::string m_cns = "*m";
static std::string mw_cns = "=*m";
static std::string mrw_cns = "+m";
static std::string memory_name = "memory";

View File

@@ -1913,12 +1913,10 @@ struct AsmProcessor
insnTemplate->writebyte('*');
use_star = false;
}
if (mode == Mode_Output)
{
e = new AddrExp(0, e);
assert(decl);
e->type = decl->type->pointerTo();
}
e = new AddrExp(0, e);
assert(decl);
e->type = decl->type->pointerTo();
addOperand(fmt, Arg_Memory, e, asmcode, mode);
}
}