Browse Source

* fixed avr multiplication after r36344

git-svn-id: trunk@36369 -
nickysn 8 years ago
parent
commit
5138d4e067
1 changed files with 1 additions and 6 deletions
  1. 1 6
      compiler/avr/cgcpu.pas

+ 1 - 6
compiler/avr/cgcpu.pas

@@ -497,7 +497,7 @@ unit cgcpu;
          tmpreg: tregister;
          tmpreg: tregister;
          i : integer;
          i : integer;
          instr : taicpu;
          instr : taicpu;
-         paraloc1,paraloc2,paraloc3 : TCGPara;
+         paraloc1,paraloc2 : TCGPara;
          l1,l2 : tasmlabel;
          l1,l2 : tasmlabel;
          pd : tprocdef;
          pd : tprocdef;
 
 
@@ -636,14 +636,10 @@ unit cgcpu;
                           pd:=search_system_proc('fpc_mul_integer');
                           pd:=search_system_proc('fpc_mul_integer');
                        paraloc1.init;
                        paraloc1.init;
                        paraloc2.init;
                        paraloc2.init;
-                       paraloc3.init;
                        paramanager.getintparaloc(list,pd,1,paraloc1);
                        paramanager.getintparaloc(list,pd,1,paraloc1);
                        paramanager.getintparaloc(list,pd,2,paraloc2);
                        paramanager.getintparaloc(list,pd,2,paraloc2);
-                       paramanager.getintparaloc(list,pd,3,paraloc3);
-                       a_load_const_cgpara(list,OS_8,0,paraloc3);
                        a_load_reg_cgpara(list,OS_16,src,paraloc2);
                        a_load_reg_cgpara(list,OS_16,src,paraloc2);
                        a_load_reg_cgpara(list,OS_16,dst,paraloc1);
                        a_load_reg_cgpara(list,OS_16,dst,paraloc1);
-                       paramanager.freecgpara(list,paraloc3);
                        paramanager.freecgpara(list,paraloc2);
                        paramanager.freecgpara(list,paraloc2);
                        paramanager.freecgpara(list,paraloc1);
                        paramanager.freecgpara(list,paraloc1);
                        alloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
                        alloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
@@ -658,7 +654,6 @@ unit cgcpu;
                        cg.a_reg_dealloc(list,NR_R24);
                        cg.a_reg_dealloc(list,NR_R24);
                        cg.a_load_reg_reg(list,OS_8,OS_8,NR_R25,GetNextReg(dst));
                        cg.a_load_reg_reg(list,OS_8,OS_8,NR_R25,GetNextReg(dst));
                        cg.a_reg_dealloc(list,NR_R25);
                        cg.a_reg_dealloc(list,NR_R25);
-                       paraloc3.done;
                        paraloc2.done;
                        paraloc2.done;
                        paraloc1.done;
                        paraloc1.done;
                      end;
                      end;