Browse Source

* copy unique return value to address register on m68k

git-svn-id: trunk@5554 -
florian 18 years ago
parent
commit
84726ed76c
1 changed files with 8 additions and 1 deletions
  1. 8 1
      compiler/ncgmem.pas

+ 8 - 1
compiler/ncgmem.pas

@@ -637,7 +637,14 @@ implementation
               case left.location.loc of
               case left.location.loc of
                 LOC_REGISTER,
                 LOC_REGISTER,
                 LOC_CREGISTER :
                 LOC_CREGISTER :
-                  location.reference.base:=left.location.register;
+                  begin
+{$ifdef m68k}
+                    location.reference.base:=cg.getaddressregister(current_asmdata.CurrAsmList);
+                    cg.a_load_reg_reg(current_asmdata.CurrAsmList,OS_ADDR,OS_ADDR,left.location.register,location.reference.base);
+{$else m68k}
+                    location.reference.base:=left.location.register;
+{$endif m68k}
+                  end;
                 LOC_CREFERENCE,
                 LOC_CREFERENCE,
                 LOC_REFERENCE :
                 LOC_REFERENCE :
                   begin
                   begin