Selaa lähdekoodia

* arm compiler compilation fixed

florian 21 vuotta sitten
vanhempi
commit
78aeec22ca

+ 7 - 4
compiler/arm/aasmcpu.pas

@@ -69,7 +69,7 @@ uses
          constructor op_sym_ofs_ref(op : tasmop;_op1 : tasmsymbol;_op1ofs:longint;const _op2 : treference);
 
          function is_nop: boolean; override;
-         function is_move:boolean; override;
+         function is_reg_move:boolean; override;
 
          { register spilling code }
          function spilling_decode_loadstore(op: tasmop; var counterpart: tasmop; var wasload: boolean): boolean;override;
@@ -286,11 +286,11 @@ implementation
     function taicpu.is_nop: boolean;
       begin
         { allow the register allocator to remove unnecessary moves }
-        result:=is_move and (oper[0]^.reg=oper[1]^.reg);
+        result:=is_reg_move and (oper[0]^.reg=oper[1]^.reg);
       end;
 
 
-    function taicpu.is_move:boolean;
+    function taicpu.is_reg_move:boolean;
       begin
         result:=(opcode=A_MOV) and
                 (condition=C_None) and
@@ -374,7 +374,10 @@ implementation
 end.
 {
   $Log$
-  Revision 1.17  2003-12-03 17:39:05  florian
+  Revision 1.18  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.17  2003/12/03 17:39:05  florian
     * fixed several arm calling conventions issues
     * fixed reference reading in the assembler reader
     * fixed a_loadaddr_ref_reg

+ 18 - 152
compiler/arm/cgcpu.pas

@@ -37,24 +37,9 @@ unit cgcpu;
 
     type
       tcgarm = class(tcg)
-        rgint,
-        rgmm,
-        rgfpu : trgcpu;
         procedure init_register_allocators;override;
         procedure done_register_allocators;override;
 
-        procedure ungetreference(list:Taasmoutput;const r:Treference);override;
-        function  getintregister(list:Taasmoutput;size:Tcgsize):Tregister;override;
-        function  getfpuregister(list:Taasmoutput;size:Tcgsize):Tregister;override;
-        function  getmmregister(list:Taasmoutput;size:Tcgsize):Tregister;override;
-        procedure getexplicitregister(list:Taasmoutput;r:Tregister);override;
-        procedure ungetregister(list:Taasmoutput;r:Tregister);override;
-        procedure add_move_instruction(instr:Taicpu);override;
-        procedure do_register_allocation(list:Taasmoutput;headertai:tai);override;
-        procedure allocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
-        procedure deallocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
-        function  uses_registers(rt:Tregistertype):boolean;override;
-
         procedure a_param_const(list : taasmoutput;size : tcgsize;a : aword;const locpara : tparalocation);override;
         procedure a_param_ref(list : taasmoutput;size : tcgsize;const r : treference;const locpara : tparalocation);override;
         procedure a_paramaddr_ref(list : taasmoutput;const r : treference;const locpara : tparalocation);override;
@@ -135,148 +120,26 @@ unit cgcpu;
        procinfo,cpupi;
 
 
-    procedure tcgarm.ungetreference(list:Taasmoutput;const r:Treference);
-      begin
-        if r.base<>NR_NO then
-          ungetregister(list,r.base);
-        if r.index<>NR_NO then
-          ungetregister(list,r.index);
-      end;
-
-
     procedure tcgarm.init_register_allocators;
       begin
-        rgint:=trgcpu.create(R_INTREGISTER,R_SUBWHOLE,
+        rg[R_INTREGISTER]:=trgcpu.create(R_INTREGISTER,R_SUBWHOLE,
             [RS_R0,RS_R1,RS_R2,RS_R3,RS_R4,RS_R5,RS_R6,RS_R7,RS_R8,
              RS_R9,RS_R10,RS_R12],first_int_imreg,[]);
-        rgfpu:=trgcpu.create(R_FPUREGISTER,R_SUBNONE,
+        rg[R_FPUREGISTER]:=trgcpu.create(R_FPUREGISTER,R_SUBNONE,
             [RS_F0,RS_F1,RS_F2,RS_F3,RS_F4,RS_F5,RS_F6,RS_F7],first_fpu_imreg,[]);
-        rgmm:=trgcpu.create(R_MMREGISTER,R_SUBNONE,
+        rg[R_MMREGISTER]:=trgcpu.create(R_MMREGISTER,R_SUBNONE,
             [RS_S0,RS_S1,RS_R2,RS_R3,RS_R4,RS_S31],first_mm_imreg,[]);
       end;
 
 
     procedure tcgarm.done_register_allocators;
       begin
-        rgint.free;
-        rgfpu.free;
-        rgmm.free;
-      end;
-
-
-    function tcgarm.getintregister(list:Taasmoutput;size:Tcgsize):Tregister;
-      begin
-        result:=rgint.getregister(list,cgsize2subreg(size));
-      end;
-
-
-    function tcgarm.getfpuregister(list:Taasmoutput;size:Tcgsize):Tregister;
-      begin
-        result:=rgfpu.getregister(list,R_SUBWHOLE);
-      end;
-
-
-    function tcgarm.getmmregister(list:Taasmoutput;size:Tcgsize):Tregister;
-      begin
-        result:=rgmm.getregister(list,R_SUBNONE);
-      end;
-
-
-    procedure tcgarm.getexplicitregister(list:Taasmoutput;r:Tregister);
-      begin
-        case getregtype(r) of
-          R_INTREGISTER :
-            rgint.getexplicitregister(list,r);
-          R_MMREGISTER :
-            rgmm.getexplicitregister(list,r);
-          R_FPUREGISTER :
-            rgfpu.getexplicitregister(list,r);
-          else
-            internalerror(200310091);
-        end;
-      end;
-
-
-    procedure tcgarm.ungetregister(list:Taasmoutput;r:Tregister);
-      begin
-        case getregtype(r) of
-          R_INTREGISTER :
-            rgint.ungetregister(list,r);
-          R_FPUREGISTER :
-            rgfpu.ungetregister(list,r);
-          R_MMREGISTER :
-            rgmm.ungetregister(list,r);
-          else
-            internalerror(200310091);
-        end;
-      end;
-
-
-    procedure tcgarm.allocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);
-      begin
-        case rt of
-          R_INTREGISTER :
-            rgint.allocexplicitregisters(list,r);
-          R_FPUREGISTER :
-            rgfpu.allocexplicitregisters(list,r);
-          R_MMREGISTER :
-            rgmm.allocexplicitregisters(list,r);
-          else
-            internalerror(200310092);
-        end;
-      end;
-
-
-    procedure tcgarm.deallocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);
-      begin
-        case rt of
-          R_INTREGISTER :
-            rgint.deallocexplicitregisters(list,r);
-          R_FPUREGISTER :
-            rgfpu.deallocexplicitregisters(list,r);
-          R_MMREGISTER :
-            rgmm.deallocexplicitregisters(list,r);
-          else
-            internalerror(200310093);
-        end;
-      end;
-
-
-    function  tcgarm.uses_registers(rt:Tregistertype):boolean;
-      begin
-        case rt of
-          R_INTREGISTER :
-            result:=rgint.uses_registers;
-          R_MMREGISTER :
-            result:=rgmm.uses_registers;
-          R_FPUREGISTER :
-            result:=rgfpu.uses_registers;
-          else
-            internalerror(200310094);
-        end;
-      end;
-
-
-    procedure tcgarm.add_move_instruction(instr:Taicpu);
-      begin
-        rgint.add_move_instruction(instr);
-      end;
-
-
-    procedure tcgarm.do_register_allocation(list:Taasmoutput;headertai:tai);
-      begin
-        { Int }
-        rgint.check_unreleasedregs;
-        rgint.do_register_allocation(list,headertai);
-        rgint.translate_registers(list);
-        { FPU }
-        rgfpu.check_unreleasedregs;
-        rgfpu.do_register_allocation(list,headertai);
-        rgfpu.translate_registers(list);
-        { MM }
-        rgmm.check_unreleasedregs;
-        rgmm.do_register_allocation(list,headertai);
-        rgmm.translate_registers(list);
+        rg[R_INTREGISTER].free;
+        rg[R_INTREGISTER]:=nil;
+        rg[R_FPUREGISTER].free;
+        rg[R_FPUREGISTER]:=nil;
+        rg[R_MMREGISTER].free;
+        rg[R_MMREGISTER]:=nil;
       end;
 
 
@@ -503,21 +366,21 @@ unit cgcpu;
                  begin
                    if dst<>src1 then
                      begin
-                       rgint.add_edge(getsupreg(dst),getsupreg(src1));
+                       rg[R_INTREGISTER].add_edge(getsupreg(dst),getsupreg(src1));
                        list.concat(taicpu.op_reg_reg_reg(A_MUL,dst,src1,src2));
                      end
                    else
                      begin
                        tmpreg:=getintregister(list,size);
                        a_load_reg_reg(list,size,size,src2,dst);
-                       rgint.add_edge(getsupreg(dst),getsupreg(tmpreg));
+                       rg[R_INTREGISTER].add_edge(getsupreg(dst),getsupreg(tmpreg));
                        ungetregister(list,tmpreg);
                        list.concat(taicpu.op_reg_reg_reg(A_MUL,dst,tmpreg,src1));
                      end;
                  end
                else
                  begin
-                   rgint.add_edge(getsupreg(dst),getsupreg(src2));
+                   rg[R_INTREGISTER].add_edge(getsupreg(dst),getsupreg(src2));
                    list.concat(taicpu.op_reg_reg_reg(A_MUL,dst,src2,src1));
                  end;
              end;
@@ -913,7 +776,7 @@ unit cgcpu;
         reference_reset(ref);
         ref.index:=NR_STACK_POINTER_REG;
         ref.addressmode:=AM_PREINDEXED;
-        list.concat(setoppostfix(taicpu.op_ref_regset(A_STM,ref,rgint.used_in_proc-[RS_R0..RS_R3]+[RS_R11,RS_R12,RS_R14,RS_R15]),PF_DB));
+        list.concat(setoppostfix(taicpu.op_ref_regset(A_STM,ref,rg[R_INTREGISTER].used_in_proc-[RS_R0..RS_R3]+[RS_R11,RS_R12,RS_R14,RS_R15]),PF_DB));
 
         list.concat(taicpu.op_reg_reg_const(A_SUB,NR_FRAME_POINTER_REG,NR_R12,4));
 
@@ -945,7 +808,7 @@ unit cgcpu;
             { restore int registers and return }
             reference_reset(ref);
             ref.index:=NR_FRAME_POINTER_REG;
-            list.concat(setoppostfix(taicpu.op_ref_regset(A_LDM,ref,rgint.used_in_proc-[RS_R0..RS_R3]+[RS_R11,RS_R13,RS_R15]),PF_DB));
+            list.concat(setoppostfix(taicpu.op_ref_regset(A_LDM,ref,rg[R_INTREGISTER].used_in_proc-[RS_R0..RS_R3]+[RS_R11,RS_R13,RS_R15]),PF_DB));
           end;
       end;
 
@@ -1336,7 +1199,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.27  2003-12-08 17:43:57  florian
+  Revision 1.28  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.27  2003/12/08 17:43:57  florian
     * fixed ldm/stm arm assembler reading
     * fixed a_load_reg_reg with OS_8 on ARM
     * non supported calling conventions cause only a warning now

+ 5 - 2
compiler/arm/cpubase.pas

@@ -117,7 +117,7 @@ unit cpubase;
         {$i rarmnum.inc}
       );
 
-      regstabs_table : array[tregisterindex] of tregister = (
+      regstabs_table : array[tregisterindex] of shortint = (
         {$i rarmsta.inc}
       );
 
@@ -569,7 +569,10 @@ unit cpubase;
 end.
 {
   $Log$
-  Revision 1.20  2003-11-29 17:36:56  peter
+  Revision 1.21  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.20  2003/11/29 17:36:56  peter
     * fixed is_move
 
   Revision 1.19  2003/11/21 16:29:26  florian

+ 7 - 4
compiler/arm/cpupara.pas

@@ -173,7 +173,7 @@ unit cpupara;
     function tarmparamanager.create_paraloc_info(p : tabstractprocdef; side: tcallercallee):longint;
 
       var
-         nextintreg,nextfloatreg,nextmmreg : tregister;
+         nextintreg,nextfloatreg,nextmmreg : tsuperregister;
          paradef : tdef;
          paraloc : tparalocation;
          stack_offset : aword;
@@ -184,10 +184,10 @@ unit cpupara;
       procedure assignintreg;
 
         begin
-           if nextintreg<=NR_R3 then
+           if nextintreg<=ord(NR_R3) then
              begin
                 paraloc.loc:=LOC_REGISTER;
-                paraloc.register:=newreg(R_INTREGISTER,nextintreg,R_SUBWHOLE);;
+                paraloc.register:=newreg(R_INTREGISTER,nextintreg,R_SUBWHOLE);
                 inc(nextintreg);
              end
            else
@@ -336,7 +336,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.10  2003-12-03 17:39:05  florian
+  Revision 1.11  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.10  2003/12/03 17:39:05  florian
     * fixed several arm calling conventions issues
     * fixed reference reading in the assembler reader
     * fixed a_loadaddr_ref_reg

+ 6 - 2
compiler/arm/raarmgas.pas

@@ -319,7 +319,8 @@ Unit raarmgas;
 
 
       var
-        tempreg,ireg : tregister;
+        tempreg : tregister;
+        ireg : tsuperregister;
         hl : tasmlabel;
         ofs : longint;
         registerset : tcpuregisterset;
@@ -741,7 +742,10 @@ initialization
 end.
 {
   $Log$
-  Revision 1.5  2003-12-08 17:43:57  florian
+  Revision 1.6  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.5  2003/12/08 17:43:57  florian
     * fixed ldm/stm arm assembler reading
     * fixed a_load_reg_reg with OS_8 on ARM
     * non supported calling conventions cause only a warning now

+ 73 - 73
compiler/arm/rarmcon.inc

@@ -1,74 +1,74 @@
 { don't edit, this file is generated from armreg.dat }
-NR_NO = $00000000;
-NR_R0 = $01000000;
-NR_R1 = $01000001;
-NR_R2 = $01000002;
-NR_R3 = $01000003;
-NR_R4 = $01000004;
-NR_R5 = $01000005;
-NR_R6 = $01000006;
-NR_R7 = $01000007;
-NR_R8 = $01000008;
-NR_R9 = $01000009;
-NR_R10 = $0100000a;
-NR_R11 = $0100000b;
-NR_R12 = $0100000c;
-NR_R13 = $0100000d;
-NR_R14 = $0100000e;
-NR_R15 = $0100000f;
-NR_F0 = $02000000;
-NR_F1 = $02000001;
-NR_F2 = $02000002;
-NR_F3 = $02000003;
-NR_F4 = $02000004;
-NR_F5 = $02000005;
-NR_F6 = $02000006;
-NR_F7 = $02000007;
-NR_S0 = $03000000;
-NR_S1 = $03000000;
-NR_D0 = $03000000;
-NR_S2 = $03000000;
-NR_S3 = $03000000;
-NR_D1 = $03000000;
-NR_S4 = $03000000;
-NR_S5 = $03000000;
-NR_D2 = $03000000;
-NR_S6 = $03000000;
-NR_S7 = $03000000;
-NR_D3 = $03000000;
-NR_S8 = $03000000;
-NR_S9 = $03000000;
-NR_D4 = $03000000;
-NR_S10 = $03000000;
-NR_S11 = $03000000;
-NR_D5 = $03000000;
-NR_S12 = $03000000;
-NR_S13 = $03000000;
-NR_D6 = $03000000;
-NR_S14 = $03000000;
-NR_S15 = $03000000;
-NR_D7 = $03000000;
-NR_S16 = $03000000;
-NR_S17 = $03000000;
-NR_D8 = $03000000;
-NR_S18 = $03000000;
-NR_S19 = $03000000;
-NR_D9 = $03000000;
-NR_S20 = $03000000;
-NR_S21 = $03000000;
-NR_D10 = $03000000;
-NR_S22 = $03000000;
-NR_S23 = $03000000;
-NR_D11 = $03000000;
-NR_S24 = $03000000;
-NR_S25 = $03000000;
-NR_D12 = $03000000;
-NR_S26 = $03000000;
-NR_S27 = $03000000;
-NR_D13 = $03000000;
-NR_S28 = $03000000;
-NR_S29 = $03000000;
-NR_D14 = $03000000;
-NR_S30 = $03000000;
-NR_S31 = $03000000;
-NR_D15 = $03000000;
+NR_NO = tregister($00000000);
+NR_R0 = tregister($01000000);
+NR_R1 = tregister($01000001);
+NR_R2 = tregister($01000002);
+NR_R3 = tregister($01000003);
+NR_R4 = tregister($01000004);
+NR_R5 = tregister($01000005);
+NR_R6 = tregister($01000006);
+NR_R7 = tregister($01000007);
+NR_R8 = tregister($01000008);
+NR_R9 = tregister($01000009);
+NR_R10 = tregister($0100000a);
+NR_R11 = tregister($0100000b);
+NR_R12 = tregister($0100000c);
+NR_R13 = tregister($0100000d);
+NR_R14 = tregister($0100000e);
+NR_R15 = tregister($0100000f);
+NR_F0 = tregister($02000000);
+NR_F1 = tregister($02000001);
+NR_F2 = tregister($02000002);
+NR_F3 = tregister($02000003);
+NR_F4 = tregister($02000004);
+NR_F5 = tregister($02000005);
+NR_F6 = tregister($02000006);
+NR_F7 = tregister($02000007);
+NR_S0 = tregister($03000000);
+NR_S1 = tregister($03000000);
+NR_D0 = tregister($03000000);
+NR_S2 = tregister($03000000);
+NR_S3 = tregister($03000000);
+NR_D1 = tregister($03000000);
+NR_S4 = tregister($03000000);
+NR_S5 = tregister($03000000);
+NR_D2 = tregister($03000000);
+NR_S6 = tregister($03000000);
+NR_S7 = tregister($03000000);
+NR_D3 = tregister($03000000);
+NR_S8 = tregister($03000000);
+NR_S9 = tregister($03000000);
+NR_D4 = tregister($03000000);
+NR_S10 = tregister($03000000);
+NR_S11 = tregister($03000000);
+NR_D5 = tregister($03000000);
+NR_S12 = tregister($03000000);
+NR_S13 = tregister($03000000);
+NR_D6 = tregister($03000000);
+NR_S14 = tregister($03000000);
+NR_S15 = tregister($03000000);
+NR_D7 = tregister($03000000);
+NR_S16 = tregister($03000000);
+NR_S17 = tregister($03000000);
+NR_D8 = tregister($03000000);
+NR_S18 = tregister($03000000);
+NR_S19 = tregister($03000000);
+NR_D9 = tregister($03000000);
+NR_S20 = tregister($03000000);
+NR_S21 = tregister($03000000);
+NR_D10 = tregister($03000000);
+NR_S22 = tregister($03000000);
+NR_S23 = tregister($03000000);
+NR_D11 = tregister($03000000);
+NR_S24 = tregister($03000000);
+NR_S25 = tregister($03000000);
+NR_D12 = tregister($03000000);
+NR_S26 = tregister($03000000);
+NR_S27 = tregister($03000000);
+NR_D13 = tregister($03000000);
+NR_S28 = tregister($03000000);
+NR_S29 = tregister($03000000);
+NR_D14 = tregister($03000000);
+NR_S30 = tregister($03000000);
+NR_S31 = tregister($03000000);
+NR_D15 = tregister($03000000);

+ 73 - 73
compiler/arm/rarmnum.inc

@@ -1,74 +1,74 @@
 { don't edit, this file is generated from armreg.dat }
-NR_NO,
-NR_R0,
-NR_R1,
-NR_R2,
-NR_R3,
-NR_R4,
-NR_R5,
-NR_R6,
-NR_R7,
-NR_R8,
-NR_R9,
-NR_R10,
-NR_R11,
-NR_R12,
-NR_R13,
-NR_R14,
-NR_R15,
-NR_F0,
-NR_F1,
-NR_F2,
-NR_F3,
-NR_F4,
-NR_F5,
-NR_F6,
-NR_F7,
-NR_S0,
-NR_S1,
-NR_D0,
-NR_S2,
-NR_S3,
-NR_D1,
-NR_S4,
-NR_S5,
-NR_D2,
-NR_S6,
-NR_S7,
-NR_D3,
-NR_S8,
-NR_S9,
-NR_D4,
-NR_S10,
-NR_S11,
-NR_D5,
-NR_S12,
-NR_S13,
-NR_D6,
-NR_S14,
-NR_S15,
-NR_D7,
-NR_S16,
-NR_S17,
-NR_D8,
-NR_S18,
-NR_S19,
-NR_D9,
-NR_S20,
-NR_S21,
-NR_D10,
-NR_S22,
-NR_S23,
-NR_D11,
-NR_S24,
-NR_S25,
-NR_D12,
-NR_S26,
-NR_S27,
-NR_D13,
-NR_S28,
-NR_S29,
-NR_D14,
-NR_S30,
-NR_S31,
-NR_D15
+tregister($00000000),
+tregister($01000000),
+tregister($01000001),
+tregister($01000002),
+tregister($01000003),
+tregister($01000004),
+tregister($01000005),
+tregister($01000006),
+tregister($01000007),
+tregister($01000008),
+tregister($01000009),
+tregister($0100000a),
+tregister($0100000b),
+tregister($0100000c),
+tregister($0100000d),
+tregister($0100000e),
+tregister($0100000f),
+tregister($02000000),
+tregister($02000001),
+tregister($02000002),
+tregister($02000003),
+tregister($02000004),
+tregister($02000005),
+tregister($02000006),
+tregister($02000007),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000),
+tregister($03000000)

+ 7 - 3
compiler/rgobj.pas

@@ -198,12 +198,13 @@ unit rgobj;
         procedure add_move_instruction(instr:Taicpu);
         {# Do the register allocation.}
         procedure do_register_allocation(list:Taasmoutput;headertai:tai);virtual;
+        { Adds an interference edge.
+          don't move this to the protected section, the arm cg requires to access this (FK) }
+        procedure add_edge(u,v:Tsuperregister);
       protected
         regtype           : Tregistertype;
         { default subregister used }
         defaultsub        : tsubregister;
-        {# Adds an interference edge.}
-        procedure add_edge(u,v:Tsuperregister);
         procedure add_constraints(reg:Tregister);virtual;
       private
         {# First imaginary register.}
@@ -1673,7 +1674,10 @@ implementation
 end.
 {
   $Log$
-  Revision 1.105  2003-12-17 21:59:05  peter
+  Revision 1.106  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.105  2003/12/17 21:59:05  peter
     * don't insert dealloc before alloc of the same register
 
   Revision 1.104  2003/12/16 09:41:44  daniel

+ 6 - 3
compiler/utils/mkarmreg.pp

@@ -257,9 +257,9 @@ begin
         end
       else
         first:=false;
-      writeln(confile,'NR_',names[i],' = ',numbers[i],';');
       writeln(supfile,'RS_',names[i],' = ',supregs[i],';');
-      write(numfile,'NR_',names[i]);
+      writeln(confile,'NR_'+names[i],' = ','tregister(',numbers[i],')',';');
+      write(numfile,'tregister(',numbers[i],')');
       write(stdfile,'''',stdnames[i],'''');
       write(stabfile,stabs[i]);
       write(rnifile,regnumber_index[i]);
@@ -293,7 +293,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.2  2003-09-03 20:35:06  peter
+  Revision 1.3  2003-12-18 17:06:21  florian
+    * arm compiler compilation fixed
+
+  Revision 1.2  2003/09/03 20:35:06  peter
     * fixed number sorting
 
   Revision 1.1  2003/09/03 19:09:35  florian