changeset 226:4145266ff4bd trunk

[svn r242] fixed (I think) arg_pointer inline asm args
author lindquist
date Sat, 07 Jun 2008 19:04:26 +0200
parents 74701ba40398
children 3092a38dddab
files gen/asmstmt.cpp
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/gen/asmstmt.cpp	Fri Jun 06 22:30:31 2008 +0200
+++ b/gen/asmstmt.cpp	Sat Jun 07 19:04:26 2008 +0200
@@ -296,12 +296,14 @@
 	case Arg_Pointer:
 // FIXME
 std::cout << "asm fixme Arg_Pointer" << std::endl;
-        if (arg->expr->op == TOKvar)
+        arg_val = arg->expr->toElem(irs);
+        arg_val = new DVarValue(arg_val->getType()->pointerTo(), arg_val->getRVal(), true);
+        /*if (arg->expr->op == TOKvar)
         arg_val = arg->expr->toElem(irs);
         else if (arg->expr->op == TOKdsymbol)
         arg_val = arg->expr->toElem(irs);
         else
-        assert(0);
+        assert(0);*/
 
 	    cns = p_cns;
 	    break;